# Python Program to Find Perfect Number

Python program to check if a number is a perfect number; Through this tutorial, you will learn how to check if a number is a perfect number in python using while loop, for loop and function. And print perfect numbers from 1 to N (100, 500, 1000) in python.

## Python Program to Find Perfect Number

• Python Program to find Perfect Number using For loop.
• Python Program to find Perfect Number using While loop.
• Python Program to find Perfect Number using Function.
• Python Program to Find Perfect Number between 1 to 100 or N.

### Python Program to find Perfect Number using For loop

• Take input from the user.
• Calculate whether the number is Perfect number or not using the Python For Loop.
• Print the result.
```# Python Program to find Perfect Number using For loop

# take input from user
Num = int(input("Please Enter any Number :- "))

Sum = 0

for i in range(1, Num):
if(Num % i == 0):
Sum = Sum + i

if (Sum == Num):
print("It is a Perfect Number")
else:
print("It is not a Perfect Number")
```

Output

```Please Enter any Number :-  10
It is not a Perfect Number

// test other number
Please Enter any Number :-  6
It is a Perfect Number ```

### Python Program to find Perfect Number using For While

• Take input from the user.
• Calculate whether the number is Perfect number or not using the Python While Loop.
• Print the result.
```# Python Program to find Perfect Number using While loop

# take input from user
Num = int(input("Please Enter any Number :- "))

i = 1
Sum = 0
while(i < Num):
if(Num % i == 0):
Sum = Sum + i
i = i + 1

if (Sum == Num):
print("It is a Perfect Number")
else:
print("It is not a Perfect Number")
```

Output

```Please Enter any Number :-  6
It is a Perfect Number```

### Python Program to find Perfect Number using Function

• Take input from the user.
• Calculate whether the number is Perfect number or not using function.
• Print the result.
```# Python Program to find Perfect Number using Functions

def PNum(Number):
Sum = 0
for i in range(1, Number):
if(Number % i == 0):
Sum = Sum + i
return Sum

# take input from user
Num = int(input("Please Enter any Number :- "))

if (Num == PNum(Num)):
print("It is a Perfect Number")
else:
print("It is not a Perfect Number")
```

Output

```Please Enter any Number :-  5
It is not a Perfect Number ```

### Python Program to Find Perfect Number between 1 to 100

• Take inputs from the user.
• Calculate whether the number is Perfect number or not using the Python For Loop.
• Print the result.
```# Python Program to find Perfect Number between 1 to 100

# Taking input from the user
Min = int(input("Please Enter any Minimum Value :- "))
Max = int(input("Please Enter any Maximum Value :- "))

# initialise sum

# Checking the Perfect Number
for Number in range(Min, Max - 1):

Sum = 0

for n in range(1, Number - 1):
if(Number % n == 0):
Sum = Sum + n

# display the result
if(Sum == Number):
print(" %d " %Number)
```

Output

```Please Enter any Minimum Value :-  1
Please Enter any Maximum Value :-  100
6
28 ```

## Recommended Python Programs 