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
Top thành viên trả lời