Bài tập  /  Bài đang cần trả lời

Giải bài có thưởng!

Cho ba số nguyên dương ( a ), ( b ), ( c ). Nhiệm vụ của bạn là đếm số lượng chữ số khác nhau trong ba số ( a ), ( b ), ( c ) đã cho (em sai chỗ nào vậy chỉ với ạ, em cảm ơn nhiều)

Cho ba số nguyên dương ( a ), ( b ), ( c ). Nhiệm vụ của bạn là đếm số lượng chữ số khác nhau trong ba số ( a ), ( b ), ( c ) đã cho (em sai chỗ nào vậy chỉ với ạ, em cảm ơn nhiều)
0 Xem trả lời
Hỏi chi tiết
67
Tham khảo câu trả lời từ Trợ lý ảo Lazi
Dựa trên đoạn mã và lỗi bạn nhận được, có vài điều cần cải thiện trong mã của bạn:

1. **Lỗi về `map`**: Dòng `a, b, = map(int, input().split())` không có đủ giá trị để gán cho cả `a` và `b`. Bạn cần nhập đúng số lượng giá trị theo yêu cầu. Chẳng hạn, nếu muốn nhập ba số, nên viết:

```python
a, b, c = map(int, input().split())
```

2. **Thêm chữ số vào danh sách**: Trong vòng lặp `for`, bạn cần phải xử lý các chữ số một cách chính xác. Bạn phải chuyển đổi số thành chuỗi để dễ dàng lặp qua từng chữ số:

```python
for i in str(a) + str(b) + str(c):
if i not in A:
A.append(i)
```

3. **Kết quả**: Cuối cùng, bạn nên sử dụng `len(A)` để đếm số lượng chữ số khác nhau.

Dưới đây là một phiên bản hoàn chỉnh của mã:

```python
a, b, c = map(int, input().split())
A = []

for i in str(a) + str(b) + str(c):
if i not in A:
A.append(i)

print(len(A))
```

### Cách hoạt động của mã:
- Nhập ba số nguyên dương.
- Tạo danh sách `A` để lưu trữ các chữ số khác nhau.
- Kết hợp các số thành một chuỗi và lặp qua từng ký tự.
- Kiểm tra xem ký tự đó có trong danh sách `A` không; nếu chưa, thì thêm vào.
- Cuối cùng, in ra số lượng chữ số khác nhau.

Thử chạy mã này để xem liệu nó có hoạt động như mong muốn không!

Bạn hỏi - Lazi trả lời

Bạn muốn biết điều gì?

GỬI CÂU HỎI
Học tập không giới hạn cùng học sinh cả nước và AI, sôi động, tích cực, trải nghiệm

Hôm nay bạn thế nào? Hãy nhấp vào một lựa chọn, nếu may mắn bạn sẽ được tặng 50.000 xu từ Lazi

Vui Buồn Bình thường
×
Trợ lý ảo Trợ lý ảo
×
Đấu trường tri thức | Lazi Quiz Challenge +500k
Gửi câu hỏi
×