引き算するためには、減算演算子 - を使います。変数には、Integer型やLong型の数値型を指定する必要があります。
-2,147,483,648 ~ 2,147,483,647までの整数を代入できます。計算結果にInteger型変数を宣言したときは、演算結果がこの範囲に収まる必要があります。
Dim kingaku As Integer
-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 までの整数を代入できます。
Dim kingaku As Long
-32,768 ~ 32,767 までの整数を代入できます。通常はInteger型を使います。
Dim otsuri As Short
Visual Basicには、多くの数値型があります。すべてのデータ型は、データ型の概要 (Visual Basic)を参考にしてください。
Integer型の変数に整数を代入して、減算演算子を使ったサンプルプログラムを作成します。
変数を宣言したら、同時に初期値を代入しています。
Module Module1 Sub Main() ' 整数値変数の宣言と初期値代入 Dim anser As Integer = 0 ' 減算 anser = 5 - 2 Console.WriteLine(anser) ' anserは 3 anser = 0 - 2 Console.WriteLine(anser) ' anserは -2 ' 整数値変数の宣言と代入 Dim a As Integer = 3 Dim b As Integer = 12 ' 減算 anser = a - b Console.WriteLine(anser) ' anserは -9 ' 負の整数を使った減算 Dim c As Integer = -1 Dim d As Integer = 4 ' 減算 anser = c - d Console.WriteLine(anser) ' anserは -5 End Sub End Module
変数の使い方の応用として、一度演算に使った変数に、演算結果を代入する例を加算演算子でも紹介しましたが、減算演算子でも同じことができます。
この方法を使うと、anser = i - 1 を、
i = i - 1
のようにプログラミングすることで、anser変数を使わずに済みます。
Module Module1 Sub Main() ' 整数値変数の宣言と初期値代入 Dim i As Integer = 10 ' i変数から1を引いて、再度i変数に代入 i = i - 1 Console.WriteLine(i) ' i は 9 ' さらにi変数から1を引いて、再度i変数に代入 i = i - 1 Console.WriteLine(i) ' i は 8 End Sub End Module

他の算術演算子と同様に、新たな変数を宣言する必要がなく、また便利なのでプログラムでは良くみかけます。新たな変数をひとつ宣言しないで済み、慣れれば便利です。このような場面は数多くあるはずです。機会があったら積極的に使いましょう。
次回は、乗算演算子* について勉強します。
| ◆ VB 文法 目次へ◆ |
|---|
| 文字列を表示する |
| Dim 変数の宣言 |
| = 代入演算子 |
| キーボード入力 |
| & 文字列連結演算子 |
| 3つ以上の文字列を連結 |
| 文字列を改行する |
| + 加算演算子 |
| - 減算演算子 |
| * 乗算演算子 |
| / 除算演算子 |
| ¥ 整数除算演算子 |
| Mod 整数剰余演算子 |
| ^ べき乗(累乗)演算子 |
| += -= *= /= |
| \= ^= &= |
| ◆ VB 文法 目次へ◆ |
|---|
| Day() |
| Fix() |
| Format() 数値編 |
| Hour() |
| Int() |
| IsNumeric() |
| LTrim() |
| Minute() |
| Month() |
| RTrim() |
| Second() |
| Space() |
| Trim() |
| Year() |
| ◆ VB 文法 目次へ◆ |
|---|
| Math.Absメソッド |
| Math.Ceilingメソッド |
| Math.Floorメソッド |
| Math.Maxメソッド |
| Math.Minメソッド |
| Math.Roundメソッド |
| Math.Signメソッド |
| Math.Truncateメソッド |