Проверка чисел Армстронга на C++

C++C++Beginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии мы научимся проверять, является ли число числом Армстронга, используя язык программирования C++. Число Армстронга - это число, которое равно сумме своих цифр, возведенных в степень, равную количеству цифр в этом числе. Это простая программа, которая поможет вам потренировать свои навыки программирования на C++.

Подключить необходимые библиотеки

Мы создадим новый файл с именем main.cpp в директории ~/project с помощью следующей команды:

touch ~/project/main.cpp

В этом шаге мы подключим необходимые библиотеки.

#include <iostream>
#include <cmath>
using namespace std;

Библиотека iostream используется для работы с потоками ввода/вывода, в то время как библиотека cmath добавляет функциональность для математических операций.

Определить функцию main()

В этом шаге мы определим функцию main().

int main() {
    // код здесь
    return 0;
}

Главная функция является точкой входа в программу. Все код, который должен быть выполнен, должен быть написан внутри этой функции.

Объявить и инициализировать переменные

В этом шаге мы объявим и инициализируем переменные, необходимые для программы.

int num, originalNumber, remainder, result = 0, n = 0;
  • num - это вводимое число
  • originalNumber - это исходное, не модифицированное вводимое число
  • remainder хранит последнюю цифру вводимого числа
  • result хранит результат вычисления для числа Армстронга
  • n используется для определения количества цифр в вводимом числе

Получить ввод от пользователя

В этом шаге мы получим от пользователя значение ввода.

cout << "Enter a positive integer: ";
cin >> num;

этот фрагмент кода получает ввод от пользователя и сохраняет его в переменной num.

Определить количество цифр в введенном числе

В этом шаге мы определим количество цифр в введенном числе.

originalNumber = num;

// подсчитать количество цифр
while (originalNumber!= 0) {
    originalNumber /= 10;
    ++n;
}

этот блок кода подсчитывает количество цифр в введенном числе. Количество хранится в переменной n.

Вычислить результат

В этом шаге мы вычислим результат вычисления для числа Армстронга.

originalNumber = num;

while (originalNumber!= 0) {
    remainder = originalNumber % 10;
    result += pow(remainder, n);
    originalNumber /= 10;
}

этот блок кода перебирает каждую цифру в введенном числе и выполняет вычисление для числа Армстронга. Результат хранится в переменной result.

Проверить результат

В этом шаге мы проверим, является ли введенное число числом Армстронга или нет.

if (result == num)
    cout << num << " is an Armstrong number";
else
    cout << num << " is not an Armstrong number";

этот блок кода выводит результат программы. Если результат равен введенному числу, то введенное число является числом Армстронга. В противном случае - нет.

Для запуска кода в терминале:

g++ main.cpp -o main && ./main

Резюме

В этом практическом занятии мы научились проверять, является ли число числом Армстронга или нет. Мы использовали библиотеку cmath для выполнения вычислений, необходимых для этой задачи. Мы также узнали, как перебирать цифры числа и подсчитывать их. С помощью этой базовой программы вы можете дальнейшим образом развивать свои навыки программирования на C++.