- 締切済み
応用数学
大学のテストで次の問題が出るみたいなんですが、まったく分かりません。 実数をコンピュータで浮動小数表示するとき、次のような例を示せ。 (a) x≠0 かつ x+y-y=0 (b) (a^2+b^2)(c^2+d^2)<(ac+bd)^2 「3,1,4,1,5,9,2,6,5,3,5,8,9,7,9」の順で並んでいるデータのピープ構造を作り、最小値が根にきたときのピープ構造内の各数値を図示せよ。 以上、よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- inu_poti
- ベストアンサー率66% (4/6)
(a)(b)について答ます。 数学の問題でなく、単なる桁落ちの問題で (a)浮動小数点の演算で、極端に小さい数と極端に 大きな数を足しても、極端に大きな数にしかなりません。 x+y-y=(x+y)-y とみなせば、xを極端に小さい数、yを極端に小さい数とすると (x+y)の計算結果はyになってしまいます。Excelで 計算したところ x=1E-8 y=1E300 で x+y-y=0 になりました。 (b)数学的には (a^2+b^2)(c^2+d^2)>=(ac+bd)^2 になるはずです。ですけれど、コンピュータの計算では極端に小さい浮動小数点の掛算は規格上0になります。そこで、 aとbに極端に大きな数 cとdに極端に小さな数 にすると、 (c^2+d^2) が0になてしまい、(a^2+b^2)(c^2+d^2)も0になってしまうと思います。Excelで a=6.00E+150 b=6.00E+150 c=1.00E-300 d=1.00E-300 としたら (a^2+b^2)(c^2+d^2)=0.00E+00 (ac+bd)^21.44E-298 になりました。
- Tacosan
- ベストアンサー率23% (3656/15482)
「実数をコンピュータで浮動小数表示する」とありますね. この「浮動小数表示」の例を書いてみてください. また, 「ピープ構造」というものの定義とその作り方をここに書いてください. 「大学のテストで出る」くらいだから, 当然授業ではやっているはずですね.
補足
浮動小数表示が何かわからないんです… あとヒープ構造は解決しました!