Привет, я построил алгоритм для вычисления пи, но я использую для него длинное число с плавающей запятой, поэтому в результате я просто получаю 3,14159, мне нужно больше точности. Как? вот код:
#include <iostream>
#include <math.h>
using namespace std;
int main ()
{
long double a, l, p, pi, r;
long long int n, m;
r = 100000;
a = r * sqrt (3) / 2 ;
n = 100000;
m = 6;
while (n > m)
{
a = sqrt (r / 2 * (r + a));
m = m * 2 ;
}
l = sqrt (4 * (pow (r, 2) - pow (a, 2)));
p = m * l;
pi = p / (2 * r) ;
cout << pi << endl;
cout << "number of corners used: " << m << endl;
return 0;
}
Кстати, в моей школе есть 24-ядерный (12 двухъядерных узлов) суперкомпьютер, на всякий случай.
cout << M_PI;
. - person i_am_jorf   schedule 18.12.2014