Добавлены отчёты, задания и тесты

main
Solovyova_ED 4 дней назад
Родитель 694a8609e6
Сommit ed5322825d

@ -0,0 +1,357 @@
# Тест по Тест по Теме 7
Соловьёва Екатерина, А-01-23
## Задание
Разработайте функцию с 3 аргументами: x, А и В, реализующую преобразование входного сигнала x по формуле:
y=B, если x>A;
y= 2B*x/A-B*x^2/A^2 , если 0≤ x ≤ А;
y= 2B * x/A +B*x^2 /A^2 , если -A≤ x <0;
y=-B, если x< -A.
Создайте список со 100 значениями входного сигнала х – случайными, равномерно распределенными числами в диапазоне значений от -5 до 12. Для элементов списка с помощью функции рассчитайте список со значениями выходного сигнала y при трех разных парах значений А и В. Записать результаты в текстовый файл в виде двух столбцов: хi, yi.
## Решение
```py
import random
def func(x, A, B):
if x > A:
return B
elif 0 <= x <= A:
return (2 * B * x / A) - (B * x**2 / A**2)
elif -A <= x < 0:
return (2 * B * x / A) + (B * x**2 / A**2)
else:
return -B
x_values = [random.uniform(-5, 12) for _ in range(100)]
params = [(5, 7), (3, 4), (8, 12)]
with open('test.txt', 'w', encoding='utf-8') as f:
for A, B in params:
f.write(f'\nПараметры: A = {A}, B = {B}\n')
f.write('xi yi\n')
f.write('----------------\n')
for x in x_values:
y = func(x, A, B)
f.write(f'{x:10.5f} {y:10.5f}\n')
```
## Вывод
```txt
Параметры: A = 5, B = 7
xi yi
----------------
5.86982 7.00000
10.60889 7.00000
4.06461 6.75501
5.29288 7.00000
10.15479 7.00000
3.86484 6.63920
0.47680 1.27140
-1.27013 -3.10467
-1.24129 -3.04419
-1.03170 -2.59073
-1.50325 -3.57637
6.95909 7.00000
1.03174 2.59082
1.91432 4.33400
6.86539 7.00000
10.89394 7.00000
3.61242 6.46090
7.85303 7.00000
-4.35477 -6.88343
-1.10787 -2.75836
8.88241 7.00000
-3.41076 -6.29281
2.60220 5.39016
5.28102 7.00000
-4.78747 -6.98735
-1.71943 -3.98660
6.26656 7.00000
10.65755 7.00000
-2.27517 -4.92108
9.47499 7.00000
-0.31369 -0.85077
7.62057 7.00000
6.96683 7.00000
8.14176 7.00000
11.97237 7.00000
10.89297 7.00000
2.48892 5.23446
6.69740 7.00000
-4.11167 -6.77904
4.94378 6.99912
-4.48180 -6.92481
7.27224 7.00000
-0.83065 -2.13263
1.01590 2.55555
6.91175 7.00000
10.08303 7.00000
3.60696 6.45664
0.72761 1.88906
2.82893 5.68021
7.15816 7.00000
6.46978 7.00000
3.33574 6.22447
7.04571 7.00000
2.60493 5.39382
6.93663 7.00000
2.92556 5.79507
10.45675 7.00000
9.22932 7.00000
7.40673 7.00000
1.40836 3.38804
11.95106 7.00000
-3.11935 -6.00968
6.61976 7.00000
-1.59679 -3.75709
2.39406 5.09855
8.98971 7.00000
2.01005 4.49685
-1.42513 -3.42169
1.91515 4.33544
4.75207 6.98279
-3.22786 -6.12067
2.18031 4.77382
6.95316 7.00000
-3.92956 -6.67917
-1.97791 -4.44276
7.95253 7.00000
9.86943 7.00000
-3.45314 -6.33002
2.13008 4.69379
-1.21212 -2.98255
8.50756 7.00000
1.85195 4.22513
3.75620 6.56683
4.47003 6.92136
11.09999 7.00000
-1.70654 -3.96287
11.73001 7.00000
1.90609 4.31977
-2.36144 -5.05063
0.04914 0.13690
3.82695 6.61471
6.12422 7.00000
2.32662 4.99884
9.35261 7.00000
8.06504 7.00000
2.97498 5.85181
4.38768 6.89502
4.20153 6.82148
4.19242 6.81739
-4.63619 -6.96294
Параметры: A = 3, B = 4
xi yi
----------------
5.86982 4.00000
10.60889 4.00000
4.06461 4.00000
5.29288 4.00000
10.15479 4.00000
3.86484 4.00000
0.47680 1.17044
-1.27013 -2.67003
-1.24129 -2.62531
-1.03170 -2.27813
-1.50325 -3.00433
6.95909 4.00000
1.03174 2.27821
1.91432 3.47613
6.86539 4.00000
10.89394 4.00000
3.61242 4.00000
7.85303 4.00000
-4.35477 -4.00000
-1.10787 -2.40881
8.88241 4.00000
-3.41076 -4.00000
2.60220 3.92967
5.28102 4.00000
-4.78747 -4.00000
-1.71943 -3.27117
6.26656 4.00000
10.65755 4.00000
-2.27517 -3.76650
9.47499 4.00000
-0.31369 -0.79276
7.62057 4.00000
6.96683 4.00000
8.14176 4.00000
11.97237 4.00000
10.89297 4.00000
2.48892 3.88391
6.69740 4.00000
-4.11167 -4.00000
4.94378 4.00000
-4.48180 -4.00000
7.27224 4.00000
-0.83065 -1.90841
1.01590 2.25038
6.91175 4.00000
10.08303 4.00000
3.60696 4.00000
0.72761 1.70499
2.82893 3.98699
7.15816 4.00000
6.46978 4.00000
3.33574 4.00000
7.04571 4.00000
2.60493 3.93063
6.93663 4.00000
2.92556 3.99754
10.45675 4.00000
9.22932 4.00000
7.40673 4.00000
1.40836 2.87409
11.95106 4.00000
-3.11935 -4.00000
6.61976 4.00000
-1.59679 -3.12489
2.39406 3.83682
8.98971 4.00000
2.01005 3.56444
-1.42513 -2.89769
1.91515 3.47693
4.75207 4.00000
-3.22786 -4.00000
2.18031 3.70138
6.95316 4.00000
-3.92956 -4.00000
-1.97791 -3.53571
7.95253 4.00000
9.86943 4.00000
-3.45314 -4.00000
2.13008 3.66366
-1.21212 -2.57933
8.50756 4.00000
1.85195 3.41421
3.75620 4.00000
4.47003 4.00000
11.09999 4.00000
-1.70654 -3.25642
11.73001 4.00000
1.90609 3.46816
-2.36144 -3.81877
0.04914 0.12996
3.82695 4.00000
6.12422 4.00000
2.32662 3.79847
9.35261 4.00000
8.06504 4.00000
2.97498 3.99972
4.38768 4.00000
4.20153 4.00000
4.19242 4.00000
-4.63619 -4.00000
Параметры: A = 8, B = 12
xi yi
----------------
5.86982 11.14919
10.60889 12.00000
4.06461 9.09613
5.29288 10.62591
10.15479 12.00000
3.86484 8.79384
0.47680 1.38779
-1.27013 -3.50792
-1.24129 -3.43498
-1.03170 -2.89553
-1.50325 -4.08605
6.95909 11.79685
1.03174 2.89564
1.91432 5.05583
6.86539 11.75862
10.89394 12.00000
3.61242 8.39047
7.85303 11.99595
-4.35477 -9.50856
-1.10787 -3.09347
8.88241 12.00000
-3.41076 -8.05104
2.60220 6.53696
5.28102 10.61384
-4.78747 -10.06493
-1.71943 -4.60396
6.26656 11.43660
10.65755 12.00000
-2.27517 -5.85493
9.47499 12.00000
-0.31369 -0.92261
7.62057 11.97301
6.96683 11.79985
8.14176 12.00000
11.97237 12.00000
10.89297 12.00000
2.48892 6.30526
6.69740 11.68186
-4.11167 -9.16516
4.94378 10.24866
-4.48180 -9.67917
7.27224 11.90069
-0.83065 -2.36258
1.01590 2.85420
6.91175 11.77795
10.08303 12.00000
3.60696 8.38148
0.72761 2.08355
2.82893 6.98626
7.15816 11.86712
6.46978 11.56096
3.33574 7.92088
7.04571 11.82925
2.60493 6.54247
6.93663 11.78798
2.92556 7.17188
10.45675 12.00000
9.22932 12.00000
7.40673 11.93401
1.40836 3.85319
11.95106 12.00000
-3.11935 -7.53361
6.61976 11.64280
-1.59679 -4.31230
2.39406 6.10753
8.98971 12.00000
2.01005 5.27259
-1.42513 -3.89459
1.91515 5.05774
4.75207 10.02206
-3.22786 -7.73000
2.18031 5.64961
6.95316 11.79452
-3.92956 -8.89341
-1.97791 -5.20021
7.95253 11.99958
9.86943 12.00000
-3.45314 -8.12363
2.13008 5.53950
-1.21212 -3.36088
8.50756 12.00000
1.85195 4.91277
3.75620 8.62315
4.47003 9.66362
11.09999 12.00000
-1.70654 -4.57356
11.73001 12.00000
1.90609 5.03706
-2.36144 -6.03873
0.04914 0.14695
3.82695 8.73482
6.12422 11.34027
2.32662 5.96488
9.35261 12.00000
8.06504 12.00000
2.97498 7.26547
4.38768 9.55333
4.20153 9.29468
4.19242 9.28168
-4.63619 -9.87840
```

