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

Tìm cặp số thân thiết: Hai số tự nhiên (M;N) được gọi là cặp số thân thiết nếu số này bằng tổng các ước số của số kia (kể cả 1 nhưng không kể số đó). Ví dụ (220;284) là cặp số thân thiết. Hãy dùng phần mềm Scratch để tạo chương trình tìm ra tất cả các cặp số thân thiết trong phạm vi 1.000 (tức là M và N đều nhỏ hơn 1.000).

Tìm cặp số thân thiết:

Hai số tự nhiên (M;N) được gọi là cặp số thân thiết nếu số này bằng tổng các ước số của số kia (kể cả 1 nhưng không kể số đó). Ví dụ (220;284) là cặp số thân thiết. Hãy dùng phần mềm Scratch để tạo chương trình tìm ra tất cả các cặp số thân thiết trong phạm vi 1.000 (tức là M và N đều nhỏ hơn 1.000).

1 Xem trả lời
Hỏi chi tiết
10
0
0
Phạm Văn Bắc
12/09 11:08:02

Xác định bài toán:

Input:(Không cần dữ liệu nhập vào)

Output:Hai số tự nhiên MMM và NNN sao cho:

M<1000;N<1000;

N= Tổng các ước của M (kể cả 1 và không kể M)

M = Tổng các ước của N(kể cả 1 và không kể N)

Tìm thuật toán:

Lặp với N từ 1 đến 999:

Tính tổng ước của N được kết quả là Tổng ước

M=Tổng ước

Tính tổng ước của M được kết quả là Tổng ước

Nếu (N=Tổng ước): Thông báo (M; N) là cặp số thân thiết.

Hết lặp

Trong thuật toán trên, Tính tổng ước của N là một bài toán con có thuật toán được mô tả như sau:

Thuật toán: Tính tổng ước của N

Tổng ước = 1

u=2

Lặp đến khi u>N/2:

Nếu (N chia hết cho u): Tổng ước = Tổng ước + u

u=u+1

Hết lặp

Viết chương trình:

Chạy thử để sửa lỗi:

- Có thể trong phiên bản đầu tiên của chương trình thì điều kiện để thông báo (M;N) là cặp số thân thiết chỉ là (M=Tổng ước của N)(M = Tổng ước của N). Khi chạy thử sẽ thấy thông báo đưa những cặp số mà (N=M).

- Có thể chỉnh sửa chương trình để chỉ thông báo những cặp (M;N) M≠ N.

- Có thể chỉnh sửa thêm để mỗi cặp số chỉ thông báo 1 lần (Ví dụ: Chỉ thông báo (220;284) chứ không lặp lại ((284; 220)) bằng cách thay đổi lệnh như sau:

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

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
×