Для решения данной задачи можно написать программу на Python, которая будет считывать последовательность целых чисел, пока не встретит число 0, которое является признаком окончания ввода. При этом программа будет подсчитывать количество введённых чисел и сумму чётных чисел. Учитывая ограничения на количество и значение чисел, Python отлично подходит для этой задачи благодаря своим встроенным возможностям для работы с целыми числами и динамическим массивам (спискам).
Вот пример реализации такой программы:
def main():
count = 0 # переменная для подсчета количества чисел
even_sum = 0 # переменная для подсчета суммы четных чисел
while True:
try:
num = int(input("Введите число (0 для окончания ввода): ")) # считывание числа с клавиатуры
if num == 0:
break # если введено число 0, выходим из цикла
count += 1 # увеличиваем количество введенных чисел
if num % 2 == 0: # проверка на четность числа
even_sum += num # если число четное, добавляем его к сумме четных чисел
except ValueError:
print("Пожалуйста, введите целое число.") # обработка ошибок ввода
print(f"Количество чисел в последовательности: {count}")
print(f"Сумма четных чисел: {even_sum}")
if __name__ == "__main__":
main()
Подробное объяснение программы:
Инициализация переменных count
и even_sum
:
count
используется для подсчета общего количества введённых чисел.
even_sum
используется для суммирования чётных чисел.
Бесконечный цикл while True
:
- Цикл выполняется до тех пор, пока не будет введено число 0.
Считывание числа с клавиатуры:
num = int(input("Введите число (0 для окончания ввода): "))
считывает введенное пользователем число и преобразует его в целое число.
Проверка на признак окончания ввода:
if num == 0: break
проверяет, является ли введённое число 0. Если да, то цикл прерывается.
Увеличение счётчика чисел:
count += 1
увеличивает счётчик введённых чисел на 1.
Проверка числа на чётность:
if num % 2 == 0:
проверяет, является ли число чётным (остаток от деления на 2 равен 0).
- Если число чётное, то
even_sum += num
добавляет его к сумме чётных чисел.
Обработка ошибок ввода:
except ValueError: print("Пожалуйста, введите целое число.")
ловит исключение, возникающее при вводе нецелого числа, и выводит сообщение об ошибке.
Вывод результатов:
- После завершения цикла выводятся два числа: общее количество введённых чисел и сумма чётных чисел.
Этот подход эффективно решает задачу без необходимости хранить всю последовательность чисел в памяти, что особенно важно при потенциально большом количестве вводимых данных.