• 締切済み

Flash Lite1.1 計算の誤差

続けざまにすみません。CS3でFlash Lite1.1の計算式を作っていますが 計算式で絶対整数の答がでるはずなのに.00001くらいの誤差が出てしまうのはなぜでしょうか? AS2では、全く出ませんがFlash Lite1.1では出るので四捨五入などで なんとか整数にしています。 なんとかならないのでしょうか? 単純に1000000に0.23をかけただけでも、230000にならなかったりします。

みんなの回答

  • kura07
  • ベストアンサー率50% (30/59)
回答No.1

Flash Liteなどに限らず、全て(?)の言語で、小数の計算には誤差が生じます。 これは、パソコンが10進法ではなく2進法で扱っているためです。 必ず整数だという確信のある計算は、おっしゃるとおり、四捨五入かなんかしたほうが無難だと思います。 他の対策は、参考URLを見てください。

参考URL:
http://scriptstesting.org/syosu/index.htm
Flash-love
質問者

お礼

早速、ありがとうございます。 ああ、どこにでも誤差が出てくるんですね。 とりあえず、切り上げ、切り下げ、四捨五入で対応してみます。

関連するQ&A