6

X個の10進数までPHPでpiの値を計算するにはどうすればよいですか?

小数点以下4桁

3.141

小数点以下64桁

3.141592653589793238462643383279502884197169399375105820974944592

4

4 に答える 4

4

@Konamiman が投稿した壊れたリンクのソースを見つけました。

結果をhttp://www.angio.net/pi/digits/50.txtと比較すると、同じです。

// Source: http://mgccl.com/2007/01/22/php-calculate-pi-revisited
function bcfact($n)
{
    return ($n == 0 || $n== 1) ? 1 : bcmul($n,bcfact($n-1));
}
function bcpi($precision)
{
    $num = 0;$k = 0;
    bcscale($precision+3);
    $limit = ($precision+3)/14;
    while($k < $limit)
    {
        $num = bcadd($num, bcdiv(bcmul(bcadd('13591409',bcmul('545140134', $k)),bcmul(bcpow(-1, $k), bcfact(6*$k))),bcmul(bcmul(bcpow('640320',3*$k+1),bcsqrt('640320')), bcmul(bcfact(3*$k), bcpow(bcfact($k),3)))));
        ++$k;
    }
    return bcdiv(1,(bcmul(12,($num))),$precision);
}

echo bcpi(1000);
于 2012-04-29T06:53:11.530 に答える
0

PHPでPIを計算していますか?

M_PIすでに定数があるのに、なぜ計算するのでしょうか?

M_PI値が含まれています3.14159265358979323846

PI の小数点以下 10000 桁はかなりの数です。

参照: http://www.php.net/manual/en/math.constants.php

于 2009-11-24T07:55:20.913 に答える
0

チュドノスキー級数で円周率を計算できます。非常に高いRAMを備えたサーバーを使用している場合、Piを小数点以下の桁数まで簡単に計算できます. 特定の小数点以下の桁数にしたい場合は、努力を非常に大きな数に増やし、substrを使用して必要な小数点以下の桁数に短縮します。このプロセスが非常に遅いと思われる場合は、Google で検索して pi 値を取得できます。

于 2014-08-18T10:02:40.857 に答える
-4

PHPは、私が知る限り、数値を保持することはできませんが、22/7はPIを計算するための古い方法ですが、PHPに含まれるPI定数よりも優れているわけではありません。おそらく、演習としてPIの長い文字列を出力しようとしています。

于 2011-05-20T14:44:05.620 に答える