diff --git a/TEMA7/Figure_2.png b/TEMA7/Figure_2.png new file mode 100644 index 0000000..5083660 Binary files /dev/null and b/TEMA7/Figure_2.png differ diff --git a/TEMA7/task.md b/TEMA7/task.md new file mode 100644 index 0000000..2c3fa13 --- /dev/null +++ b/TEMA7/task.md @@ -0,0 +1,358 @@ +\# Общее контрольное задание по теме 7 + +Турханов Артем, А-03-23 + +\## Задание + +• Разработайте и проверьте функцию, реализующую для момента времени t расчет выхода y(t) для устройства задержки: на вход поступает сигнал, а на выходе повторяется этот сигнал с за-держкой на заданное время Т. + + + +• Разработайте и проверьте функцию, реализующую расчет гистограммы по выборке случайной величины с каким-то распределением. Гистограмма при выводе на экран представляется в ви-де таблицы: границы интервала, число элементов выборки в интервале. Аргументы функции: выборка, число интервалов разбиения диапазона изменения случайной величины. Возвращае-мый результат функции: список с числами элементов выборки в интервалах разбиения. + + + +• Разработайте и проверьте анонимную функцию, вычисляющую значение оценки отклика Y линейной регрессии при значении переменной Х + +Y=b1+b2\*X + +и имеющую аргументы b1, b2 и X. + + + +\## Решение + + + +Работа в интерпретаторе Python: + + + +\### Задача 1 + +```py + +>>> y = \[] + +>>> x = \[1,1,1,1,1,1,1,1,1,1] + +>>> t = \[i for i in range(1,11)] + +>>> import matplotlib.pyplot as plt + +>>> def func(x,T): + +  for i in range(len(x)): + +  if (i-T) < 0: + +  y.append(0) + +  else: + +  y.append(1) + +>>> func(x,3) + +>>> y + +\[0, 0, 0, 1, 1, 1, 1, 1, 1, 1] + +>>> plt.plot(t,x) + +\[] + +>>> plt.plot(t,y) + +\[] + +>>> plt.title('Звено запаздывания') + +Text(0.5, 1.0, 'Звено запаздывания') + +>>> plt.show() + +``` + +!\[Figure\_2.png](Figure\_2.png) + +\### Задача 2 + +```py + +>>> import random as rd + +>>> y = \[rd.gauss(0,1) for i in range(100)] + + + +>>> def histogram(x,n): + +  print('Границы интервала | число элементов в интервале') + +  l = (max(x) - min(x))/ n + +  lg = min(x) + +  rg = min(x)+l + +  for j in range(n): + +  k = 0 + +  for i in x: + +  if (i > lg) and (i < rg): k+=1 + +  print('{} - {}'.format(lg, rg), ' | ', k) + +  lg += l + +  rg += l + + + +  + +>>> histogram(y, 10) + +Границы интервала | число элементов в интервале + +-2.652795195532286 - -2.1915388926771295 | 1 + +-2.1915388926771295 - -1.730282589821973 | 1 + +-1.730282589821973 - -1.2690262869668163 | 6 + +-1.2690262869668163 - -0.8077699841116596 | 11 + +-0.8077699841116596 - -0.34651368125650284 | 17 + +-0.34651368125650284 - 0.1147426215986539 | 17 + +0.1147426215986539 - 0.5759989244538106 | 18 + +0.5759989244538106 - 1.0372552273089672 | 11 + +1.0372552273089672 - 1.4985115301641239 | 11 + +1.4985115301641239 - 1.9597678330192805 | 5 + +``` + +\### Задача 3 + + + +```py + +>>> func3 = lambda x, b1,b2: b1 + b2\*x + +>>> for x in range(10): + +  func3(1,1,x) + + + +1 + +2 + +3 + +4 + +5 + +6 + +7 + +8 + +9 + +10 + +``` + +\# Общее контрольное задание по теме 7 + +Турханов Артем, А-03-23 + +\## Задание + +• Разработайте и проверьте функцию, реализующую для момента времени t расчет выхода y(t) для устройства задержки: на вход поступает сигнал, а на выходе повторяется этот сигнал с за-держкой на заданное время Т. + + + +• Разработайте и проверьте функцию, реализующую расчет гистограммы по выборке случайной величины с каким-то распределением. Гистограмма при выводе на экран представляется в ви-де таблицы: границы интервала, число элементов выборки в интервале. Аргументы функции: выборка, число интервалов разбиения диапазона изменения случайной величины. Возвращае-мый результат функции: список с числами элементов выборки в интервалах разбиения. + + + +• Разработайте и проверьте анонимную функцию, вычисляющую значение оценки отклика Y линейной регрессии при значении переменной Х + +Y=b1+b2\*X + +и имеющую аргументы b1, b2 и X. + + + +\## Решение + + + +Работа в интерпретаторе Python: + + + +\### Задача 1 + +```py + +>>> y = \[] + +>>> x = \[1,1,1,1,1,1,1,1,1,1] + +>>> t = \[i for i in range(1,11)] + +>>> import matplotlib.pyplot as plt + +>>> def func(x,T): + +  for i in range(len(x)): + +  if (i-T) < 0: + +  y.append(0) + +  else: + +  y.append(1) + +>>> func(x,3) + +>>> y + +\[0, 0, 0, 1, 1, 1, 1, 1, 1, 1] + +>>> plt.plot(t,x) + +\[] + +>>> plt.plot(t,y) + +\[] + +>>> plt.title('Звено запаздывания') + +Text(0.5, 1.0, 'Звено запаздывания') + +>>> plt.show() + +``` + +!\[Figure\_2.png](Figure\_2.png) + +\### Задача 2 + +```py + +>>> import random as rd + +>>> y = \[rd.gauss(0,1) for i in range(100)] + + + +>>> def histogram(x,n): + +  print('Границы интервала | число элементов в интервале') + +  l = (max(x) - min(x))/ n + +  lg = min(x) + +  rg = min(x)+l + +  for j in range(n): + +  k = 0 + +  for i in x: + +  if (i > lg) and (i < rg): k+=1 + +  print('{} - {}'.format(lg, rg), ' | ', k) + +  lg += l + +  rg += l + + + +  + +>>> histogram(y, 10) + +Границы интервала | число элементов в интервале + +-2.652795195532286 - -2.1915388926771295 | 1 + +-2.1915388926771295 - -1.730282589821973 | 1 + +-1.730282589821973 - -1.2690262869668163 | 6 + +-1.2690262869668163 - -0.8077699841116596 | 11 + +-0.8077699841116596 - -0.34651368125650284 | 17 + +-0.34651368125650284 - 0.1147426215986539 | 17 + +0.1147426215986539 - 0.5759989244538106 | 18 + +0.5759989244538106 - 1.0372552273089672 | 11 + +1.0372552273089672 - 1.4985115301641239 | 11 + +1.4985115301641239 - 1.9597678330192805 | 5 + +``` + +\### Задача 3 + + + +```py + +>>> func3 = lambda x, b1,b2: b1 + b2\*x + +>>> for x in range(10): + +  func3(1,1,x) + + + +1 + +2 + +3 + +4 + +5 + +6 + +7 + +8 + +9 + +10 + +``` + + +