форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
38 строки
1.3 KiB
Markdown
38 строки
1.3 KiB
Markdown
# Индивидуальные контрольные задания по теме 7
|
|
Зеленкина Ксения А-02-23
|
|
|
|
## Задача
|
|
Разработайте анонимную функцию, вычисляющую значение a*sin(x)/x, где a,x – аргументы функции. Рассчитайте эту функцию в интервале значений х: 0<x≤50 с шагом 0.5 и при некото-ром значении коэффициента a. Обеспечьте запись рассчитанных значений в текстовый файл по одному значению на строке. Отобразите рассчитанные значения в виде графика.
|
|
|
|
## Решение
|
|
_Код:_
|
|
```py
|
|
import math
|
|
anfun = lambda a, x: a * math.sin(x)/x
|
|
|
|
with open('test.txt', 'w') as fl:
|
|
for i in range(1, 101):
|
|
x = i * 0.5
|
|
fl.write(f"{anfun(2,x)} \n")
|
|
|
|
|
|
x = []
|
|
y = []
|
|
with open('test.txt', 'r') as fl:
|
|
l = fl.readlines()
|
|
for i in range(len(l)):
|
|
x.append((i + 1) * 0.5 )
|
|
y.append(l[i].strip())
|
|
|
|
print(x)
|
|
print(y)
|
|
|
|
import matplotlib.pyplot as plt
|
|
plt.figure(figsize=(10, 5))
|
|
plt.plot(x, y, 'r-', label='График', linewidth=2)
|
|
plt.xlabel('x')
|
|
plt.ylabel('y')
|
|
plt.show()
|
|
```
|
|
|
|
<img src = "./testphoto.png" width="500" height="300" align="center"> |