エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
Pythonで小数を2進数に変換する
Pythonで小数点の計算をすると、おかしなことが起こります。極めて小さな誤差なので多くの場合は大した... Pythonで小数点の計算をすると、おかしなことが起こります。極めて小さな誤差なので多くの場合は大した問題ではありませんが、やはり気になります。そこで、小数点以下の数値の取り扱いについて明らかにしていきます。 Pythonで小数点 0.1を単純に60桁まで表示させると、小数点第18位から555111・・・とごくわずかですが誤差が生じてしまいます。これは、Python、というよりコンピュータが2進数で数値を計算しており、そこでは浮動小数点方式という計算方法によっているためです。 #1 0.1の小数表示 print(f'{0.1:.60f}') #0.100000000000000005551115123125782702118158340454101562500000 そこで、なぜ0.1がこのようになってしまうのか、2進数に変換して確認してみます。 倍精度浮動小数点方式 ここでは簡単のため、