Pythonで以下の演算をした時、
python
1print("%.100f"%float64(1/3)) 2print("%.100f"%float32(1/3)) 3print("%.100f"%float16(1/3))
結果が以下のようになりました。
0.3333333333333333148296162562473909929394721984863281250000000000000000000000000000000000000000000000 0.3333333432674407958984375000000000000000000000000000000000000000000000000000000000000000000000000000 0.3332519531250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
半精度では有効桁数3、単精度は56、倍精度は156で、上記はそのとおりになっていると思うのですが、有効桁数以下の値がどこから来たのかよくわかりません。
ご存じの方いらっしゃいましたらご教示くださいますと幸いです。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/08/21 10:48