форкнуто от main/python-labs
Родитель
70a2a2e057
Сommit
54ece20e7c
@ -1,38 +1,38 @@
|
|||||||
# Тест по модулю 1
|
# Тест по модулю 2
|
||||||
Выполнил: Тимошенко А.А. Проверил: Козлюк Д.А.
|
Выполнил: Тимошенко А.А. Проверил: Козлюк Д.А.
|
||||||
|
|
||||||
## Задание(Вариант 7)
|
## Задание(Вариант 7)
|
||||||
1) С помощью текстового редактора создайте текстовый файл с некоторым именем, в котором будет 4 строки и на каждой строке будет по 3 числа, разделенных запятыми.
|
1) С помощью текстового редактора создайте текстовый файл с некоторым именем, в котором будет 4 строки и на каждой строке будет по 3 числа, разделенных запятыми.
|
||||||
|
|
||||||
2) Запросите у пользователя и введите имя файла с данными для обработки. Обеспечьте вывод сообщения при вводе пустой строки и повторный ввод.
|
2) Запросите у пользователя и введите имя файла с данными для обработки. Обеспечьте вывод сообщения при вводе пустой строки и повторный ввод.
|
||||||
|
|
||||||
3) Введите данные из указанного файла и представьте их в виде списка.
|
3) Введите данные из указанного файла и представьте их в виде списка.
|
||||||
|
|
||||||
4) Рассчитайте по введенным данным среднее значение синусов элементов списка.
|
4) Рассчитайте по введенным данным среднее значение синусов элементов списка.
|
||||||
|
|
||||||
5) Выведите рассчитанное значение на экран по шаблону: " По <число элементов в списке> элементам среднее синусов = <рассчитанное среднее>". При этом значение среднего должно быть округлено до двух знаков после точки.
|
5) Выведите рассчитанное значение на экран по шаблону: " По <число элементов в списке> элементам среднее синусов = <рассчитанное среднее>". При этом значение среднего должно быть округлено до двух знаков после точки.
|
||||||
|
|
||||||
## Решение
|
## Решение
|
||||||
```
|
```
|
||||||
import os
|
import os
|
||||||
import math
|
import math
|
||||||
|
|
||||||
file_name = input('Введите имя файла: ')
|
file_name = input('Введите имя файла: ')
|
||||||
while file_name == '':
|
while file_name == '':
|
||||||
print('Ошибка! Введите имя файла.')
|
print('Ошибка! Введите имя файла.')
|
||||||
file_name = input('Введите имя файла: ')
|
file_name = input('Введите имя файла: ')
|
||||||
|
|
||||||
with open(file_name, 'r') as f:
|
with open(file_name, 'r') as f:
|
||||||
data_list = []
|
data_list = []
|
||||||
for line in f:
|
for line in f:
|
||||||
numbers = line.strip().split(',')
|
numbers = line.strip().split(',')
|
||||||
data_list.extend([float(x) for x in numbers])
|
data_list.extend([float(x) for x in numbers])
|
||||||
|
|
||||||
sin_sum = sum(math.sin(x) for x in data_list)
|
sin_sum = sum(math.sin(x) for x in data_list)
|
||||||
average = sin_sum / len(data_list)
|
average = sin_sum / len(data_list)
|
||||||
|
|
||||||
print(f'Среднее синусов: {average:.2f}')
|
print(f'Среднее синусов: {average:.2f}')
|
||||||
|
|
||||||
Введите имя файла: module.txt
|
Введите имя файла: module.txt
|
||||||
Среднее синусов: -0.01
|
Среднее синусов: -0.01
|
||||||
```
|
```
|
||||||
Загрузка…
Ссылка в новой задаче