Liệt kê ước số Viết chương trình nhập vào một số nguyên dương n

Câu hỏi :

Liệt kê ước số

Viết chương trình nhập vào một số nguyên dương n và in ra tất cả các ước số của n.

* Đáp án

* Hướng dẫn giải

Cách 1: Một trong những giải pháp đơn giản là thử mọi giá trị số nguyên d từ l tới n, mỗi khi gặp một giá trị ở là ước số của n thì in ra ngay giá trị d đó. Tham khảo chương trình sau:

Liệt kê ước số Viết chương trình nhập vào một số nguyên dương n  (ảnh 1)

Ví dụ

Input

Output

60

1 2 3 4 5 6 10 12 15 20 30 60

Cách 2: Cách làm trên khá chậm khi gặp giá trị n lớn (chẳng hạn n = 109). Một cải tiến nhỏ là dựa vào nhận xét: Ngoại trừ ước d = n, tất cả các ước số khác của n đều không vượt quá \(\frac{n}{2}\), vì vậy ta chỉ cần thử d trong phạm vi [1, \(\frac{n}{2}\)] còn riêng ước d = n sẽ được in ra sau. Mặc dù tốc độ chương trình cải thiện gấp đôi, phương pháp này vẫn còn rất chậm.

Cách 3: Dựa vào nhận xét: Nếu d là ước số của n thì “\(\frac{n}{d}\) cũng là ước số của n”. Trong hai ước số d và \(\frac{n}{d}\), chắc chắn có một số nhỏ hơn hoặc bằng \(\sqrt n \). Vì thế ta chỉ cần thử d trong phạm vi [1; \(\sqrt n \)], khi tìm thấy. một ước số d của n trong phạm vi này, ta in ra d và in ra luôn cả ước \(\frac{n}{d}\)

Lưu ý: Trường hợp d = nd (n là số chính phương), ta chỉ được in ra một ước để tránh trùng lặp.

Tham khảo chương trình sau:

Liệt kê ước số Viết chương trình nhập vào một số nguyên dương n  (ảnh 2)

Câu hỏi trên thuộc đề trắc nghiệm dưới đây !

Giải SBT Tin 10 Bài 8, 9: Câu lệnh lặp có đáp án !!

Số câu hỏi: 10

Bạn có biết?

Tin học, tiếng Anh: informatics, tiếng Pháp: informatique, là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng (ảo). Với cách hiểu hiện nay, tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin.

Nguồn : Wikipedia - Bách khoa toàn thư

Tâm sự Lớp 10

Lớp 10 - Năm thứ nhất ở cấp trung học phổ thông, năm đầu tiên nên có nhiều bạn bè mới đến từ những nơi xa hơn vì ngôi trường mới lại mỗi lúc lại xa nhà mình hơn. Được biết bên ngoài kia là một thế giới mới to và nhiều điều thú vị, một trang mới đang chò đợi chúng ta.

Nguồn : ADMIN :))

Liên hệ hợp tác hoặc quảng cáo: gmail

Điều khoản dịch vụ

Copyright © 2021 HOCTAPSGK