@ -0,0 +1,312 @@
Параметры: A = 5, B = 7
xi yi
----------------
5.86982 7.00000
10.60889 7.00000
4.06461 6.75501
5.29288 7.00000
10.15479 7.00000
3.86484 6.63920
0.47680 1.27140
-1.27013 -3.10467
-1.24129 -3.04419
-1.03170 -2.59073
-1.50325 -3.57637
6.95909 7.00000
1.03174 2.59082
1.91432 4.33400
6.86539 7.00000
10.89394 7.00000
3.61242 6.46090
7.85303 7.00000
-4.35477 -6.88343
-1.10787 -2.75836
8.88241 7.00000
-3.41076 -6.29281
2.60220 5.39016
5.28102 7.00000
-4.78747 -6.98735
-1.71943 -3.98660
6.26656 7.00000
10.65755 7.00000
-2.27517 -4.92108
9.47499 7.00000
-0.31369 -0.85077
7.62057 7.00000
6.96683 7.00000
8.14176 7.00000
11.97237 7.00000
10.89297 7.00000
2.48892 5.23446
6.69740 7.00000
-4.11167 -6.77904
4.94378 6.99912
-4.48180 -6.92481
7.27224 7.00000
-0.83065 -2.13263
1.01590 2.55555
6.91175 7.00000
10.08303 7.00000
3.60696 6.45664
0.72761 1.88906
2.82893 5.68021
7.15816 7.00000
6.46978 7.00000
3.33574 6.22447
7.04571 7.00000
2.60493 5.39382
6.93663 7.00000
2.92556 5.79507
10.45675 7.00000
9.22932 7.00000
7.40673 7.00000
1.40836 3.38804
11.95106 7.00000
-3.11935 -6.00968
6.61976 7.00000
-1.59679 -3.75709
2.39406 5.09855
8.98971 7.00000
2.01005 4.49685
-1.42513 -3.42169
1.91515 4.33544
4.75207 6.98279
-3.22786 -6.12067
2.18031 4.77382
6.95316 7.00000
-3.92956 -6.67917
-1.97791 -4.44276
7.95253 7.00000
9.86943 7.00000
-3.45314 -6.33002
2.13008 4.69379
-1.21212 -2.98255
8.50756 7.00000
1.85195 4.22513
3.75620 6.56683
4.47003 6.92136
11.09999 7.00000
-1.70654 -3.96287
11.73001 7.00000
1.90609 4.31977
-2.36144 -5.05063
0.04914 0.13690
3.82695 6.61471
6.12422 7.00000
2.32662 4.99884
9.35261 7.00000
8.06504 7.00000
2.97498 5.85181
4.38768 6.89502
4.20153 6.82148
4.19242 6.81739
-4.63619 -6.96294
Параметры: A = 3, B = 4
xi yi
----------------
5.86982 4.00000
10.60889 4.00000
4.06461 4.00000
5.29288 4.00000
10.15479 4.00000
3.86484 4.00000
0.47680 1.17044
-1.27013 -2.67003
-1.24129 -2.62531
-1.03170 -2.27813
-1.50325 -3.00433
6.95909 4.00000
1.03174 2.27821
1.91432 3.47613
6.86539 4.00000
10.89394 4.00000
3.61242 4.00000
7.85303 4.00000
-4.35477 -4.00000
-1.10787 -2.40881
8.88241 4.00000
-3.41076 -4.00000
2.60220 3.92967
5.28102 4.00000
-4.78747 -4.00000
-1.71943 -3.27117
6.26656 4.00000
10.65755 4.00000
-2.27517 -3.76650
9.47499 4.00000
-0.31369 -0.79276
7.62057 4.00000
6.96683 4.00000
8.14176 4.00000
11.97237 4.00000
10.89297 4.00000
2.48892 3.88391
6.69740 4.00000
-4.11167 -4.00000
4.94378 4.00000
-4.48180 -4.00000
7.27224 4.00000
-0.83065 -1.90841
1.01590 2.25038
6.91175 4.00000
10.08303 4.00000
3.60696 4.00000
0.72761 1.70499
2.82893 3.98699
7.15816 4.00000
6.46978 4.00000
3.33574 4.00000
7.04571 4.00000
2.60493 3.93063
6.93663 4.00000
2.92556 3.99754
10.45675 4.00000
9.22932 4.00000
7.40673 4.00000
1.40836 2.87409
11.95106 4.00000
-3.11935 -4.00000
6.61976 4.00000
-1.59679 -3.12489
2.39406 3.83682
8.98971 4.00000
2.01005 3.56444
-1.42513 -2.89769
1.91515 3.47693
4.75207 4.00000
-3.22786 -4.00000
2.18031 3.70138
6.95316 4.00000
-3.92956 -4.00000
-1.97791 -3.53571
7.95253 4.00000
9.86943 4.00000
-3.45314 -4.00000
2.13008 3.66366
-1.21212 -2.57933
8.50756 4.00000
1.85195 3.41421
3.75620 4.00000
4.47003 4.00000
11.09999 4.00000
-1.70654 -3.25642
11.73001 4.00000
1.90609 3.46816
-2.36144 -3.81877
0.04914 0.12996
3.82695 4.00000
6.12422 4.00000
2.32662 3.79847
9.35261 4.00000
8.06504 4.00000
2.97498 3.99972
4.38768 4.00000
4.20153 4.00000
4.19242 4.00000
-4.63619 -4.00000
Параметры: A = 8, B = 12
xi yi
----------------
5.86982 11.14919
10.60889 12.00000
4.06461 9.09613
5.29288 10.62591
10.15479 12.00000
3.86484 8.79384
0.47680 1.38779
-1.27013 -3.50792
-1.24129 -3.43498
-1.03170 -2.89553
-1.50325 -4.08605
6.95909 11.79685
1.03174 2.89564
1.91432 5.05583
6.86539 11.75862
10.89394 12.00000
3.61242 8.39047
7.85303 11.99595
-4.35477 -9.50856
-1.10787 -3.09347
8.88241 12.00000
-3.41076 -8.05104
2.60220 6.53696
5.28102 10.61384
-4.78747 -10.06493
-1.71943 -4.60396
6.26656 11.43660
10.65755 12.00000
-2.27517 -5.85493
9.47499 12.00000
-0.31369 -0.92261
7.62057 11.97301
6.96683 11.79985
8.14176 12.00000
11.97237 12.00000
10.89297 12.00000
2.48892 6.30526
6.69740 11.68186
-4.11167 -9.16516
4.94378 10.24866
-4.48180 -9.67917
7.27224 11.90069
-0.83065 -2.36258
1.01590 2.85420
6.91175 11.77795
10.08303 12.00000
3.60696 8.38148
0.72761 2.08355
2.82893 6.98626
7.15816 11.86712
6.46978 11.56096
3.33574 7.92088
7.04571 11.82925
2.60493 6.54247
6.93663 11.78798
2.92556 7.17188
10.45675 12.00000
9.22932 12.00000
7.40673 11.93401
1.40836 3.85319
11.95106 12.00000
-3.11935 -7.53361
6.61976 11.64280
-1.59679 -4.31230
2.39406 6.10753
8.98971 12.00000
2.01005 5.27259
-1.42513 -3.89459
1.91515 5.05774
4.75207 10.02206
-3.22786 -7.73000
2.18031 5.64961
6.95316 11.79452
-3.92956 -8.89341
-1.97791 -5.20021
7.95253 11.99958
9.86943 12.00000
-3.45314 -8.12363
2.13008 5.53950
-1.21212 -3.36088
8.50756 12.00000
1.85195 4.91277
3.75620 8.62315
4.47003 9.66362
11.09999 12.00000
-1.70654 -4.57356
11.73001 12.00000
1.90609 5.03706
-2.36144 -6.03873
0.04914 0.14695
3.82695 8.73482
6.12422 11.34027
2.32662 5.96488
9.35261 12.00000
8.06504 12.00000
2.97498 7.26547
4.38768 9.55333
4.20153 9.29468
4.19242 9.28168
-4.63619 -9.87840

