次のコードがあります。
double e = 36858.767828375385;
double c = 2;
double d = 67.877433500000009;
e = sqrt(e / (c * (c - 1))) / d;
デバッガーによると、結果の値e
は 2 ですが、2.8284271 のはずです。私は何を間違っていますか?
値 2 を取る理由e
は、それが実際の答えだからです。
sqrt(e / (c * (c-1))) / d;
= sqrt(e / (2 * (2 - 1))) / d
= 平方根(e / 2) / d
=平方(36858.767828375385/2)/d
=平方(18429.383914188)/d
= 135.754867 / 日
= 135.754867 / 67.877433500000009
= 2
もしかして、式を間違えていませんか?
お役に立てれば!
サンプルコード:
c = 2;
c = c * (c - 1);
評価は 2 * (2 - 1) => 2 CORRECT (実際の結果は 2) になります。
1 * (2 - 1) => 1 WRONG (期待値 2.8284271) にはなりません。
これがあなたの混乱だと思います。