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 calculate area of a circle using function.

C program to calculate area of a circle. In this example we will learn to calculate the area of a circle. Here in this program we will use 3.14 as the value of pi.  The formula to calculate the area of a circle is:                                                         area=   π  r² Flowchart To Calculate the Area of a Circle: PROGRAM: #include <conio.h> #include <stdio.h> int   main () {      float   radius , area ;      printf ( "Enter the radius of the circle : " );      scanf ( "%f" ,& radius );      area = 3.14 * radius * radius ;          printf ( "Area of the circle is : %.2f" , area );  ...

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 display the upper triangle and lower triangle of the given square Matrix using function

 C program to display the upper triangle and lower triangle of the given square Matrix using function     In this example, we will display the upper triangle and lower triangle of a given square matrix using function. Here in the output section we have taken a 3x3 matrix whose values are entered as shown in the output. After entering the elements of the square matrix it will display the upper triangle and lower triangle of the matrix entered. PROGRAM TO DISPLAY THE UPPER TRIANGLE AND LOWER TRIANGLE OF THE GIVEN SQUARE MATRIX USING FUNCTION #include <stdio.h> #include <conio.h> void  uppert( int , int , int  [100][100]); void  lowert( int , int , int  [100][100]); void  main() {      int  i,j,c,d,a[100][100];     printf( "Enter the size of the given square matrix : " );     scanf( "%d" ,&c);     d=c; ...

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 Check a given Number is Armstrong or Not

 C Program to Check a given Number is Armstrong or Not.     In this example, we will check a number entered by the user whether it is an Armstrong number or not. To solve this program we should have a proper concept on Armstrong number, while loop and if-else statement. What is an Armstrong Numer?           An Armstrong number is a positive number that is equal to the sum of the power of the digits. For Example: Let's take 153:  1 3  + 5 3  + 3 3                                                                    = 1 + 125+ 27                                                     ...