Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var iter, max_iter: longint; // Кол - во множителей и максимальное кол - во множителей
- var pi, pi_calc, tmp: real;
- var tmp_iter: longint;
- begin
- pi := 3.1415926535897932; // Настоящее значение пи для сравнения.
- max_iter := 1;
- while (trunc(pi_calc*100000) <> trunc(pi*100000)) do begin // Почему... Такой простой ряд... Так эффективен...
- // За 10 множителей он уже дает точность в 5 знаков... А прошлый... Ладно, тестировать можно так же, как и прошлые пункты.
- max_iter := max_iter+1;
- pi_calc := 1;
- for iter:=1 to max_iter do begin
- tmp := 0; // Большой числитель с кучей корней из 2
- for tmp_iter := 1 to iter do begin
- tmp := sqrt(2+tmp);
- end;
- pi_calc := pi_calc * tmp/2;
- end;
- pi_calc := 2/pi_calc // Конечные вычисления
- end;
- writeln(max_iter);
- end.
Add Comment
Please, Sign In to add comment