Как создать программу на C++, которая вычисляет сумму первых M цифр натурального числа N, при условии что M варьируется от 0 до 9? Если количество цифр в N меньше M, то недостающие цифры следует принимать за 0.
Информатика 10 класс Программирование на C++
Для решения этой задачи на C++ мы создадим программу, которая будет вычислять сумму первых M цифр натурального числа N. Если количество цифр в N меньше M, то мы будем считать недостающие цифры как нули. Давайте разберем шаги решения:
Теперь, давайте посмотрим на пример кода, который реализует описанные шаги:
#include <iostream>
#include <string>
int main() {
unsigned long long N;
int M;
std::cout << "Введите натуральное число N: ";
std::cin >> N;
std::cout << "Введите число M (от 0 до 9): ";
std::cin >> M;
std::string strN = std::to_string(N);
int sum = 0;
for (int i = 0; i < M; ++i) {
if (i < strN.length()) {
sum += strN[i] - '0'; // Преобразуем символ в цифру
} else {
sum += 0; // Добавляем 0, если цифр не хватает
}
}
std::cout << "Сумма первых " << M << " цифр: " << sum << std::endl;
return 0;
}
Этот код решает поставленную задачу, следуя шагам, которые мы описали. Обратите внимание, что мы используем преобразование символа в цифру с помощью выражения strN[i] - '0', что позволяет корректно добавить значение цифры в сумму.