Python program to find perfect number

Checking perfect number: What is perfect number? How to check whether a given number is perfect number of not in Python? By Ankit Rai Last updated : January 04, 2024

Problem statement

Given an integer number and we have to check whether it is perfect number or not?

This Python program is used to find its all positive divisors excluding that number.

Explanation

For Example, 28 is a perfect number since divisors of 28 are 1, 2, 4,7,14 then sum of its divisor is 1 + 2 + 4 + 7 + 14 = 28.

Note: A perfect number is a positive integer that is equal to the sum of its proper positive divisors.

Python program to find perfect number

# initialisation
i = 2
sum = 1

# take input from user and typecast into integer
n = int(input("Enter a number: "))

# iterating till n//2 value
while i <= n // 2:
    # if proper divisor then add it.
    if n % i == 0:
        sum += i
    i += 1

# check sum equal to n or not
if sum == n:
    print(n, "is a perfect number")
else:
    print(n, "is not a perfect number")

Output

The output of the above example is:

First run:
Enter a number: 28
28 is a perfect number

Second run:
Enter a number: 14
14 is not a perfect number

To understand the above program, you should have the basic knowledge of the following Python topics:

Python Basic Programs »

Related Programs

Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.