- ベストアンサー
Excelとピタゴラスの定理
この表のA列には直角三角形の垂辺、C列には 同じく底辺、F列には斜辺の長さが書き込まれる。今、A2セルに3.00、C2セルに4.00、F2セ ルに5.00 の値を入れたので、垂辺・底辺それぞれの2乗の和であるE2セルの値と斜辺の2乗であ るG2セルの値は一致するはずである。それが一致しているかどうかを確かめる式がH2セルに入 れられている。H2セルをアクティブにして数式バーを見るとわかるように、このセルに入ってい る式は=E2=G2 というものである。すなわち、E2セルの値とG2セルの値が等しければ 論理値True を返し、そうでなければ同じくFalse を返す式である。この場合、当然True が返される。 次に、A3セルには式「=A2+ 0.03」を、C3セルには「=C2+ 0.04」を、F3セルには「= F2+ 0.05」を入れ、第3行目のその他のセル(B3,D3,E3,G3,H3)には第2行目の 同じ列のセルにある式を複写する。そうすると、ここでも垂辺:底辺:斜辺の長さの比は3:4: 5になっているからH3セルにはTrue が返されるはずである。 この第3行目のA列からH列まですべてのセルの式をそのまま下方に複写すれば、どの行でもA 列:C列:F列の値の比は3:4:5になるから、H列の値はすべてTrue になるはずである。実際、 どこまで複写しても同じ行のE列のセルとG列のセルに示された値は等しいように見える。しかし、 H列ではTrue ではなくFalse が返される場合がある。 1-A:垂辺 B:垂辺の二乗 C:底辺 D:底辺の二乗 E:二乗の和 F:斜辺 G:斜辺の二乗 H:E=G 2-A:3.00 B:9.00 C:4.00 D:16.00 E:25.00 F:5.00 G:25.00 H:TRUE 3-A:3.03 B:9.18 C:4.04 D:16.32 E:25.50 F:5.05 G:25.50 H:TRUE ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 24-A:3.66 B:13.40 C:4.88 D:23.81 E:37.21 F:6.10 G:37.21 H:TRUE 25-A:3.69 B:13.62 C:4.92 D:24.21 E:37.82 F:6.15 G:37.82 H:FALSE 26-A:3.72 B:13.84 C:4.96 D:24.60 E:38.44 F:6.20 G:38.44 H:FALSE この現象がどうして起きるのかを、高校生にわかるように、簡単に説明しなさい。 という問題なのです。教えてください。お願いします
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ぶっちゃけ三平方の定理(ピタゴラスの定理)は関係ありません 微小数における誤差です E列とG列の表示桁を小数点以下16桁にしてみてください H列に FALSE が返ってきている行のE列とG列の値が異なっていることが分かります 続いて手元にある電卓でB列とD列を足してE列・G列の数値と比べてください (電卓が無い場合はパソコンのアクセサリから電卓を選んで計算してください) E列の数値が一致しないことが分かりますね E列の数値が一致しないのは、エクセルは16桁で計算を行っているからなんです ※有効桁16桁で計算を行うのは表計算ソフトの仕様です そのため16桁より下に数字がある場合は、その数値を使って計算すると端数の分だけ誤差を生じます また、コンピュータ内部では2進数で計算を行っているため10進数で示される小数に誤差を含むことがあります 誤差を含んだ数値を計算に使用すると結果には当然ながら正しくない結果が返ってきます ただこれだけのことです 中学生でも理解できると思いますが如何でしょう
その他の回答 (1)
- koko_u_
- ベストアンサー率18% (459/2509)
>高校生にわかるように、簡単に説明しなさい。 この縛りがなければ説明できるのですね?補足にどうぞ。
お礼
わかりやすい解説ありがとうございます。これは表計算ソフトでは出てしまうものなんですね。自分ではまったくわからなかったので、とても助かりました。