C program to check whether the number is a Perfect number or not
#include <stdio.h>
int main()
{
int i, number, sum = 0;
/* Input a number from user */
printf("Enter any number to check perfect number: ");
scanf("%d", &number);
/* Calculate sum of all proper divisors */
/* Here number/2 for reduce this loop */
for(i = 1; i <= number / 2; i++)
{
/* If i is a divisor of num */
if(number%i == 0)
{
sum += i;
}
}
/* Check whether the sum of proper divisors is equal to num */
if(number == sum)
{
printf("%d is Perfect Number", number);
}
else
{
printf("%d is Not Perfect Number", number);
}
return 0;
}
Output
Enter any number to check perfect number: 6
6 is Perfect Number