форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
358 строки
9.0 KiB
Markdown
358 строки
9.0 KiB
Markdown
# Индивидуальное контрольное задание по теме 7
|
|
|
|
Соловьёва Екатерина, А-01-23
|
|
|
|
## Задание
|
|
|
|
Разработайте функцию с 3 аргументами: x, А и В, реализующую преобразование входного сигнала x по формуле:
|
|
$y=B$, если $x>A$;
|
|
$y= 2B\frac{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
|
|
```
|