1. C Programming for Beginners: Writing Your First Hello World Program in C in 2023 2. Mastering Datatypes in C Programming: A Comprehensive Guide for Beginners in 2023 3. Complete Guide to % Format Specifiers in C for Beginners in 2023 4. A Comprehensive Guide to Operators in C Programming: Learn Everything About Operators in C in 2023 5. Master C Operator Precedence and Associativity in 2023: Definition, Examples, and Code 6. Learn Increment and Decrement Operators in C: A Beginners Guide with Examples - Codzify 7. Mastering Bitwise Operators in C: A Comprehensive Guide with Examples - Codzify 8. Ternary Operators in C Programming: A Beginners Guide (2023) 9. Switch Statements in C 2023: Complete Guide for Beginners 10. Learn Functions in C Programming - A Complete Tutorial for Beginners in 2023 11. Call by Value and Call by Reference in C Programming - A Complete Tutorial for Beginners in 2023 12. Storage Classes in C Programming: A Comprehensive Guide for 2023 13. Arrays in C Programming: A Comprehensive Guide for 2023 14. Basics of 2D Array in C Programming in 2023: Definition, Initialization, and Accessing Elements 15. Beginners Guide to Strings in C Programming with Codes and Examples 16. Strings Functions in C Language - strlen, strcpy,strcmp,strcat functions 17. A Comprehensive Guide to Structures in C Programming in 2023 18. Learn Unions in C Programming with Codes, Examples, and Explanations in 2023 19. Dynamic Memory Allocation in C: Understanding malloc, calloc, realloc, and free Functions 20. Introduction to C Programming 21. Hello world program in C 22. String functions in C - strncat, strcpy, strncpy, strchr, strrchr, strstr functions 23. Program for Fibonacci number in C - Codzify.com 24. What is palindrome number in C? 25. Write a C program to find a factorial of a given number 26. Write a C program to check whether a given number is prime or not 27. Write a C program to check whether a given number is an Armstrong number or not. 28. Write a C Program to transpose a matrix 29. C Programming Tutorial: Understanding Comments and Identifiers with Code Examples 30. Master String Handling Functions in C in 2023 - Codzify Topics

Write a C program to check whether a given number is an Armstrong number or not.

Article by: Manish Methani

Last Updated: September 26, 2021 at 2:04pm IST
2 min 45 sec

An Armstrong number is a number that equals the sum of the cube of each digit in a number. 

For example, suppose a given number is 153. 

To check whether a given number is Armstrong or not, we have to take the cube of each digit in a number and take a sum of those.

153 = (1*1*1) + (5*5*5) + (3*3*3)

After the addition of the cube of each digit, we get the original number which is 153. Hence, the given number is Armstrong.

#include <stdio.h>
int main()
{
   int n = 153, sum = 0, remainder = 0,tempNumber;
   tempNumber = n;
   while(tempNumber!=0)
   {
      remainder = tempNumber % 10;
      sum = sum + (remainder*remainder*remainder);
      tempNumber /= 10;
   }

   if(sum==n)
   {
     printf("%d is an Armstrong number.",n);
   }
   else
   {
     printf("%d is not an Armstrong number.",n);
   }
   return 0;
  }

Output

153 is an Armstrong number

Program Logic

  1. First, we take the original number into a temporary variable which is tempNumber.
  2. Then, we get the last digit of a temporary number using the modulo method inside a loop.
  3. After getting the last digit of a number, we added it with the cube of that last digit number.
  4. Then assigned the remaining digits except for the last digit of a number using the Quotient method.
  5. This process will be in the loop till we find that givenNumber do not reach 0.

If at the end we find that this new number after addition is found as. same or not. If yes, then the given number is an Armstrong number else it is not an Armstrong number.

C Program to check whether a given number is Armstrong or not using a user-defined function

#include <stdio.h> 
int isArmstrong(int n)
{
  int tempNumber=n;
  int remainder,sum;
  sum=0;
  while(tempNumber!=0)
  {
    remainder=tempNumber%10;
    sum = sum + (remainder*remainder*remainder);
    tempNumber/=10;
  }

if(sum==n) 
   return 1
else
   return 0;
}

int main()
{
  int n = 153;
  if(isArmstrong(n))
      printf("%d is an Armstrong number.",n);
  else
      printf("%d is not an Armstrong number.",n);
  return 0;
}

Output

153 is an Armstrong number

Watch Video Tutorials at Codzify YouTube Channel:

Codzify Logo

Terms and Conditions    Cookie Policy   Refund Policy   Adsense Disclaimer

Contact: teamcodzify@gmail.com