форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
119 строки
2.9 KiB
Markdown
119 строки
2.9 KiB
Markdown
# Общее контрольное задание по теме 7
|
|
|
|
Бережков Дмитрий А-01-23
|
|
|
|
## Задание:
|
|
|
|
1.Разработайте и проверьте функцию, реализующую для момента времени t расчет выхода y(t) для устройства задержки: на вход поступает сигнал, а на выходе повторяется этот сигнал с задержкой на заданное время Т.
|
|
|
|
|
|
|
|
2.Разработайте и проверьте функцию, реализующую расчет гистограммы по выборке случайной величины с каким-то распределением. Гистограмма при выводе на экран представляется в виде таблицы: границы интервала, число элементов выборки в интервале. Аргументы функции: выборка, число интервалов разбиения диапазона изменения случайной величины. Возвращаемый результат функции: список с числами элементов выборки в интервалах разбиения.
|
|
|
|
|
|
|
|
3.Разработайте и проверьте анонимную функцию, вычисляющую значение оценки отклика Y линейной регрессии при значении переменной Х
|
|
|
|
Y=b1+b2*X
|
|
|
|
и имеющую аргументы b1, b2 и X.
|
|
|
|
|
|
|
|
## Решение:
|
|
|
|
1.
|
|
|
|
```py
|
|
|
|
>>> def crDelay(x,T):
|
|
|
|
... """Функция для реализации задержки сигнала в определенный момент времени x - исходный сигнал T - заданная задержка"""
|
|
|
|
... return[0] *T+x
|
|
|
|
...
|
|
|
|
>>> x=[1,2,3,4]
|
|
|
|
>>> y=crDelay(x,4)
|
|
|
|
>>> print(y)
|
|
|
|
[0, 0, 0, 0, 1, 2, 3, 4]
|
|
|
|
```
|
|
|
|
2.
|
|
|
|
```py
|
|
|
|
>>> def raschet_gistogrammy(viborka,kol_int):
|
|
|
|
... Min=min(viborka)
|
|
|
|
... Max=max(viborka)
|
|
|
|
... shirina_int=(Max-Min)/kol_int
|
|
|
|
... x=[0]*kol_int
|
|
|
|
... for znach in viborka:
|
|
|
|
... num_int=int((znach-Max)/shirina_int)
|
|
|
|
... if num_int == kol_int:
|
|
|
|
... num_int = kol_int - 1
|
|
|
|
... x[num_int] += 1
|
|
|
|
... print("Гистограмма:")
|
|
|
|
... for i in range(kol_int):
|
|
|
|
... start = Max + i * shirina_int
|
|
|
|
... end = Max + (i + 1) * shirina_int
|
|
|
|
... print(f"[{start:.2f}, {end:.2f}]: {x[i]}")
|
|
|
|
... return x
|
|
|
|
...
|
|
|
|
>>> import random
|
|
|
|
>>> rand=[random.gauss(0, 1) for _ in range(100)]
|
|
|
|
>>> kol_int=5
|
|
|
|
res = raschet_gistogrammy(rand, kol_int)
|
|
|
|
Гистограмма:
|
|
|
|
[2.31, 3.30]: 8
|
|
|
|
[3.30, 4.30]: 5
|
|
|
|
[4.30, 5.30]: 21
|
|
|
|
[5.30, 6.29]: 44
|
|
|
|
[6.29, 7.29]: 22
|
|
|
|
```
|
|
|
|
3.
|
|
|
|
```py
|
|
|
|
anonim_f = lambda b1, b2, X: b1 + b2 * X
|
|
|
|
print(anonim_f(3,8,2))
|
|
|
|
19
|
|
|
|
```
|
|
|