第2講 変数を理解しよう
第7話 浮動小数点型変数
第6話問題コーティング例
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'変数の宣言
Dim a As Integer, b As Integer, c As Integer
'TextBoxから値の取得
a = TextBox1.Text
b = TextBox2.Text
c = TextBox3.Text
'各種計算と表示
TextBox4.Text = a + b
TextBox5.Text = a - b
TextBox6.Text = a * b
TextBox7.Text = a / b
TextBox8.Text = a + b + c
TextBox9.Text = a * b + c
TextBox10.Text = (a + b) * c
TextBox11.Text = a / b * c
End Sub
End Class
実行結果例
さて、このプログラムを次のように変更すると問題が生じます。
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
'変数の宣言
Dim a As Integer, b As Integer, c As Integer, w As Integer
'TextBoxから値の取得
a = TextBox1.Text
b = TextBox2.Text
c = TextBox3.Text
'各種計算と表示
w = a + b
TextBox4.Text = w
w = a - b
TextBox5.Text = w
w = a * b
TextBox6.Text = w
w = a / b
TextBox7.Text = w
w = a + b + c
TextBox8.Text = w
w = a * b + c
TextBox9.Text = w
w = (a + b) * c
TextBox10.Text = w
w = a / b * c
TextBox11.Text = w
End Sub
End Class
実行結果例
割り算の入っている計算が正しくありません。
理由は、おわかりですね。
wは整数型変数ですからw = a * bによって、wに代入される際に整数に丸められてしまうのです。
この問題を解決するためにwを浮動小数点型変数に変更するためw As Integerをw As Single
に変更します。
すると、
と正しくなりました。
浮動小数点型変数とは、普通の小数のことです。
浮動小数点型変数と名前が難しいのは、
状況によっては自由に小数点が動くからです。
例えば、
1234.5は1.2345×1000とも表現することができます。
小数点が状況に応じて動くので浮動小数点型変数というのですが、
初心者の方は、浮動小数点型とはただの小数だと思ってください。
次の図の実行例を見ると
Singleの場合7桁であることがわかります。
Singleは単精度浮動小数点型変数といいます。
倍精度浮動小数点というのもあって、Doubleと宣言します。
w As Doubleとしてみると
となります。15桁であることがわかります。
vc++講義へ
vb講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
数学研究室に戻る