diff --git a/TEMA6/module2.md b/TEMA6/module2.md new file mode 100644 index 0000000..e538f35 --- /dev/null +++ b/TEMA6/module2.md @@ -0,0 +1,38 @@ +# Тест по модулю 1 +Выполнил: Тимошенко А.А. Проверил: Козлюк Д.А. + +## Задание(Вариант 7) +1) С помощью текстового редактора создайте текстовый файл с некоторым именем, в котором будет 4 строки и на каждой строке будет по 3 числа, разделенных запятыми. + +2) Запросите у пользователя и введите имя файла с данными для обработки. Обеспечьте вывод сообщения при вводе пустой строки и повторный ввод. + +3) Введите данные из указанного файла и представьте их в виде списка. + +4) Рассчитайте по введенным данным среднее значение синусов элементов списка. + +5) Выведите рассчитанное значение на экран по шаблону: " По <число элементов в списке> элементам среднее синусов = <рассчитанное среднее>". При этом значение среднего должно быть округлено до двух знаков после точки. + +## Решение +``` +import os +import math + +file_name = input('Введите имя файла: ') +while file_name == '': + print('Ошибка! Введите имя файла.') + file_name = input('Введите имя файла: ') + +with open(file_name, 'r') as f: + data_list = [] + for line in f: + numbers = line.strip().split(',') + data_list.extend([float(x) for x in numbers]) + +sin_sum = sum(math.sin(x) for x in data_list) +average = sin_sum / len(data_list) + +print(f'Среднее синусов: {average:.2f}') + +Введите имя файла: module.txt +Среднее синусов: -0.01 +``` \ No newline at end of file