質問

これが私の問題です:

次のシリーズを使用してπの値を計算する:

((π^2)-8)/16=[sum from 1 to pos. infinity] 1/(((2n−1)^2)*((2n+1)^2))
.

•10E-8より小さいπの絶対値を取得するために必要な最小の項を見つけます。

これが私のコードです:

x=0;
for i=1:1000

    x=x+(1/((((2*i)-1)^2)*(((2*i)+1)^2)));
    z=sqrt((x*16)+8);
    error=abs(z-pi);
    if (error < 10e-8)
        i
        break
    end
end
.

ループが壊れたときに81歳までの答えは81ですが、正しい答えではありません。私はそれが私が必要としていないことがわからないという私のコードの何が問題になっていることを見つけようとしていました。

私はかなりの間にコードを見つめてきましたが、私が間違いをした場所を見ることができません。

役に立ちましたか?

解決

問題を見つけました。エラーは10 ^ -8未満の10E-8未満であると想定されています。どういうわけかコピー時に数字が変わりました。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top