TheAlgorithms-C-Plus-Plus/dynamic_programming/armstrong_number.cpp
Harsh Tripathi 89bfc1244e
fix: Armstrong number bug fixes (#1689)
* added a new directory named Recursion and a most common exxample of recusion i.e. Tower of Hanoi in it

* Added Comments

* Bug fixed according to the correct definition of armstrong_number

* Bug Fixed in armstrong_number.cpp

Bug Fixed in armstrong_number.cpp according to the correct definition of armstrong_number.

* Update armstrong_number.cpp

* Added documentation

* Delete Recursion directory

* Update armstrong_number.cpp

* Update dynamic_programming/armstrong_number.cpp

Co-authored-by: David Leal <halfpacho@gmail.com>

* Update armstrong_number.cpp

fixed errors.

* Apply suggestions from code review

* Apply suggestions from code review

* Apply suggestions from code review

* Apply suggestions from code review

* Apply suggestions from code review

* Apply suggestions from code review

* Update armstrong_number.cpp

Applied suggested changes.

* Update armstrong_number.cpp

Co-authored-by: David Leal <halfpacho@gmail.com>
2021-10-13 11:19:09 -05:00

42 lines
876 B
C++

// Program to check whether a number is an armstrong number or not
#include <iostream>
#include <cmath>
using std::cin;
using std::cout;
int main() {
int n = 0, temp = 0, rem = 0, count = 0, sum = 0;
cout << "Enter a number: ";
cin >> n;
temp = n;
/* First Count the number of digits
in the given number */
while(temp != 0) {
temp /= 10;
count++;
}
/* Calaculation for checking of armstrongs number i.e.
in a n digit number sum of the digits raised to a power of n
is equal to the original number */
temp = n;
while(temp!=0) {
rem = temp%10;
sum += (int) pow(rem,count);
temp/=10;
}
if (sum == n) {
cout << n << " is an armstrong number";
}
else {
cout << n << " is not an armstrong number";
}
return 0;
}