ARMSTRONG NUMBER

Armstrong Number in C

Before going to write the c program to check whether the number is Armstrong or not, let's understand what is Armstrong number.
Armstrong number is a number that is equal to the sum of cubes of its digits. For example 0, 1, 153, 370, 371 and 407 are the Armstrong numbers.
Let's try to understand why 153 is an Armstrong number.
  1. 153 = (1*1*1)+(5*5*5)+(3*3*3)  
  2. where:  
  3. (1*1*1)=1  
  4. (5*5*5)=125  
  5. (3*3*3)=27  
  6. So:  
  7. 1+125+27=153  
Let's try to understand why 371 is an Armstrong number.
  1. 371 = (3*3*3)+(7*7*7)+(1*1*1)  
  2. where:  
  3. (3*3*3)=27  
  4. (7*7*7)=343  
  5. (1*1*1)=1  
  6. So:  
  7. 27+343+1=371  
Let's see the c program to check Armstrong Number in C.
  1. #include<stdio.h>  
  2.  int main()    
  3. {    
  4. int n,r,sum=0,temp;    
  5. printf("enter the number=");    
  6. scanf("%d",&n);    
  7. temp=n;    
  8. while(n>0)    
  9. {    
  10. r=n%10;    
  11. sum=sum+(r*r*r);    
  12. n=n/10;    
  13. }    
  14. if(temp==sum)    
  15. printf("armstrong  number ");    
  16. else    
  17. printf("not armstrong number");    
  18. return 0;  
  19. }   
Output:
enter the number=153
armstrong number
enter the number=10
not armstrong number

Comments