У цьому прикладі ви навчитеся перевіряти, чи введене користувачем число є числом Армстронга.
Щоб зрозуміти цей приклад, ви повинні знати наступні теми програмування на C ++:
- C ++ if, if … else та вкладений if … else
- C ++ в той час як і робити … поки Loop
Позитивне ціле число називається числом Армстронга (порядку n), якщо
abcd… = a n + b n + c n + d n +…
У разі числа Армстронга з 3 цифр сума кубів кожної цифри дорівнює самому числу. Наприклад, 153 - це число Армстронга, оскільки
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3
Приклад: Перевірте число Армстронга з 3 цифр
#include using namespace std; int main() ( int num, originalNum, remainder, result = 0; cout <> num; originalNum = num; while (originalNum != 0) ( // remainder contains the last digit remainder = originalNum % 10; result += remainder * remainder * remainder; // removing last digit from the orignal number originalNum /= 10; ) if (result == num) cout << num << " is an Armstrong number."; else cout << num << " is not an Armstrong number."; return 0; )
Вихідні дані
Введіть додатне ціле число: 371 371 - число Армстронга.
У програмі ми перебираємо цикл while, доки originalNum не дорівнює 0.
У кожній ітерації циклу до результату додається куб останньої цифри orignalNum.
remainder = originalNum % 10; result += remainder * remainder * remainder;
І остання цифра видаляється з orignalNum
.
Коли цикл закінчується, сума куба окремої цифри зберігається в результаті.
Приклад: Перевірте кількість Армстронга з n цифр
#include #include using namespace std; int main() ( int num, originalNum, remainder, n = 0, result = 0, power; cout <> num; originalNum = num; while (originalNum != 0) ( originalNum /= 10; ++n; ) originalNum = num; while (originalNum != 0) ( remainder = originalNum % 10; // pow() returns a double value // round() returns the equivalent int power = round(pow(remainder, n)); result += power; originalNum /= 10; ) if (result == num) cout << num << " is an Armstrong number."; else cout << num << " is not an Armstrong number."; return 0; )
Вихідні дані
Введіть ціле число: 1634 1634 - число Армстронга.
У цій програмі кількість цифр введеного числа обчислюється спочатку і зберігається в n.
І pow()
функція обчислює потужність окремих цифр у кожній ітерації while
циклу.