Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

2.9 KiB

Общее контрольное задание по теме 7

Бережков Дмитрий А-01-23

Задание:

1.Разработайте и проверьте функцию, реализующую для момента времени t расчет выхода y(t) для устройства задержки: на вход поступает сигнал, а на выходе повторяется этот сигнал с задержкой на заданное время Т.

2.Разработайте и проверьте функцию, реализующую расчет гистограммы по выборке случайной величины с каким-то распределением. Гистограмма при выводе на экран представляется в виде таблицы: границы интервала, число элементов выборки в интервале. Аргументы функции: выборка, число интервалов разбиения диапазона изменения случайной величины. Возвращаемый результат функции: список с числами элементов выборки в интервалах разбиения.

3.Разработайте и проверьте анонимную функцию, вычисляющую значение оценки отклика Y линейной регрессии при значении переменной Х

Y=b1+b2*X

и имеющую аргументы b1, b2 и X.

Решение:


>>> 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]


>>> 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


anonim_f = lambda b1, b2, X: b1 + b2 * X

print(anonim_f(3,8,2))

19