掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
SingleとDoubleで結果が違うのですが、、、 (ID:83567)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
Singleは 32Bit Doubleは64Bit これとデータの表現は関係ない 表現=精度ではない Dim DDT As Double Dim SDT As Single DimStringdata As String StringData=Format(DDT,"#####.###########") StringDAta=Format(SDT,"#####.###########") こんなにすればともに同じ桁表示するが精度はもちろん Doubleがより真値に近い。 Single は不正確。せいせい5桁までしか信用できない。 どちらでも 小数点10桁表示しようとすれば表示します。 表示をシステムに任せると、ちょうどきりのいいところで表示をとめる。 Singlede計算すると割り切れないので長々と表示するとしても 精度は5−6桁 Doubleは約10桁 Doubleで計算して、精度上きりがよければ5桁までしか出ない場合もある。 元来、Double 64Bit 指数部 8 Bit{桁Bit} 仮数部 (64−8)ビット Single 32Bit 指数部 8 仮数部(32−8)Bit マシンやOSにより 8が12になったりするばあいもある! この場合、Doubleが精度を若干犠牲にして大きな桁 10の何桁 を表せる。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.