C Program to find if the input is a Armstrong Number or Not

Published on December 21, 2016 by abundantcode

Filed under C

Last modified December 21, 2016

Print this page

rate 1 star rate 2 star rate 3 star rate 4 star rate 5 star
Your rating: none, Average: 0 (0 votes)

This article have been viewed 1149 times

Problem

Write a program in C to find if a given number is Armstrong number or not.

How to check if a number is a Armstrong number or not in C programming Language ?

A given number is a Armstrong number of order n if

abc… = an + bn + cn + …

For example , 371 is a Armstrong number because the result of the following leads to the number by itself.

3*3*3 + 7*7*7 + 1*1*1 = 371

#include <stdio.h>
#include <math.h>
int main()
{
    int inputNumber, temp, remainder;
    int output = 0, index = 0 , i =0;
    printf("Abundantcode.com coding samples \n");
    printf("Enter the Number : ");
    scanf("%d", &inputNumber);

    temp = inputNumber;
    
    while (temp != 0)
    {
        temp /= 10;
        ++index;
    }

    temp = inputNumber;

    while (temp != 0)
    {
        remainder = temp%10;
        output += pow(remainder,index);
        temp /= 10;
    }

    if(output == inputNumber)
        printf("%d is an Armstrong number.", inputNumber);
    else
        printf("%d is not an Armstrong number.", output);

    return 0;
}

Output

Abundantcode.com coding samples

Enter the Number : 371    
371 is an Armstrong number

Leave a Comment


x

You might be Interested in these Posts

How to download a file from a URL using C#?

You can use the WebClient class in C# to download a file. How to download a file from a URL using C...

How to Create an Empty array without defining the size in C# ?

When we create an array in C# , we tend to define the size of the array as shown below. String[] st...

Angular 2 - Video Tutorials and learning materials for Angular 2

Do you want to learn and build web and mobile apps using Angular 2 ?. You can find the list of tutor...