ответвлено от main/python-labs
task
Этот коммит содержится в:
60
TEMA7/task.py
Обычный файл
60
TEMA7/task.py
Обычный файл
@@ -0,0 +1,60 @@
|
||||
def signal_delay(current_input, delay_time, output_history, input_history):
|
||||
"""
|
||||
Расчет выходного сигнала устройства задержки
|
||||
current_input - текущее значение входного сигнала
|
||||
delay_time - время задержки
|
||||
output_history - история выходных значений
|
||||
input_history - история входных значений
|
||||
"""
|
||||
if len(input_history) < delay_time:
|
||||
return 0
|
||||
else:
|
||||
return input_history[-delay_time]
|
||||
|
||||
# Проверка работы функции
|
||||
delay = 3
|
||||
output_signal = []
|
||||
input_signal = [1, 2, 3, 4, 5, 6, 7]
|
||||
input_history = []
|
||||
|
||||
for x in input_signal:
|
||||
input_history.append(x)
|
||||
y = signal_delay(x, delay, output_signal, input_history)
|
||||
output_signal.append(y)
|
||||
|
||||
print("Входной сигнал:", input_signal)
|
||||
print("Выходной сигнал (задержка 3):", output_signal)
|
||||
|
||||
|
||||
# 2
|
||||
def raschet_giostogrammy(viborka, kol_int):
|
||||
minn = min(viborka)
|
||||
maxx = max(viborka)
|
||||
shirina_intervala = (minn - maxx) / kol_int
|
||||
|
||||
w = [0] * kol_int
|
||||
|
||||
for znachenie in viborka:
|
||||
num_int = int((znachenie - maxx) / shirina_intervala)
|
||||
if num_int == kol_int:
|
||||
num_int = kol_int - 1
|
||||
w[num_int] += 1
|
||||
|
||||
print("Гистограмма:")
|
||||
for i in range(kol_int):
|
||||
start = maxx + i * shirina_intervala
|
||||
end = maxx + (i + 1) * shirina_intervala
|
||||
print(f"[{start:.2f}, {end:.2f}]: {w[i]}")
|
||||
|
||||
return w
|
||||
|
||||
|
||||
import random
|
||||
|
||||
rand = [random.gauss(0, 1) for _ in range(100)]
|
||||
kol_int = 5
|
||||
res = raschet_giostogrammy(rand, kol_int)
|
||||
|
||||
# 3
|
||||
anonim_func = lambda b1, b2, X: b1 + b2 * X
|
||||
print(anonim_func (2, 3, 5))
|
||||
Ссылка в новой задаче
Block a user