In this example, you will learn the concept of Armstrong number and C++ program to check Armstrong number of any digits.

**What is Armstrong Number?**

A number of three digits is said to be an Armstrong number if the sum of the cube of its digits is equal to the number itself.

**For example:**

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

Similarly, a number is said to be Armstrong number of order of `n`

if

abcd.. = a^{n}+ b^{n}+ c^{n}+ d^{n}+ ...

## C++ program to check Armstrong number of three digits

```
//Armstrong number program in C++
#include <iostream>
using namespace std;
int main()
{
int num, temp, rem, sum = 0;
cout << "Enter a three digit positive number: ";
cin >> num;
temp = num; //storing num into temp for using later in the program
//while loop for cubing individual digit of num
while (num != 0)
{
rem = num % 10;
sum += rem * rem * rem;
num = num / 10;
}
//if condition for comparing sum with original number
if (temp == sum)
cout << temp << " is an Armstrong number" << endl;
else
cout << temp << " is not an Armstrong number" << endl;
return 0;
} //end main
```

**Output**

## C++ program to check Armstrong number of any digits

```
//Armstrong number program in C++ of any digit
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
int num, temp, rem;
int sum = 0, n = 0;
cout << "Enter positive number: ";
cin >> num;
temp = num;
//logic to find the number of digits in a given number
while (temp != 0)
{
temp = temp / 10;
n++;
}
temp = num;
while (temp != 0)
{
rem = temp % 10; //storing individual digit of original number in rem
sum = sum + pow(rem, n); //computing power of digits of original number
temp = temp / 10;
}
//checking whether sum is equal to original number
if (num == sum)
cout << num << " is an Armstrong number" << endl;
else
cout << num << " is not an Armstrong number" << endl;
return 0;
}
```

**Output**

Enter positive number: 1634 1634 is an Armstrong number Enter positive number: 1635 1635 is not an Armstrong number

**Explanation**

In this program, we find the order of the number entered by the user because this program works for `n`

order Armstrong number.

We have used standard math library function `pow()`

for calculating the power of individual digits of `num`

.