|
Chislo_Pi.PAS |
|
{* Вычисление числа пи методом Монте-Карло. *}Unit CHISLO_PI; InterfaceImplementationBegin writeln( 'Вычисление числа пи методом Монте-Карло.'); End. Program Chislo_Pi;
Uses Chislo_Pi.pas; {* Эту строку можно удалить *}
Uses crt; {* Подключаем внешние файлы *}
Var {* Объявление переменных *}
n : longint;
k : longint;
i : longint;
o : longint;
l : longint;
m : longint;
p : double;
Begin
clrscr; {* Очищаем экран *}
n := 0;
writeln( 'Сколько точек брать? Советую брать 10000');
readln(n);
m := n * n;
For i := 1 To n Do {* Цикл для i => [1 .. n] *}
Begin
If i * n Mod 10000000 = 0 Then
writeln( '[Просчитано ', i, ' точек из ', n, ']');
l := sqr(i);
For o := 1 To n Do {* Увеличиваем o от 1 до n с шагом 1 *}
Begin
If l + sqr(o) > m Then
k := k + 1;
End;
End;
p := sqr(n) - k;
p := 4 * p / sqr(n);
writeln( 'Число ПИ равно ', p);
readln(p);
End.
|