Monday, May 27, 2019

Display Armstrong Number Between Two Intervals

Write C Program to Display Armstrong Number Between Two Intervals

Program:

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

int main()
{
    int low, high, i, temp1, temp2, remainder, n = 0, result = 0;

    printf("Enter two numbers(intervals): ");
    scanf("%d %d", &low, &high);
    printf("Armstrong numbers between %d an %d are: ", low, high);

    for(i = low + 1; i < high; ++i)
    {
        temp2 = i;
        temp1 = i;

        // number of digits calculation
        while (temp1 != 0)
        {
            temp1 /= 10;
            ++n;
        }
        while (temp2 != 0)
        {
            remainder = temp2 % 10;
            result += pow(remainder, n);
            temp2 /= 10;
        }

        if (result == i) {
            printf("%d ", i);
        }

        n = 0;
        result = 0;

    }
    return 0;
}
-----------------------------------------------------------------------------------------

Output:

Enter two numbers(intervals): 999
9999
Armstrong numbers between 999 an 9999 are: 1634 8208 9474
--------------------------------
Process exited after 8.244 seconds with return value 0
Press any key to continue . . .


0 Comments:

Post a Comment