Конечно! Вот программа на языке Python, которая выполняет поставленную задачу:
def average_until_zero():
numbers = []
while True:
num = int(input("Введите целое число (0 для завершения): "))
if num == 0:
break
numbers.append(num)
if numbers: # Проверяем, что список не пуст
average = sum(numbers) / len(numbers)
print(f"Среднее арифметическое: {average:.1f}")
else:
print("Не было введено ни одного числа.")
average_until_zero()
Объяснение:
Создаем список
numbers, в который будем добавлять введенные числа.Цикл
while Trueпозволяет вводить числа до тех пор, пока не будет введено число 0.При вводе числа, мы:
- Преобразуем его в целое с помощью
int(). - Проверяем, равно ли оно 0. Если равно, цикл прерывается с помощью
break. - В противном случае добавляем число в список
numbers.
- Преобразуем его в целое с помощью
После цикла, проверяем, не пуст ли список
numbers. Если он не пуст, считаем среднее арифметическое, используяsum()для суммы всех чисел иlen()для количества элементов.Выводим среднее арифметическое с одним знаком после запятой.
Если не было введено ни одного числа, выводим соответствующее сообщение.
Таким образом, программа будет корректно обрабатывать ввод и выводить среднее арифметическое всех введенных чисел, игнорируя 0. Если есть дополнительные вопросы по программе или по другим темам, не стесняйтесь спрашивать!