форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
65 строки
2.7 KiB
Markdown
65 строки
2.7 KiB
Markdown
# Выполнение модульного задания
|
|
Симанков Богдан, А-02-23
|
|
|
|
# Задание
|
|
M2_23
|
|
1) Запросите у пользователя и введите имя функции из библиотеки math для обработки данных.
|
|
|
|
2) Создайте кортеж с 20 случайными равномерно распределенными числами из диапазона значений от 11 до 40.
|
|
|
|
3) Напишите инструкцию создания списка, содержащего значения, равные результату вычисления заданной пользователем функции от соответствующих элементов кортежа.
|
|
|
|
4) Выведите кортеж и результирующий список в бинарный файл с любым именем.
|
|
|
|
5) Рассчитайте среднее значение разностей элементов списка, находящихся на соседних четных и нечетных позициях. Отобразите результат на экране.
|
|
|
|
# Выполнение
|
|
## 1.
|
|
```py
|
|
>>> import math
|
|
>>> function = input("Введите имя функции из библиотеки math: ")
|
|
Введите имя функции из библиотеки math: sqrt
|
|
>>> if function in dir(math):
|
|
... print("Функция найдена")
|
|
... else: print("Функция не найдена")
|
|
...
|
|
Функция найдена
|
|
```
|
|
|
|
## 2.
|
|
```py
|
|
>>> import random
|
|
>>> tpl=tuple(random.randint(11, 40) for x in range(20))
|
|
>>> tpl
|
|
(20, 24, 35, 28, 20, 19, 23, 25, 26, 28, 13, 18, 22, 21, 29, 27, 25, 27, 29, 25)
|
|
```
|
|
|
|
## 3.
|
|
```py
|
|
>>> result = [eval('math.' + function + '(x)') for x in tpl]
|
|
>>> result
|
|
[4.47213595499958, 4.898979485566356, 5.916079783099616, 5.291502622129181, 4.47213595499958, 4.358898943540674, 4.795831523312719, 5.0, 5.0990195135927845, 5.291502622129181, 3.605551275463989, 4.242640687119285, 4.69041575982343, 4.58257569495584, 5.385164807134504, 5.196152422706632, 5.0, 5.196152422706632, 5.385164807134504, 5.0]
|
|
```
|
|
|
|
## 4.
|
|
```py
|
|
>>> import os
|
|
>>> os.chdir('C:\\Users\\danii\\Desktop\\FilippovDY\\python-labs\\TEMA6')
|
|
>>> import pickle
|
|
>>> fp=open('Binar.bin', 'wb')
|
|
>>> pickle.dump(tpl, fp)
|
|
>>> pickle.dump(result, fp)
|
|
>>> fp.close()
|
|
```
|
|
|
|
## 5.
|
|
```py
|
|
>>> spis = [result[i] - result[i+1] for i in range(0, len(result), 2)]
|
|
>>> spis
|
|
[-0.42684353056677615, 0.6245771609704347, 0.11323701145890563, -0.2041684766872809, -0.19248310853639694, -0.6370894116552956, 0.1078400648675899, 0.18901238442787172, -0.19615242270663202, 0.38516480713450374]
|
|
>>> import statistics
|
|
>>> print(statistics.mean(spis))
|
|
-0.023690552129307596
|
|
```
|
|
|