VBでの数値の扱いと丸め誤差

VB6,VBA,VBS,EXCEL,DOS,BAT,WSH,WORDの小技メモ

HTML/ CSS/ CGI-Perl/ JavaScript/ JavaApplet/ AccessUp/ Internet/ EnglishLearn/ ちゃいちゃん天使/ 天使メッセージ/ 飯田ワールド/ 結城ワールド/ プロフィール/ WEB相談室/ WEBアンテナ/ 燈明日記/ Perlノート/ 漢字起源/ yahoo

はじめに

本ページは、ウインドウズ系全般のティプスメモです。

そう、はじめはVB系のティプスメモだったのですが…いつの間にか、ウインドウズ系全般のティプスメモになってしまいました。

ちなみに、ティプス(Tips)とは、マニュアルに書かれていない技法や裏わざのことですが、本ページでは、私が経験してこれはと思ったノウハウのメモになっています。

尚、以下は本サイトの最新情報(ブログ)です。

それでは、本ページが何かのお役に立てれば幸いです。ごゆっくりご覧ください。

◆ VBでの数値の扱いと丸め誤差

VB.NETには、数値計算をするための型が、以下のように用意されています。

短整数型 (Short) 符号あり 2 バイト −32768 〜 32767
整数型 (Integer) 符号あり 4 バイト −231 〜 231−1
長整数型 (Long) 符号あり 8 バイト −263 〜 263−1
単精度浮動小数点数型 (Single) 浮動小数点 IEEE754 準拠 4 バイト ±1.5−45 〜 ±3.438
倍精度浮動小数点数型 (Double) 浮動小数点 IEEE754 準拠 8 バイト ±5.0−324 〜 ±1.7308
10 進型 (Decimal) 10 進数データ型 ±1.0−28 〜 ±7.928

VB6には、数値計算をするための型が、以下のように用意されています。

整数型 (Integer)符号あり 2 バイト −32768 〜 32767 小数部分は丸められる
長整数型 (Long) 符号あり 4 バイト -2147483648 〜 2147483647 小数部分は丸められる
通貨型 (Currency)符号あり 8バイト -922337203685477.5808 〜 922337203685477.5807
単精度浮動小数点数型(Single)-3.402823E38 〜 -1.401298E-45 (負の値)1.401298E-45 〜 3.402823E38 (正の値)
倍精度浮動小数点数型(Double)-1.79769313486232E308 〜 -4.94065645841247E-324 (負の値)4.94065645841247E-324 〜 1.79769313486232E308 (正の値)
10 進型 (Decimal)小数点以下が 0 桁 (小数部分を持たない数値) の場合-79228162514264337593543950335 〜 79,228162514264337593543950335

丸め誤差

小数点がある計算を浮動小数点数型で行うと丸め誤差が生じるので、正確さを要求される処理では、通貨型や10進型を使うのが一般的です。


丸め誤差等に関しては以下を参照。

おわりに

以下のページには、すべてのTIPSがあります。もしよろしければ、どうぞ!

尚、ご感想、ご意見、誤字、脱字、間違い等がありましたら遠慮なくVB-TIPS掲示板へご指摘ください。

人のよいところをどんどん見つけよう