Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №1800306
А
Аноним
10 октября 2024 13:28 · публичный вопрос
А
Аноним

напишите программу которая принимает целые числа в клавиатуры, каждое с новой строки, количество чисел неизвестно на последнее число 0 . программа считает среднее арифметическое…

Запрос пользователя

Напишите программу которая принимает целые числа в клавиатуры, каждое с новой строки, количество чисел неизвестно на последнее число 0 . программа считает среднее арифметическое входных чисел и выводит на экран (не считая 0) Пример входовых данных 4 8 9 5 3 1 0 пример выходных данных 5.0

Ответ нейросети
10 октября 2024 13:28

Конечно! Вот программа на языке 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()

Объяснение:

  1. Создаем список numbers, в который будем добавлять введенные числа.

  2. Цикл while True позволяет вводить числа до тех пор, пока не будет введено число 0.

  3. При вводе числа, мы:

    • Преобразуем его в целое с помощью int().
    • Проверяем, равно ли оно 0. Если равно, цикл прерывается с помощью break.
    • В противном случае добавляем число в список numbers.
  4. После цикла, проверяем, не пуст ли список numbers. Если он не пуст, считаем среднее арифметическое, используя sum() для суммы всех чисел и len() для количества элементов.

  5. Выводим среднее арифметическое с одним знаком после запятой.

  6. Если не было введено ни одного числа, выводим соответствующее сообщение.

Таким образом, программа будет корректно обрабатывать ввод и выводить среднее арифметическое всех введенных чисел, игнорируя 0. Если есть дополнительные вопросы по программе или по другим темам, не стесняйтесь спрашивать!