Вычисление интегралов методом Монте-Карло
Дисциплина: РазноеТип работы: Курсовая
Тема: Вычисление интегралов методом Монте-Карло
Вычисление определенного интеграла методом
Монте-Карло
Определенный интеграл
f(x)
по методу
Монте-Карло
по
формуле I = (1/n)*
i))/(g(
,где
n –
число испытаний
;g(x) –
плотность
распределения
вспомогательной
случайной
величины X
, причем
g(x)
dx = 1
В программе
g(x) = 1/(b-a)
Программа написана на языке
TURBO PASCAL 7
Program
pmk;
Uses
crt;
k,p,s,g,x,Integral : real;
n,i,a,b : integer;
BEGIN
writeln(‘
Введите промежуток интегрирования
a;b):’);
readln(a);
readln(b);
writeln(‘
Введите количество случайных значений
число испытаний)
:’);
readln(n);
k:=b-a;{
Переменной
“k”
присвоим значение длины промежутка интегрирования
writeln(‘
k=’,k);
for i:= 1 to n do begin {
проведем
испытаний
g:=random; {g –
переменная вещественного
типа,случайная величина из
промежутка
[0;1]}
По этой формуле получается произвольная величина из
a;b] }
s:=s + (1+x); {
s:=s +(
x*x)}{
Вообще можно подставить любую функцию
задержка,чтобы
произвольные значения не повторялись
end;{
конец испытаний
writeln(‘
s=’,s);{
Сумма функции для
произвольных
значений}
Integral:=(1/n)*
k*s ;
writeln(‘
Интеграл=
’,Integral);
readln;
END.
Требуется ввести промежуток интегрирования и количество испытаний, интегрируемая функция уже задана в программе(но ее можно поменять).
(x+1)
dx = 6
x*x)
dx = 9; (
По методу Ньютона-Лейбница).
Функция
N= 10
N= 100
N= 500
N= 1000
f(x)=1 + x
5.737
5.9702
6.02
5.99
f(x)=x * x
9.6775
8.528
8.7463
8.937
Язык: Русский
Скачиваний: 250
Формат: Microsoft Word
Размер файла: 4 Кб
Автор:
Скачать работу...