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

M và N là 2 số nguyên dương nhập từ bàn phím. Hãy đưa ra số lượng các số bằng N trong khoảng từ 1 đến N

M và N là 2 số nguyên dương nhập từ bàn phím. Hãy đưa ra số lượng các số bằng N trong khoảng từ 1->N
a) viết thuật toán
b) viết chương trình và chạy chương trình
​c) thông báo các lỗi và cách sửa
1 trả lời
Hỏi chi tiết
133
Tham khảo câu trả lời từ Trợ lý ảo Lazi
a) Thuật toán:
1. Nhập vào 2 số nguyên dương M và N từ bàn phím.
2. Khởi tạo biến count = 0.
3. Duyệt từ i = 1 đến N:
- Nếu i chia hết cho M thì tăng count lên 1.
4. In ra số lượng các số chia hết cho M trong khoảng từ 1 đến N.

b) Chương trình Python:
```python
M = int(input("Nhập số nguyên dương M: "))
N = int(input("Nhập số nguyên dương N: "))

count = 0
for i in range(1, N+1):
if i % M == 0:
count += 1

print("Số lượng các số chia hết cho", M, "trong khoảng từ 1 đến", N, "là:", count)
```

c) Các lỗi và cách sửa:
- Lỗi 1: Người dùng nhập vào số âm.
- Sửa: Thêm điều kiện kiểm tra số nhập vào phải là số nguyên dương.
- Lỗi 2: Người dùng nhập vào số thực.
- Sửa: Thay đổi hàm input thành int(input()) để chuyển đổi dữ liệu nhập vào thành số nguyên.
2
0
manh
02/03 08:33:22
+5đ tặng

Thuật toán:

  1. Nhập vào hai số nguyên dương M và N từ bàn phím.
  2. Kiểm tra xem M có nhỏ hơn hoặc bằng N không. Nếu không, thông báo lỗi và kết thúc.
  3. Sử dụng vòng lặp từ 1 đến N để kiểm tra từng số.
  4. Tăng biến đếm lên 1 mỗi khi gặp một số bằng N.
  5. In ra số lượng các số bằng N trong khoảng từ 1 đến N.

b) Chương trình:
def count_numbers(M, N):
    if M > N:
        print("Lỗi: M phải nhỏ hơn hoặc bằng N.")
        return
    
    count = 0
    for i in range(1, N+1):
        if i == M:
            count += 1
    
    print(f"Số lượng các số bằng {M} trong khoảng từ 1 đến {N} là: {count}")

def main():
    M = int(input("Nhập số nguyên dương M: "))
    N = int(input("Nhập số nguyên dương N: "))
    count_numbers(M, N)

if __name__ == "__main__":
    main()

 

c) Thông báo lỗi và cách sửa:

  • Lỗi: Nếu người dùng nhập M lớn hơn N.
    • Sửa: Thông báo lỗi và yêu cầu người dùng nhập lại giá trị cho M nhỏ hơn hoặc bằng N.
  • Lỗi: Người dùng nhập vào giá trị không phải số nguyên dương.
    • Sửa: Kiểm tra giá trị nhập vào có phải là số nguyên dương hay không, nếu không, yêu cầu người dùng nhập lại.
  • Lỗi: Người dùng không nhập gì và nhấn enter.
    • Sửa: Thông báo lỗi và yêu cầu nhập lại giá trị.

Mở khóa để xem toàn bộ nội dung trả lời

(?)
Bạn đã đạt đến giới hạn của mình. Bằng cách Đăng ký tài khoản, bạn có thể xem toàn bộ nội dung trả lời
Cải thiện điểm số của bạn bằng cách đăng ký tài khoản Lazi.
Xem toàn bộ các câu trả lời, chat trực tiếp 1:1 với đội ngũ Gia sư Lazi bằng cách Đăng nhập tài khoản ngay bây giờ
Tôi đã có tài khoản? Đăng nhập

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
Bài tập liên quan
Bài tập Tin học Lớp 11 mới nhất

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

Học ngoại ngữ với Flashcard

×
Gia sư Lazi Gia sư
×
Trợ lý ảo Trợ lý ảo