форкнуто от main/python-labs
Родитель
78043891fb
Сommit
ed70f7366a
@ -1,50 +0,0 @@
|
|||||||
import math
|
|
||||||
import pickle
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
while True:
|
|
||||||
filename = input("Введите имя файла с данными для обработки: ")
|
|
||||||
if filename.strip():
|
|
||||||
break
|
|
||||||
print("Ошибка! Имя файла не может быть пустым")
|
|
||||||
|
|
||||||
|
|
||||||
try:
|
|
||||||
with open(filename, 'r') as f:
|
|
||||||
data = []
|
|
||||||
for line in f:
|
|
||||||
numbers = [float(x) for x in line.strip().split(',')]
|
|
||||||
data.extend(numbers)
|
|
||||||
|
|
||||||
print(f"Файл {filename} не найден")
|
|
||||||
exit()
|
|
||||||
|
|
||||||
print(f"Прочитано {len(data)} элементов: {data}")
|
|
||||||
|
|
||||||
|
|
||||||
sines = [math.sin(x) for x in data]
|
|
||||||
avg_sine = sum(sines) / len(sines)
|
|
||||||
|
|
||||||
print(f"По {len(data)} элементам среднее синусов = {avg_sine:.2f}")
|
|
||||||
|
|
||||||
# Дополнительно: запись результатов в бинарный файл с использованием pickle
|
|
||||||
results = {
|
|
||||||
'filename': filename,
|
|
||||||
'data': data,
|
|
||||||
'sines': sines,
|
|
||||||
'average_sine': avg_sine,
|
|
||||||
'data_length': len(data)
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
print(f"Количество элементов: {loaded_results['data_length']}")
|
|
||||||
print(f"Среднее синусов: {loaded_results['average_sine']:.2f}")
|
|
||||||
Загрузка…
Ссылка в новой задаче