Số hoàn hảo là số tự nhiên có giá trị bằng tổng các ước thực sự của nó (các ước nhỏ hơn chính nó). Ví dụ một vài số hoàn hảo:
6: 1 + 2 + 3 = 6
28: 1 + 2 + 4 + 7 + 14 = 28
496: 1 + 2 + 4 + 8 + 16 + 31 + 62 + 124 + 248 = 496
8128: 1 + 2 + 4 + 8 + 16 + 32 + 64 + 127 + 254 + 508 + 1016 + 2032 + 4064 = 8128
Em hãy viết chương trình xác định số hoàn hảo đầu tiên lớn hơn số tự nhiên n được nhập vào từ bàn phím.
Bằng cách nhấp vào Đăng nhập, bạn đồng ý Chính sách bảo mật và Điều khoản sử dụng của chúng tôi. Nếu đây không phải máy tính của bạn, để đảm bảo an toàn, hãy sử dụng Cửa sổ riêng tư (Tab ẩn danh) để đăng nhập (New Private Window / New Incognito Window).
Chương trình có thể viết như sau:
# Số hoàn hảo > n cho trước
n = int(input("Nhập giá trị của n: "))
so_hoanhao = n + 1
tim_ra = False
while tim_ra == False:
tong_uocso = 0
for i in range(1, so_hoanhao):
if so_hoanhao%i==0: # i là ước số
tong_uocso = tong_uocso+i
if tong_uocso == so_hoanhao :
tim_ra = True
print("Số hoàn hảo đầu tiên lớn hơn ", n, " là ", so_hoanhao)
else:
so_hoanhao = so_hoanhao + 1
Tham gia Cộng đồng Lazi trên các mạng xã hội | |
Fanpage: | https://www.fb.com/lazi.vn |
Group: | https://www.fb.com/groups/lazi.vn |
Kênh FB: | https://m.me/j/AbY8WMG2VhCvgIcB |
LaziGo: | https://go.lazi.vn/join/lazigo |
Discord: | https://discord.gg/4vkBe6wJuU |
Youtube: | https://www.youtube.com/@lazi-vn |
Tiktok: | https://www.tiktok.com/@lazi.vn |
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 |