第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 Integerw As Single
に変更します。
すると、
追加
と正しくなりました。
浮動小数点型変数とは、普通の小数のことです。
浮動小数点型変数と名前が難しいのは、
状況によっては自由に小数点が動くからです。
例えば、
1234.5は1.2345×1000とも表現することができます。
小数点が状況に応じて動くので浮動小数点型変数というのですが、
初心者の方は、浮動小数点型とはただの小数だと思ってください。
次の図の実行例を見ると
高度化
Singleの場合7桁であることがわかります。
Singleは単精度浮動小数点型変数といいます。
倍精度浮動小数点というのもあって、Doubleと宣言します。
w As Doubleとしてみると
高度化2
となります。15桁であることがわかります。

第6話へ 第3講第1話へ

006

vc++講義へ
vb講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座

数学研究室に戻る