1,329
2,000
1,843
2,000
1,995
1,984
2,000
1,897
1,990
1,997
1,891
Склавши числа останнього стовпця таблиці 4, знайдемо суму 19,597, підставивши яку у співвідношення, отримаємо шукану оцінку інтеграла
.
Зауважимо, що точне значення I = 1,147.
В§ 6. Програма обчислення визначеного інтеграла методом Монте-Карло.
Обчислити визначений інтеграл за методом "Монте-Карло" по формулою
В , p> де n - число випробувань; g (x) - щільність розподілу "Допоміжної" випадкової величини X, причому, в програмі g (x) = 1/(ba) p> Програма написана мовою TURBO PASCAL 7.0
Program pmk;
Uses crt;
Var k, p, s, g, x, Integral: real;
n, i, a, b: integer;
BEGIN
writeln ('Введіть проміжок інтегрування (a; b):');
readln (a);
readln (b);
writeln ('Введіть кількість випадкових значень (число випробувань):');
readln (n);
k: = ba; {Перемінної "k" присвоїмо значення довжини проміжку інтегрування}
writeln ('k =', k);
for i: = 1 to n do begin {проведемо n випробувань}
g: = random; {g - мінлива речового типу, випадкова величина з проміжку [0; 1]}
x: = a + g * (ba); {За цією формулою виходить довільна величина з [a; b]}
s: = s + (1 + x); {s: = s + (x * x)} {Взагалі можна підставити будь-яку функцію}
delay (1000); {затримка, щоб довільні значення не повторювалися}
end; {кінець випробувань}
writeln ('s =', s); {Сума функції для n довільних значень}
Integral: = (1/n) * k * s;
writeln ('Інтеграл =', Integral);
readln;
END.
Потрібен ввести проміжок інтегрування і кількість випробувань, інтегрована функція вже задана в програмі (але її можна поміняти).
;. table>
Функція
k
N = 10
N = 100
N = 500
N = 1000
f (x) = 1 + x
2
5.737
5.9702
6.02
5.99
f (x) = x * x
3
9.6775
8.528
8.7463
8.937
В§ 7. Обчислення кратних інтегралів методом Монте-Карло.
Нехай функція неперервна в обмеженій замкненій області S і потрібно обчислити m-кратний інтеграл
В . (1)
Геометрично число ...