Làm sao để có câu trả lời hay nhất?
25/02/2024
25/02/2024
Dưới đây là mã Python để giải bài toán:
Python
def tinh_tong_uoc_so(n):
"""
Hàm tính tổng các ước số của n
"""
tong = 0
for i in range(1, int(n ** 0.5) + 1):
if n % i == 0:
tong += i + (n // i)
return tong
def kiem_tra_so_hoan_thien(n):
"""
Hàm kiểm tra n có phải là số hoàn thiện hay không
"""
tong_uoc_so = tinh_tong_uoc_so(n)
return tong_uoc_so - n == n
# Nhập số nguyên dương n
n = int(input("Nhập số nguyên dương n: "))
# In ra các ước số của n
print("Các ước số của", n, "là:", end=" ")
for i in range(1, int(n ** 0.5) + 1):
if n % i == 0:
print(i, end=" ")
if n // i != i:
print(n // i, end=" ")
# In ra tổng các ước số của n
print("\nTổng các ước số của", n, "là:", tinh_tong_uoc_so(n))
# In ra n có phải là số hoàn thiện hay không
if kiem_tra_so_hoan_thien(n):
print(n, "là số hoàn thiện")
else:
print(n, "không phải là số hoàn thiện")
Nếu bạn muốn hỏi bài tập
Các câu hỏi của bạn luôn được giải đáp dưới 10 phút
CÂU HỎI LIÊN QUAN
03/09/2024
01/09/2024
Top thành viên trả lời