Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

1.3 KiB

Индивидуальные контрольные задания по теме 7

Зеленкина Ксения А-02-23

Задача

Разработайте анонимную функцию, вычисляющую значение a*sin(x)/x, где a,x – аргументы функции. Рассчитайте эту функцию в интервале значений х: 0<x≤50 с шагом 0.5 и при некото-ром значении коэффициента a. Обеспечьте запись рассчитанных значений в текстовый файл по одному значению на строке. Отобразите рассчитанные значения в виде графика.

Решение

Код:

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()