Check Perfect Number

Check whether a number is a perfect number (sum of proper divisors equals the number).

PythonBeginner
Python
# Program to check perfect number

num = int(input("Enter a positive integer: "))

if num <= 0:
    print("Number must be positive.")
else:
    total = 0
    for i in range(1, num):
        if num % i == 0:
            total += i

    if total == num:
        print(num, "is a perfect number")
    else:
        print(num, "is not a perfect number")

Output

Enter a positive integer: 6
6 is a perfect number

A perfect number equals the sum of its positive divisors excluding itself. We loop from 1 to num-1 and sum divisors to compare with num.