Пользователь вводит целые числа, ноль — сигнал остановки. Гарантируется, что в какой-то момент сумма введённых чисел окажется равной 10. Программа должна вывести количество чисел, которое было введено к тому моменту, когда это случилось (в первый раз).
Считывать все числа можно, но не обязательно.
Формат ввода
Несколько целых чисел, по одному на строке.
Формат вывода
Одно целое число — количество введенных чисел в момент, когда их сумма впервые стала равна 10.
Пользователь вводит целые числа, ноль — сигнал остановки. Гарантируется, что в какой-то момент сумма введённых чисел окажется равной 10. Программа должна вывести количество чисел, которое было введено к тому моменту, когда это случилось (в первый раз).
Считывать все числа можно, но не обязательно.
Формат ввода
Несколько целых чисел, по одному на строке.
Формат вывода
Одно целое число — количество введенных чисел в момент, когда их сумма впервые стала равна 10.
Чтобы решить эту задачу, нам нужно написать программу, которая будет считывать числа, суммировать их и отслеживать количество введённых чисел до момента, когда сумма впервые станет равной 10. Давайте разберём шаги решения:
1. **Инициализация переменных:**
- Создайте переменную для хранения текущей суммы чисел. Начальное значение этой переменной должно быть 0.
- Создайте переменную для подсчета количества введённых чисел. Начальное значение этой переменной также должно быть 0.
2. **Считывание чисел:**
- Используйте цикл для непрерывного считывания чисел с клавиатуры. Это может быть `while` или `for` цикл, но `while` более подходит для таких задач, когда количество итераций заранее неизвестно.
3. **Обработка каждого введённого числа:**
- Внутри цикла считывайте следующее число.
- Если введенное число равно 0, завершите выполнение цикла, так как это сигнал остановки.
- Увеличьте переменную, отвечающую за количество введённых чисел, на 1.
- Добавьте введённое число к текущей сумме.
4. **Проверка суммы:**
- После обновления суммы проверьте, равна ли она 10.
- Если сумма равна 10, выведите количество введённых чисел и завершите выполнение программы.
5. **Завершение программы:**
- Если цикл завершился из-за ввода 0, а сумма так и не стала равной 10, значит, программа завершится без вывода результата, но по условиям задачи это невозможно, так как гарантируется, что сумма станет равной 10.
Пример кода на Python, который реализует описанный алгоритм:
```python
sum_of_numbers = 0
count_of_numbers = 0
while True:
number = int(input())
if number == 0:
break
count_of_numbers += 1
sum_of_numbers += number
if sum_of_numbers == 10:
print(count_of_numbers)
break
```
Этот код последовательно считывает числа, обновляет сумму и считает количество чисел. Как только сумма становится равной 10, он выводит количество введённых чисел и завершает выполнение.