Skip to main content

C Program to Check whether a given number is Perfect or Not

 C Program to Check whether a given number is Perfect or Not.


In this exmaple we will learn to check a given number is a Perfect Number or not. 


LOGIC OF PERFECT SQUARE NUMBER:

  • At first we have declared variables i,num,sum=0(value is initialized to zero). 

  • Then we have inputted the number from the user and stored in num.

  • After that we have to to add a loop i=1 till num/2 and to increment the iteration by 1. You all must be thinking why we have to run the loop till num/2 because a number does not have any positive integer greater than the half of the number that is num/2.

  • Then we have to check whether the remainder of num%i is equal to zero or not. If it is equal then the value of i is a proper divisor of the number entered by the user and it is added to sum.

  • Now we have to check if the sum of the proper divisors of the number equal to the original number. If it is equal then the number entered by the user is a perfect number otherwise it is not a perfect number.


PROGRAM OF PERFECT NUMBER:

#include<stdio.h>
int main()
{
    int i,num,sum=0;
    printf("Enter any number to check perfect number:");
    scanf("%d",&num);
    for(i=1;i<=num/2;i++)
    {
        if(num%i==0)
        {
            sum+=i;
        }
    }
    if(sum==num)
    {
        printf("%d is PERFECT NUMBER\",num);
    }
    else
    {
        printf("%d is NOT A PERFECT NUMBER",num);
    }
    return 0;
}


OUTPUT:

C Program to Check whether a given number is Perfect or Not


PERFECT NUMBER:


Perfect number is a positive integer that is equal to the sum of its positive divisors, excluding the number itself. 


  • There are 51 known perfect numbers in total.

  • First five perfect numbers are 6,28,496,8128 and 33550336

  • There are only 2 perfect numbers between 1 to 100 and 3 perfect numbers between 1 to 1000.

  • Euclid was the first individual to categorize the perfect numbers.

Comments

Popular posts from this blog

C Program to find the sum of the elements of a 2-D array.

 C Program to find the sum of the elements of a 2-D array.     In this example, we will find the sum of the elements of a 2-D array allowing the user to enter the row size and column size according to their requiremnts.      Here in the output we have entered a row  size 3 and column size 3. PROGRAM #include <stdio.h> #include <conio.h> void   main () {      int   a [ 50 ][ 50 ], r , c , i , j , sum = 0 ;      printf ( "Enter the row size and column size of the array :" );      scanf ( " %d%d " ,& r ,& c );      printf ( "Enter the elements of the array : " );      for ( i = 0 ; i < r ; i ++)     {          for ( j = 0 ; j < c ; j ++)       ...

C Program to find the Transpose of a Matrix.

C Program to find the Transpose of  a Matrix.       In this example, we will find the transpose of a given matrix according to the requirements of the row size and column size.      Here in the output we have entered a 3x2 Matrix whose transpose will be 2x3 Matrix. PROGRAM #include <stdio.h> #include <conio.h> int   main () {      int   row , column , i , j , a [ 100 ][ 100 ];      printf ( "Enter the row size of the matrix :" );      scanf ( " %d " ,& row );      printf ( "Enter the column size of the matrix : " );      scanf ( " %d " ,& column );      printf ( "Enter the elements of the matrix : " );      for ( i = 0 ; i < row ; i ++)     {  ...

C Program to Swap the values of two variables using function.

C Program to Swap the values of two variables using function.     In this example, we swap the values of two variables using function. We have declared a function swap. PROGRAM #include <stdio.h> #include <conio.h> void   swap ( int *, int  *); int   main () {      int   a , b ;      printf ( "Enter the values of a and b : " );      scanf ( " %d%d " ,& a ,& b );      printf ( "Before swapping the values in main a= %d  , b= %d \n " , a , b );      swap (& a ,& b );      printf ( "After swapping the values in main a= %d  , b= %d \n " , a , b );      getch (); } void   swap ( int  * a , int  * b ) {      int   temp ;    ...

C Program to Check Even or Odd Without Modulous and Bitwise Operator

  C Program to Check Even or Odd Without Modulous and Bitwise Operator                   In this example we will check even or odd without Modulous Operator. To do this program we should know what is even and odd number.                   Even Number: Even numbers are those numbers which are divisible by 2. That means if we divide a number by 2 and if its remainder appears 0 then it is an even number.                                 For Example: 2,4,6,8,10,12,.... are all even numbers.                              ...

C Program to Calculate the Factorial of a number using Function

  C Program to Calculate the Factorial of a number using Function.     In this example, we will calculate the factorial of a number using function. Here we have used functions with Arguments and return value to perform this operation. We have declared a user-defined function fact which is called in the main function when printing the result. What is a Factorial of  a Number?      The factorial of a number is the product of all positive integers less than, equal to n. Factorial is denoted by the symbol '!'. Formula of factorial is n!=n x (n-1)! For example: 6!= 6 x 5 x 4 x 3 x 2 x1    = 720 PROGRAM TO CALCULATE THE FACTORIAL OF A NUMBER USING FUNCTION #include <stdio.h> #include <conio.h> int   fact ( int ); void   main () {      int   n ;      printf ( "Enter the number : " );      scanf ( " %d " ,& n );   ...