C Example for Beginners: C Program to Check Prime or Armstrong Number Using User-defined Function

Hits: 109

(C programming Example for Beginners)

C Program to Check Prime or Armstrong Number Using User-defined Function

In this example, you will learn to check whether an integer is a prime number or an Armstrong or both by creating two separate functions.


In this program, two user-defined functions checkPrimeNumber() and checkArmstrongNumber() are created.

The checkPrimeNumber() function returns 1 if the number entered by the user is a prime number. Similarly, checkArmstrongNumber() function also returns 1 if the number entered by the user is an Armstrong number.


Example: Check Prime and Armstrong


#include <math.h>
#include <stdio.h>

int checkPrimeNumber(int n);
int checkArmstrongNumber(int n);

int main(){
   int n, flag;
   printf("Enter a positive integer: ");
   scanf("%d", &n);

   // check prime number
   flag = checkPrimeNumber(n);
   if (flag == 1)
      printf("%d is a prime number.n", n);
   else
      printf("%d is not a prime number.n", n);

   // check Armstrong number
   flag = checkArmstrongNumber(n);
   if (flag == 1)
      printf("%d is an Armstrong number.", n);
   else
      printf("%d is not an Armstrong number.", n);
   return 0;
}

// function to check prime number
int checkPrimeNumber(int n){
   int i, flag = 1, squareRoot;

   // computing the square root
   squareRoot = sqrt(n);
   for (i = 2; i <= squareRoot; ++i) {
      // condition for non-prime number
      if (n % i == 0) {
         flag = 0;
         break;
      }
   }
   return flag;
}

// function to check Armstrong number
int checkArmstrongNumber(int num){
   int originalNum, remainder, n = 0, flag;
   double result = 0.0;

   // store the number of digits of num in n
   for (originalNum = num; originalNum != 0; ++n) {
      originalNum /= 10;
   }

   for (originalNum = num; originalNum != 0; originalNum /= 10) {
      remainder = originalNum % 10;

      // store the sum of the power of individual digits in result
      result += pow(remainder, n);
   }

   // condition for Armstrong number
   if (round(result) == num)
      flag = 1;
   else
      flag = 0;
   return flag;
}

Output

Enter a positive integer: 407
407 is not a prime number.
407 is an Armstrong number.

 

C Example for Beginners: C Program to Check Prime or Armstrong Number Using User-defined Function

Sign up to get end-to-end “Learn By Coding” example.



Disclaimer: The information and code presented within this recipe/tutorial is only for educational and coaching purposes for beginners and developers. Anyone can practice and apply the recipe/tutorial presented here, but the reader is taking full responsibility for his/her actions. The author (content curator) of this recipe (code / program) has made every effort to ensure the accuracy of the information was correct at time of publication. The author (content curator) does not assume and hereby disclaims any liability to any party for any loss, damage, or disruption caused by errors or omissions, whether such errors or omissions result from accident, negligence, or any other cause. The information presented here could also be found in public knowledge domains.