Laster_Alex

Z2-NO4

Feb 16th, 2022 (edited)
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.12 KB | None | 0 0
  1. var iter, max_iter: longint;  // Кол - во множителей и максимальное кол - во множителей
  2. var pi, pi_calc, tmp: real;
  3. var tmp_iter: longint;
  4. begin
  5.     pi := 3.1415926535897932;  // Настоящее значение пи для сравнения.
  6.     max_iter := 1;
  7.     while (trunc(pi_calc*100000) <> trunc(pi*100000)) do begin  // Почему... Такой простой ряд... Так эффективен...
  8.     // За 10 множителей он уже дает точность в 5 знаков... А прошлый... Ладно, тестировать можно так же, как и прошлые пункты.
  9.         max_iter := max_iter+1;
  10.  
  11.         pi_calc := 1;
  12.  
  13.         for iter:=1 to max_iter do begin
  14.             tmp := 0;  // Большой числитель с кучей корней из 2
  15.             for tmp_iter := 1 to iter do begin
  16.                 tmp := sqrt(2+tmp);
  17.             end;
  18.             pi_calc := pi_calc * tmp/2;
  19.         end;
  20.         pi_calc := 2/pi_calc  // Конечные вычисления
  21.     end;
  22.     writeln(max_iter);
  23. end.
  24.  
  25.  
Add Comment
Please, Sign In to add comment