форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
35 строки
1.2 KiB
Markdown
35 строки
1.2 KiB
Markdown
# Индивидуальное контрольное задание по теме 7
|
|
|
|
Лыкова Елизавета, А-01-23
|
|
|
|
## Задание
|
|
|
|
Разработайте анонимную функцию, вычисляющую значение a*sin(x)+b*cos(x+T) с параметра-ми х, a, b, T. Рассчитайте значения функции в диапазоне значений х от -4 до 5 с шагом 0.2 при a=2, b=-6, T=1.5 и запишите эти значения в текстовый файл по одному на строке. Пред-ставьте эти значения на графике.
|
|
|
|
## Решение
|
|
|
|
```py
|
|
import os
|
|
os.chdir('C:\\Users\\Home\\Desktop\\python-labs\\TEMA7')
|
|
import numpy as np
|
|
import mat
|
|
import matplotlib.pyplot as plt
|
|
anonym = lambda x,a,b,T: a*np.sin(x) + b*np.cos(x+T)
|
|
a,b,T = 2,-6,1.5
|
|
x = np.arange(-4,5+0.2,0.2)
|
|
yval = anonym(x,a,b,T)
|
|
fl = open('znach.txt','w')
|
|
for y in yval:
|
|
fl.write(f'{y}\n')
|
|
fl.close()
|
|
plt.plot(x, yval, 'b-')
|
|
plt.grid(True)
|
|
plt.xlabel('x')
|
|
plt.ylabel('f(x)')
|
|
plt.title(f'f(x) = {a}*sin(x) + {b}*cos(x + {T})')
|
|
plt.show()
|
|
plt.savefig('plot.png')
|
|
```
|
|
|
|

|