From dcd593e27b2916c05ce8cb811395d448bc55a9a5 Mon Sep 17 00:00:00 2001 From: EfremovSI Date: Sun, 30 Nov 2025 22:25:56 +0000 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8=D0=BB(?= =?UTF-8?q?=D0=B0)=20=D0=BD=D0=B0=20'TEMA7/report.md'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TEMA7/report.md | 39 ++++++++++++++++++--------------------- 1 file changed, 18 insertions(+), 21 deletions(-) diff --git a/TEMA7/report.md b/TEMA7/report.md index b2a15b9..b7c0424 100644 --- a/TEMA7/report.md +++ b/TEMA7/report.md @@ -300,7 +300,7 @@ def func5(diap,shag): """ Итератор, возвращающий значения из диапазона от 1 до diap с шагом shag""" for j in range(1,diap+1,shag): - yield j + yield j #делает одну итерацию for mm in func5(7,3): print(mm) @@ -309,7 +309,7 @@ def func5(diap,shag): 7 alp=func5(7,3) -print(alp.__next__()) +print(alp.__next__()) 1 print(alp.__next__()) 4 @@ -319,7 +319,7 @@ print(alp.__next__()) Traceback (most recent call last): File "", line 1, in print(alp.__next__()) -StopIteration +StopIteration #отработал условие и устал ``` ## 6. Локализация объектов в функциях @@ -329,14 +329,14 @@ glb=10 def func7(arg): loc1=15 glb=8 - return loc1*arg + return loc1*arg #arg принимает значения глоб. параметра глб, поэтому на 8 не умножается res=func7(glb);res 150 def func8(arg): loc1=15 - print(glb) + print(glb) #в момент запуска glb считается локальной переменной в функции func8, однако в момент печати не была локализована glb=8 return loc1*arg @@ -351,13 +351,13 @@ UnboundLocalError: cannot access local variable 'glb' where it is not associated glb=11 def func7(arg): loc1=15 - global glb - print(glb) - glb=8 + global glb + print(glb) #объявлена как глобальная и выведена до присваивания ей нового значения 8, поэтому 11 + glb=8 return loc1*arg res=func7(glb);res 11 -165 +165 #при следующей попытке запуска функции умножит loc1 на 8, а не на 11 ``` **6.2. Выявление локализации объекта с помощью функций locals() и globals() из builtins** @@ -401,7 +401,7 @@ def func9(arg2,arg3): kk=func9(10,1) glob_func9_1: dict_keys(['__name__', '__doc__', '__package__', '__loader__', '__spec__', '__annotations__', '__builtins__', 'anfun1', 'math', 'anfun2', 'anfun3', 'func5', 'mm', 'alp', 'glb', 'func7', 'res', 'func8', 'hh', 'func9']) locl_func9_1: dict_keys(['arg1', 'loc1', 'glb1']) -loc_func9: dict_keys(['arg2', 'arg3', 'func9_1', 'loc1', 'glb']) +loc_func9: dict_keys(['arg2', 'arg3', 'func9_1', 'loc1', 'glb']) #фукнция func9 сработала позже, следовательно арг2 арг3 появились позже glob_func9: dict_keys(['__name__', '__doc__', '__package__', '__loader__', '__spec__', '__annotations__', '__builtins__', 'anfun1', 'math', 'anfun2', 'anfun3', 'func5', 'mm', 'alp', 'glb', 'func7', 'res', 'func8', 'hh', 'func9']) ``` @@ -409,7 +409,7 @@ glob_func9: dict_keys(['__name__', '__doc__', '__package__', '__loader__', '__sp ```python import math -# Ввод параметров + znach = input('k1,T,k2,Xm,A,F,N=').split(',') k1 = float(znach[0]) T = float(znach[1]) @@ -419,17 +419,15 @@ A = float(znach[4]) F = float(znach[5]) N = int(znach[6]) -print(f"Параметры системы: k1={k1}, T={T}, k2={k2}, Xm={Xm}") -print(f"Входной сигнал: A={A}, F={F}, N={N}") -# Создание входного сигнала (синусоида) + vhod = [] for i in range(N): vhod.append(A * math.sin((2 * i * math.pi) / F)) -print("Входной сигнал:", vhod[:10]) # Покажем первые 10 значений +print("Входной сигнал:", vhod) + -# Функции компонентов системы def realdvig(xtt, kk1, TT, yti1, ytin1): """Модель реального двигателя""" yp = kk1 * xtt # усилитель @@ -453,12 +451,11 @@ def nechus(xtt, gran): ytt = xtt + gran return ytt -# Моделирование системы -yi1 = 0 # состояние интегратора двигателя -yin1 = 0 # состояние инерционного звена -yi2 = 0 # состояние интегратора тахогенератора -vyhod = [] # выход системы +yi1 = 0 +yin1 = 0 +yi2 = 0 +vyhod = [] for xt in vhod: xt1 = xt - yi2 # отрицательная обратная связь