Конечно, я помогу вам написать программу на Python, которая будет находить среднее арифметическое чисел, записанных в столбик в файле, и выводить результат в другой файл. Рассмотрим поэтапно, как это сделать.
- Чтение чисел из файла: Нам нужно прочитать файл, в котором числа записаны построчно.
- Вычисление среднего арифметического: Для этого мы должны суммировать все числа и разделить сумму на количество чисел.
- Запись результата в другой файл: Полученный результат записываем в новый файл.
Для реализации этого плана нам потребуется следующее:
- Открыть файл для чтения.
- Прочитать все строки и преобразовать их в числа.
- Найти среднее арифметическое.
- Открыть другой файл для записи и записать результат.
Пример программы на Python:
def read_numbers_from_file(filename):
"""Чтение чисел из файла и преобразование их в список."""
numbers = []
with open(filename, 'r') as file:
for line in file:
try:
number = float(line.strip())
numbers.append(number)
except ValueError:
print(f"Некорректное значение в строке: {line.strip()}")
return numbers
def compute_average(numbers):
"""Вычисление среднего арифметического списка чисел."""
if not numbers:
return 0
return sum(numbers) / len(numbers)
def write_result_to_file(filename, result):
"""Запись результата в файл."""
with open(filename, 'w') as file:
file.write(f"Среднее арифметическое: {result}")
def main():
input_filename = 'input.txt' # Имя файла, из которого читаем числа
output_filename = 'output.txt' # Имя файла, в который записываем результат
numbers = read_numbers_from_file(input_filename)
if not numbers:
print("Не удалось прочитать числа из файла.")
return
average = compute_average(numbers)
write_result_to_file(output_filename, average)
print(f"Среднее арифметическое записано в файл {output_filename}")
if __name__ == "__main__":
main()
Пояснения к коду:
Функция read_numbers_from_file
: Открывает файл и читает числа построчно. Каждую строку пытается преобразовать в число и добавить в список. Если в строке не число, она пропускает эту строку и выводит сообщение об ошибке.
Функция compute_average
: Вычисляет среднее арифметическое, суммируя все числа и деля на их количество. Если список пустой, возвращает 0.
Функция write_result_to_file
: Открывает файл для записи и записывает результат среднего арифметического.
Функция main
: Основная функция, которая управляет процессом чтения чисел, вычисления среднего арифметического и записи результата.
Запустив эту программу, вы получите среднее арифметическое чисел из файла input.txt
и результат будет записан в файл output.txt
. Убедитесь, что файл с числами находится в той же директории, что и ваша программа, либо укажите полный путь к файлу.