@ -0,0 +1,26 @@
import random
def func(x, A, B):
if x > A:
return B
elif 0 <= x <= A:
return (2 * B * x / A) - (B * x**2 / A**2)
elif -A <= x < 0:
return (2 * B * x / A) + (B * x**2 / A**2)
else:
return -B
x_values = [random.uniform(-5, 12) for _ in range(100)]
params = [(5, 7), (3, 4), (8, 12)]
with open('test.txt', 'w', encoding='utf-8') as f:
for A, B in params:
f.write(f'\nПараметры: A = {A}, B = {B}\n')
f.write('xi yi\n')
f.write('----------------\n')
for x in x_values:
y = func(x, A, B)
f.write(f'{x:10.5f} {y:10.5f}\n')

Двоичные данные
TEMA7/Рис2.png

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 14 KiB

@ -0,0 +1,3 @@
import MM2
print('y=',MM2.vyhod)

@ -0,0 +1,22 @@
def realdvig(xtt,kk1,TT,yti1,ytin1):
#Модель реального двигателя
yp = kk1 * xtt #усилитель
yti1 = yp + yti1 #Интегратор
ytin1 = (yti1+TT*ytin1)/(TT+1)
return [yti1, ytin1]
def tahogen(xtt,kk2,yti2):
#Модель тахогенератора
yp = kk2 * xtt #усилитель
yti2 = yp + yti2 #интегратор
return yti2
def nechus(xtt,gran):
if (xtt < gran) and (xtt > (-gran)):
ytt = 0
elif xtt >= gran:
ytt = xtt - gran
elif xtt <= (-gran):
ytt = xtt + gran
return ytt

