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>
This commit is contained in:
Harsh Tripathi
2021-10-13 09:19:09 -07:00
committed by GitHub
parent 2e6b71e206
commit 89bfc1244e

View File

@@ -1,21 +1,41 @@
// 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, k, d, s = 0;
cout << "Enter a number:";
int n = 0, temp = 0, rem = 0, count = 0, sum = 0;
cout << "Enter a number: ";
cin >> n;
k = n;
while (k != 0) {
d = k % 10;
s += d * d * d;
k /= 10;
temp = n;
/* First Count the number of digits
in the given number */
while(temp != 0) {
temp /= 10;
count++;
}
if (s == n)
cout << n << "is an armstrong number";
else
cout << n << "is not an armstrong number";
/* 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;
}