Header Ads

Check Armstrong Number

Check Prime and Armstrong Number
A positive integer is called an Armstrong number of order n if
abcd... = a**n + b**n + c**n + d**n + ...
In case of an Armstrong number of 3 digits, the sum of cubes of each digit is equal to the number itself. For example:
153 = 1*1*1 + 5*5*5 + 3*3*3  // 153 is an Armstrong number.


Example #1: Check Armstrong Number of three digits
#include <stdio.h>
int main()
{
    int number, originalNumber, remainder, result = 0;
    printf("Enter a three digit integer: ");
    scanf("%d", &number);
    originalNumber = number;
    while (originalNumber != 0)
    {
        remainder = originalNumber%10;
        result += remainder*remainder*remainder;
        originalNumber /= 10;
    }
    if(result == number)
        printf("%d is an Armstrong number.",number);
    else
        printf("%d is not an Armstrong number.",number);
    return 0;
}
Output:
Enter a three digit integer: 371
371 is an Armstrong number.  
Example #2: Check Armstrong Number of n digits

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

int main()
{
    int number, originalNumber, remainder, result = 0, n = 0 ;
    printf("Enter an integer: ");
    scanf("%d", &number);
     originalNumber = number;
    while (originalNumber != 0)
    {
        originalNumber /= 10;
        ++n;
    }
    originalNumber = number;
    while (originalNumber != 0)
    {
        remainder = originalNumber%10;
        result += pow(remainder, n);
        originalNumber /= 10;
    }
    if(result == number)
        printf("%d is an Armstrong number.", number);
    else
        printf("%d is not an Armstrong number.", number);
    return 0;
}

Output:
Enter an integer: 1634
1634 is an Armstrong number.

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
Powered by Blogger.