@ -0,0 +1,25 @@
znach = input('k1,T,k2,Xm,A,F,N=').split(',')
k1 = float(znach[0])
T = float(znach[1])
k2 = float(znach[2])
Xm = float(znach[3])
A = float(znach[4])
F = float(znach[5])
N = int(znach[6])
import math
vhod = []
for i in range(N):
vhod.append(A * math.sin((2 * i * math.pi) / F))
import MM1 as mod
yi1 = 0
yin1 = 0
yi2 = 0
vyhod = []
for xt in vhod:
xt1 = xt - yi2 # отрицательная обратная связь
[yi1, yin1] = mod.realdvig(xt1, k1, T, yi1, yin1)
yi2 = mod.tahogen(yin1, k2, yi2)
yt = mod.nechus(yin1, Xm)
vyhod.append(yt)

@ -1,2 +1,9 @@
perm1=input('Mod1:Введите значение = ')
print('Mod1:Значение perm1=',perm1)
def reading (file):
nums = []
with open(file, 'r') as file:
for line in file:
nums.extend(map(float, line.split()))
return nums

@ -1,11 +1,17 @@
def alpha():
print('****ALPHA****')
t=input('Значение t=')
return t
import math
def correlation(list1, list2):
n = min(len(list1), len(list2))
if n < 2:
return None
x, y = list1[:n], list2[:n]
mean_x, mean_y = sum(x)/n, sum(y)/n
num = sum((x[i]-mean_x)*(y[i]-mean_y) for i in range(n))
den = math.sqrt(sum((x[i]-mean_x)**2 for i in range(n)) *
sum((y[i]-mean_y)**2 for i in range(n)))
return num/den if den != 0 else None
def beta(q):
print('****BETA****')
import math
expi=q*math.pi
return math.exp(expi)

