乗算演算子 * [VB]

VB2012-2019

乗算演算子は*(アスタリスク)

乗算(掛け算)するためには乗算演算子*(アスタリスク)を使います。英字の「X」や「x」ではありません。

・正:5 * 2

・誤:5 X 2、5 x 2

オーバーフロー(桁あふれ)に注意

変数を使って乗算したり、その結果を代入するためには、データ型として、 Integer型 や Long型など数値型を宣言します。

乗算した結果、大きな数値になると、変数に入りきらないことがあります。このような現象を「オーバーフロー」と言います。小さなデータ型を宣言する場合には、オーバーフローに注意してください。

それでは、乗算演算子を使った簡単なサンプルプログラムを作成します。

ソースリストの枠内をクリックすると全選択できます。

Module Module1

  Sub Main()
     ' 整数値変数の宣言と代入
     Dim anser As Integer = 0

     ' 乗算(掛け算)
     ' anserは 10
     anser = 5 * 2
     Console.WriteLine(anser)
     ' anserは 0
     anser = 0 * 2
     Console.WriteLine(anser)

     ' 整数値変数の宣言と代入
     Dim a As Integer = 3
     Dim b As Integer = 11

     ' anserは 33
     anser = a * b
     Console.WriteLine(anser)

     ' 負の整数を使った例
     Dim c As Integer = -1
     Dim d As Integer = 6

     ' anserは -6
     anser = c * d
     Console.WriteLine(anser)

     ' 演算に使った変数に再度代入
     ' cは -3
     c = c * 3
     Console.WriteLine(c)
     ' cは -18
     c = c * d
     Console.WriteLine(c)
  End Sub

End Module

オーバーフローするサンプルプログラム

数値変数の使い方の注意点として、演算した結果が変数に入りきらない(オーバーフローと言う)プログラムの例です。実行するとエラー画面が表示され、演算結果は表示されません。

Module Module1

  Sub Main()
     ' 整数値変数の宣言と代入
     Dim a As Integer = 100000000
     Dim b As Integer = 1000
     Dim ans As Integer = 0

     ' 演算結果は、ans変数には入りきらない大きい整数値
     ans = a * b
     Console.WriteLine(ans)
  End Sub

End Module

[Ctrl]キーを押したまま、[F5]キーを押して実行すると、しばらくすると、下のように「・・・・・は動作を停止しました」のダイアログボックスが表示されので、[プログラムの終了]ボタンをクリックします。

エラーダイアログボックス

さらに、「ハンドルされていない例外: System.OverflowException: 算術演算の結果オーバーフローが発生しました。」の実行画面が表示されます。何かキーを押すと、プログラムが終了して、この画面が閉じます。

注意:図は右のほうが切れています。

例外