форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
3.3 KiB
3.3 KiB
Индивидуальное контрольное задание вариант 11
Ефимова Людмила, А-03-23
Запросите у пользователя и введите имя функции из библиотеки math для обработки данных.
import math
import os
import pickle
import random
func = input("Имя функции из модуля math: ")
Имя функции из модуля math: sqrt
func1 = getattr(math, func)
Создайте кортеж с 20 случайными равномерно распределенными числами из диапазона значений от 11 до 40.
data = tuple(random.uniform(11, 40) for i in range(20))
print(data)
(27.586471737691216, 21.881793540024304, 32.028176641070715, 13.113820051694203, 26.94302061378759, 37.26299607155637, 19.024847631740833, 29.51898579825734, 11.113814609881052, 24.804710396240207, 14.220720732639323, 23.141556713603123, 25.602521683956827, 29.559769008668546, 15.73803346599436, 23.54457430801797, 22.29227709666803, 33.30664014943534, 38.76321330079019, 17.242719629575422)
Напишите инструкцию создания списка, содержащего значения, равные результату вычисления заданной пользователем функции от соответствующих элементов кортежа.
result = [func1(x) for x in data]
print(result)
[5.252282526453734, 4.6777979370665745, 5.659344188249263, 3.6213008783715006, 5.190666682978939, 6.104342394685637, 4.361748231127152, 5.433137748875629, 3.3337388334842686, 4.980432751904217, 3.7710370897989485, 4.8105671925047595, 5.059893445909393, 5.436889644702065, 3.9671190385460275, 4.85227516820903, 4.72146980257928, 5.771190531375249, 6.226011026394845, 4.152435385358262]
Выведите кортеж и результирующий список в бинарный файл с любым именем.
os.chdir('L:\\III курс\\А-3-23\\Efimova lyudmila')
fp = open('test1.bin', 'wb')
pickle.dump(result, fp)
Рассчитайте среднее значение разностей элементов списка, находящихся на соседних четных и нечетных позициях. Отобразите результат на экране.
for i in range(1, len(result), 2):
diff = [result[i] - result[i-1]]
average = sum(diff)/len(diff)
print('Среднее значение разностей: ', average)
Среднее значение разностей: -0.5744845893871595
Среднее значение разностей: -2.0380433098777626
Среднее значение разностей: 0.9136757117066976
Среднее значение разностей: 1.0713895177484778
Среднее значение разностей: 1.646693918419948
Среднее значение разностей: 1.039530102705811
Среднее значение разностей: 0.3769961987926722
Среднее значение разностей: 0.8851561296630028
Среднее значение разностей: 1.0497207287959691
Среднее значение разностей: -2.073575641036583