@ -0,0 +1,15 @@
from Mod1 import reading
from Mod2 import correlation
file1 = input("Введите имя первого файла: ")
file2 = input("Введите имя второго файла: ")
arr1 = reading(file1)
arr2 = reading(file2)
if arr1 is None or arr2 is None:
print("Не удалось считать данные из файлов.")
else:
corr = correlation(arr1, arr2)
if corr is not None:
print(f"Коэффициент корреляции: {corr:.2f}")

@ -0,0 +1,2 @@
1.0 2.0 3.0 4.0 5.0
6.0 7.0 8.0 9.0 10.0

@ -0,0 +1,2 @@
10.0 9.5 9.0 8.5 8.0
7.5 7.0 6.5 6.0 1.0

@ -0,0 +1,11 @@
class Class1: #Объявление класса Class1 в модуле
def zad_zn(self,znach): # 1 Метод класса
self.data=znach # self - ссылка на экземпляр класса Class1
def otobrazh(self): # 2 Метод класса
print(self.data)#Отображение данных экземпляра
class Class2(Class1): #Class2 - наследник класса Class1
def otobrazh(self): # Метод класса Class2
print('значение=',self.data)#Отображение данных экземпляра
def otobrazh(objekt): #Объявление самостоятельной функции
print('значение объекта=',objekt)
Загрузка…
Отмена
Сохранить