форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
92 строки
3.0 KiB
Markdown
92 строки
3.0 KiB
Markdown
# Общее контрольное задание по Теме 7
|
|
Таболин Иван, А-01-23
|
|
# Задание
|
|
1) Разработайте и проверьте функцию, реализующую для момента времени t расчет выхода y(t) для устройства задержки: на вход поступает сигнал, а на выходе повторяется этот сигнал с задержкой на заданное время Т.
|
|
|
|
2) Разработайте и проверьте функцию, реализующую расчет гистограммы по выборке случайной величины с каким-то распределением. Гистограмма при выводе на экран представляется в виде таблицы: границы интервала, число элементов выборки в интервале. Аргументы функции: выборка, число интервалов разбиения диапазона изменения случайной величины. Возвращаемый результат функции: список с числами элементов выборки в интервалах разбиения.
|
|
|
|
3) Разработайте и проверьте анонимную функцию, вычисляющую значение оценки отклика Y ли-нейной регрессии при значении переменной Х
|
|
Y=b1+b2*X
|
|
и имеющую аргументы b1, b2 и X.
|
|
# Решение
|
|
1)
|
|
```py
|
|
def zader(x,T):
|
|
"""Функция задержки сигнала
|
|
x - исходный сигнал
|
|
T - задержка"""
|
|
y=[0]*T+x
|
|
return y
|
|
|
|
x=[10,12,14,16]
|
|
zader(x,2)
|
|
[0, 0, 10, 12, 14, 16]
|
|
```
|
|
2)
|
|
```py
|
|
def mkhist(sel,bins):
|
|
if bins <= 0:
|
|
return []
|
|
sel.sort()
|
|
shag=(max(sel)-min(sel))/bins
|
|
kol=[]
|
|
a=min(sel)
|
|
b=a+shag
|
|
for i in range(bins-1):
|
|
k=0
|
|
for n in sel:
|
|
if (n>=a) and (n<b):
|
|
k+=1
|
|
kol.append(k)
|
|
a+=shag
|
|
b+=shag
|
|
k=0
|
|
for n in sel:
|
|
if (n>=a) and (n<=b):
|
|
k+=1
|
|
kol.append(k)
|
|
return kol
|
|
|
|
spis
|
|
[1, 2, 3, 4, 5, 6, 7, 8]
|
|
mkhist(spis,3)
|
|
[3, 2, 3]
|
|
|
|
for i in range(5):
|
|
spis=[]
|
|
a=rn.randint(1, 10)
|
|
b=rn.randint(1, 10)
|
|
for i in range(100):
|
|
spis.append(rn.betavariate(a,a))
|
|
mkhist(spis,4)
|
|
|
|
|
|
[33, 19, 23, 24]
|
|
[13, 32, 35, 20]
|
|
[14, 37, 37, 12]
|
|
[18, 32, 38, 12]
|
|
[12, 39, 36, 12]
|
|
|
|
for i in range(5):
|
|
spis=[]
|
|
a=rn.randint(1, 10)
|
|
b=rn.randint(1, 10)
|
|
for i in range(100):
|
|
spis.append(rn.betavariate(a,b))
|
|
mkhist(spis,4)
|
|
|
|
|
|
[26, 42, 24, 8]
|
|
[64, 25, 10, 1]
|
|
[8, 25, 36, 30]
|
|
[18, 24, 34, 24]
|
|
[34, 41, 22, 3]
|
|
a,b
|
|
(6, 9)
|
|
```
|
|
3)
|
|
```py
|
|
anon_linregr=lambda b1,b2,x: b1+b2*x
|
|
res=anon_linregr(-3,2,6);res
|
|
9
|
|
``` |