64ビット整数の演算結果

返信する


答えを正確に入力してください。答えられるかどうかでスパムボットか否かを判定します。

BBCode: ON
[img]: ON
[url]: ON
スマイリー: OFF

トピックのレビュー
   

展開ビュー トピックのレビュー: 64ビット整数の演算結果

by hira » 2005年11月16日(水) 21:00

ありがとうございます。
やはり内部の計算が実数で行われているようですね。
今回は \ 演算子で解決できる内容でしたので、それでいきたいと思います。

by イグトランス » 2005年11月16日(水) 20:47

こういうときには整数除算演算子 \ を使ってみると良いです。
こちらでは問題ありません。

コード: 全て選択

#prompt
#strict

Dim a As Int64
a = 123456789123456
a = a \ 10000

Print a
というわけで / 演算子では実数型で計算されているのでしょう。

円記号は違和感があるので、私は \ がバックスラッシュになるフォントを使っています。

64ビット整数の演算結果

by hira » 2005年11月16日(水) 20:19

コード: 全て選択

Dim a As Int64
a=123456789123456
a=a/10000
このとき、「12345678912」となるべきaの値が「12345678848」となってしまいます。
調査をお願いします。

※何故か \ 演算子で割る場合は問題なしです…。もしかしてDouble型の精度が関係しているとか?

ページトップ