0:00:00.300,0:00:06.670 ここでの問題はコンピュータが2進法と呼ばれる[br]システムを使って数を表していることです 0:00:07.000,0:00:11.110 このシステムでは4.35を[br]正確に表示することができないのです 0:00:11.300,0:00:14.480 一般的な電卓と同じですね 0:00:14.650,0:00:18.980 10を3で割ると3.3333… といった答えが得られます 0:00:19.490,0:00:26.820 その答えに再び3をかけると[br]答えは9.999999… になります 0:00:27.200,0:00:34.160 その理由はつまり10を3で割った数を[br]10進法で表示することはできないのです 0:00:34.640,0:00:41.000 なぜこのようなエラーが起こるのかについて[br]プログラマは詳細な理由を追及しません 0:00:41.500,0:00:46.140 ただ何となく浮動小数点数は[br]あいまいだという直感があるだけです 0:00:46.480,0:00:51.650 このピンボケの写真と同様です[br]1個1個のピクセルがはっきりと分かりませんね 0:00:52.240,0:00:57.750 434.999のような数字を得た場合には[br]解決しなくてはならない問題があるということです 0:00:58.100,0:01:05.060 この例ではわずかなお金も失いたくなければ[br]整数を使ってペニーを計算することが解決法です 0:01:05.700,0:01:12.470 これを整数になるように435ペニーとすれば[br]100×435で何も問題はありません 0:01:12.800,0:01:18.140 Javaではさらに技術を必要とする[br]数に関する型が他にもあります 0:01:18.140,0:01:21.780 ファクトシートを用意しましたので[br]読んでみてください 0:01:21.780,0:01:24.840 そしてサラと一緒に[br]いくつか練習問題をやってみましょう