Skip to content
Home » C program to print Perfect numbers within the given range

C program to print Perfect numbers within the given range

The sum of their “proper” divisors equals “perfect numbers” (positive integers that divide a number evenly, not counting itself).

Below is the code to find the perfect numbers within the given range

#include <stdio.h>
int main(){
    int a,b,i,j,summ;
    printf("Enter two numbers to find perfect numbers between them: ");
    scanf("%d %d",&a,&b);
    printf("Perfect numbers between %d and %d\n",a,b);
    for(i=a;i<=b;i++){
        for(j=1;j<i;j++){
            if(i%j==0){
                summ+=j;
            }
        }
        if(summ==i){
            printf("%d\n",i);
            }  
        summ=0;
    }
  
}

Output:

Enter two numbers to find perfect numbers between them: 1
100
Perfect numbers between 1 and 100
6
28