Ниже представлен пример программы на языке Python, которая решает данную задачу. Для корректного расчета мы сначала вычисляем среднее арифметическое всех температур, а затем сравниваем каждое значение с этим средним. Программа на Python python
# Список температур в январе (31 день)# Данные взяты для примера, их можно заменить на реальные показателиtemperatures = [ -10, -12, -8, -5, -3, 0, -2, -4, -7, -11, -15, -18, -20, -14, -10, -8, -5, -2, -1, -3, -6, -9, -12, -15, -13, -10, -7, -4, -2, 0, -1 ] defanalyze_january_weather(temp_list): # 1. Вычисляем среднюю температуруavg_temp = sum(temp_list) / len(temp_list) # 2. Инициализируем счетчикиabove_avg = 0below_avg = 0equal_avg = 0# 3. Сравниваем температуру каждого дня со среднейfortin temp_list: if t > avg_temp: above_avg += 1elif t < avg_temp: below_avg += 1else: equal_avg += 1return avg_temp, above_avg, below_avg, equal_avg # Выполнение расчетовaverage, above, below, equal = analyze_january_weather(temperatures) # Вывод результатов print(f"Средняя температура за январь: {average:.2f}°C") print("-" * 35) print(f"Дней выше средней: {above}") print(f"Дней ниже средней: {below}") print(f"Дней равных средней: {equal}") Use code with caution.Описание логики работы Программа построена по классическому алгоритму обработки массивов данных:- Сбор данных: Температуры за 31 день хранятся в списке
temperatures. - Расчет среднего значения: Используется формула среднего арифметического:
где . В коде это реализовано черезsum(temp_list) / len(temp_list). Цикл сравнения: Программа проходит по каждому элементу списка. С помощью условного оператораif-elif-elseинкрементируется соответствующая переменная-счетчик. Форматирование: Результат выводится с округлением средней температуры до двух знаков после запятой для наглядности.
Возможные модификации Если вы планируете использовать дробные значения температур (например, -10.5°C), программа продолжит работать корректно. Стоит учитывать, что количество дней, "равных средней", часто будет равно нулю, так как среднее значение обычно получается дробным и редко совпадает с целочисленными замерами. Хотите, чтобы я дополнил код функцией автоматической генерации случайных температур или добавил возможность ввода данных пользователем с клавиатуры?
Форма ответа
Ответы и вопросы пользователей