Tag: apfloat

使用Chudnovsky算法计算pi时出错 – Java

我一直在尝试使用Chudnovsky算法编写一个简单的程序来计算pi,但是我一直得到错误的值输出。 我写的最新代码如下,输出: 9.642715619298075837448823278218780086541162343253084414940204168864066834806498471622628399332216456e11 谁能告诉我哪里出错了。 正如彼得·德·里瓦兹指出我正在抛弃b的值,而现在的输出为:-1.76779979383639157654764981441635890608880847407921749358841620214761790018058 3600120191582474909093e-2 Apfloat sum = new Apfloat(0); for(int k = 0; k < n; k++) { int thrk= 3*k; Apfloat a = ApintMath.factorial(6*k); //(6k)! * (-1)^k a = a.multiply(ApintMath.pow(new Apint(-1),k)); Apfloat b = new Apfloat(545140134); b = b.multiply(new Apfloat(k)); b = b.add(new Apfloat(13591409)); // 13591409 + 545140134k Apfloat c = ApintMath.factorial(thrk); […]