Помогите построить график и вычислить площадь криволинейной трапеции, ограниченной линиями y= x^3-18x+100, диапазон изменения аргумента [-5;4], y=0, x=a, x=b тремя способами: по формуле трапеций; по формуле Симпсона; методом Монте-Карло.

4и.jpg
25 Мая 2020 в 20:11
189 +1
0
Ответы
1

Для начала построим график функции y = x^3 - 18x + 100 на интервале [-5, 4]:

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-5, 4, 100)
y = x*3 - 18x + 100

plt.plot(x, y)
plt.xlabel('x')
plt.ylabel('y')
plt.title('График функции y = x^3 - 18x + 100')
plt.grid(True)
plt.show()

Далее найдем значения a и b, где функция пересекает ось x (y=0):

a = -3
b = 2

Теперь вычислим площадь криволинейной трапеции тремя способами.

По формуле трапеций:
h = (b - a)/2
S_trapez = h * (f(a) + f(b))
def f(x):
return x*3 - 18x + 100

S_trapez = h * (f(a) + f(b))
print(f'Площадь трапеции по формуле трапеций: {S_trapez}')

По формуле Симпсона:
S_simpson = h/3 (f(a) + 4f((a+b)/2) + f(b))
print(f'Площадь трапеции по формуле Симпсона: {S_simpson}')

Методом Монте-Карло:
n = 100000
x_rand = np.random.uniform(a, b, n)
y_rand = np.random.uniform(0, f(a), n)
count = 0
for i in range(n):
if y_rand[i] <= f(x_rand[i]):
count += 1

S_monte_carlo = (b - a) f(a) count / n
print(f'Площадь трапеции методом Монте-Карло: {S_monte_carlo}')

18 Сен 2024 в 10:31
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 96 091 автору
Первые отклики появятся уже в течение 10 минут
Прямой эфир