トピック
しんいち stgf1080

これが実数型の誤差というやつか...

実数型の誤差、しようがないことがあるのは理解してるつもりなんだけど、これの本当に怖いところは3号と結果が違うところ(3号ではどっちも16)。 ビー玉ゲーム高速化できたのは良いんだけど、3号の方でビー玉画像用配列がOut of rangeになっちゃって(BIGは大丈夫)、よくよく調べたらこれが原因でした(BIG大丈夫じゃない!?^^;)。 誤差はしゃーないけど、3号とBIGで違うのは困るのぅ。
4そうだね
プレイ済み
返信[1]
親投稿
この類だと、FLOOR(LOG(1000,10))になるのが痛いんですけど まさか、コンピュータの得意な2の累乗で起きるとは思わないよ~
2そうだね
未プレイ
返信[2]
親投稿
あ、そうそう。 整数型変換で端数を切られるのとFLOOR()では挙動が別物なんだけど、FLOORでも15になっちゃうのかなぁ…?
0そうだね
未プレイ
返信[3]
親投稿
※文章の一部を書き損ね FLOOR(LOG(1000,10))が2になる(桁数判定でハマるやつ)
0そうだね
未プレイ
返信[4]
親投稿
しんいち stgf1080
LOG(1000,10)はFLOOR付けても付けずに整数型に代入しても大丈夫でした。3でした。 でも気になったのでSQRと共に試したのが画面。 上がSQR、下がLOG、左が実数型、右が整数型。 う~ん、誤差がエグい。LOGは6の6乗だけ変。 こりゃ~もう誤差じゃなくてバグだな(-_-# ちなみに3号では(この例では)実数型と整数型に違いはなく誤差ありませんでした。
2そうだね
プレイ済み