From 03a69cd9681cf67488372f141c7362c150b6c8d7 Mon Sep 17 00:00:00 2001 From: EfremovSI Date: Sun, 30 Nov 2025 22:13:44 +0000 Subject: [PATCH] okz --- TEMA7/task.md | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 TEMA7/task.md diff --git a/TEMA7/task.md b/TEMA7/task.md new file mode 100644 index 0000000..f1c96f2 --- /dev/null +++ b/TEMA7/task.md @@ -0,0 +1,81 @@ +# Общее контрольное задание по теме 7 + +Ефремов Станислав, А-02-23 + +## Задание + +Общее контрольное задание. + • Разработайте и проверьте функцию, реализующую для момента времени t расчет выхода y(t) для устройства задержки: на вход поступает сигнал, а на выходе повторяется этот сигнал с задержкой на заданное время Т. + + • Разработайте и проверьте функцию, реализующую расчет гистограммы по выборке случайной величины с каким-то распределением. Гистограмма при выводе на экран представляется в виде таблицы: границы интервала, число элементов выборки в интервале. Аргументы функции: выборка, число интервалов разбиения диапазона изменения случайной величины. Возвращаемый результат функции: список с числами элементов выборки в интервалах разбиения. + + • Разработайте и проверьте анонимную функцию, вычисляющую значение оценки отклика Y линейной регрессии при значении переменной Х Y=b1+b2*X и имеющую аргументы b1, b2 и X. + +## Решение + +def signal(INPUT, zaderzhka, output221, input111): + if len(input111) <= zaderzhka: + return 0 + else: + return input111[-zaderzhka - 1] + +# Проверка работы функции +delay = 3 +output1337 = [] +INPUT = [1, 2, 3, 4, 5, 6, 7] +input111 = [] + +for x in INPUT: + input111.append(x) + y = signal(x, delay, output1337, input111) + output1337.append(y) + + +print("Входной сигнал:", input111) +Входной сигнал: [1, 2, 3, 4, 5, 6, 7] +print("Выходной сигнал (задержка 3):", output1337) +Выходной сигнал (задержка 3): [0, 0, 0, 1, 2, 3, 4] + +# 2 +def raschet_giostogrammy(viborka, kol_int): + minn = min(viborka) + maxx = max(viborka) + shirina_intervala = (maxx-minn) / kol_int #shирина одного интервала + + w = [0] * kol_int + + for znachenie in viborka: + num_int = int((znachenie - minn) / shirina_intervala) # номер интервала + if num_int == kol_int: + num_int = kol_int - 1 + w[num_int] += 1 + + print("Гистограмма:") + for i in range(kol_int): + start = minn + i * shirina_intervala + end = minn + (i + 1) * shirina_intervala + print(start, " ", end, " ", w[i], "\n") + + return w + + +import random + +rand = [random.gauss(0, 1) for _ in range(100)] +kol_int = 5 +res = raschet_giostogrammy(rand, kol_int) + +Гистограмма: +-2.7442822482655704 -1.7256465039133895 4 + +-1.7256465039133895 -0.7070107595612085 23 + +-0.7070107595612085 0.31162498479097245 31 + +0.31162498479097245 1.3302607291431534 33 + +1.3302607291431534 2.348896473495335 9 + +# 3 +func = lambda b1, b2, X: b1 + b2 * X +print(func (2, 3, 5)) \ No newline at end of file