форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
33 строки
1.0 KiB
Markdown
33 строки
1.0 KiB
Markdown
# Тест по теме 7, Вариант 14
|
|
|
|
## Задание
|
|
|
|
Разработайте анонимную функцию, вычисляющую значение a*sin(x)+b*cos(x+T) с парамет-рами х, a, b, T. Рассчитайте значения функции в диапазоне значений х от -4 до 5 с шагом 0.2 при a=2, b=-6, T=1.5 и запишите эти значения в текстовый файл по одному на строке. Представьте эти значения на графике.
|
|
|
|
## Решение
|
|
|
|
```py
|
|
import math
|
|
a = 2
|
|
b = -6
|
|
T = 1.5
|
|
anfun = lambda a, b, x, T: a*math.sin(x)+b*math.cos(x+T)
|
|
def gen(start, fin, shag, a, b, T):
|
|
x = start
|
|
while x <= fin:
|
|
yield [anfun(a, b, x, T)]
|
|
x += shag
|
|
|
|
fp = open('test.txt', 'w')
|
|
for i in gen(-4, 5, 1, a, b, T):
|
|
fp.write(str(i[0]) + '\n')
|
|
fp.close()
|
|
|
|
fp = open('test.txt', 'r')
|
|
for x in fp:
|
|
yval.append(float(x.rstrip('\n')))
|
|
plt.plot(yval)
|
|
plt.show()
|
|
```
|
|
|
|
 |