VBの浮動小数点数型(Double / Single)について
Visual Basic(VB)では、小数を扱う際に 浮動小数点数型 を使用します。主に使われるのが Double
型と Single
型の2種類で、これらはともに小数点を含む数値を扱うためのデータ型です。
Double型とSingle型の違い
どちらも小数を扱えますが、精度やメモリ使用量に違いがあります。
型名 |
特徴 |
精度 |
使用例 |
Double |
倍精度型でより高精度 |
約15〜16桁 |
金額、科学計算など |
Single |
単精度型でメモリ効率が良い |
約7桁 |
簡易的な小数、グラフィック処理など |
変数の宣言と代入
浮動小数点数型の変数は、以下のように Dim
文を使って宣言します。
Dim weight As Double
Dim rate As Single
weight = 55.5
rate = 0.75
演算に使用可能
DoubleやSingleは四則演算などに使うことができます。
Dim price As Double = 1980.5
Dim tax As Double = 0.1
Dim total As Double
total = price * (1 + tax)
数値型との比較
IntegerやLongと異なり、小数点を扱える点が最大の特徴です。金額や割合、平均値などの計算では必須となります。
注意点:誤差と桁数
コンピュータでの小数計算は、誤差が生じることがあります。たとえば、計算結果が「1.00000000001」のようにズレることがあるため、特に金額処理には注意が必要です。
正確な小数の比較には、値の差を許容範囲内で見るなどの工夫が必要です。
型変換(キャスト)
他の型からDoubleやSingleに変換したい場合は、CDbl()
や CSng()
を使います。
Dim strNum As String = "123.45"
Dim d As Double = CDbl(strNum)
Dim s As Single = CSng(strNum)
実用例:割引計算
Dim originalPrice As Double = 5000
Dim discountRate As Double = 0.2
Dim finalPrice As Double
finalPrice = originalPrice * (1 - discountRate)
MsgBox "割引後の価格は " & finalPrice & " 円です"
まとめ
Double型・Single型は、Visual Basicで小数を扱う際に欠かせないデータ型です。扱う数値の精度や処理の目的によって使い分けることで、効率的で信頼性の高いプログラムを作成できます。とくに金額・割合・計測値などにはDouble型を使うのが一般的です。