Visual Basic 2019 入門
11.ハイ&ローゲームを作ろう その4
今回は [ ハイ&ローゲームを作ろう その3 ] の続きです。
これまで IDE の使い方をメインとした内容でした。ここからはプログラミング言語の仕組みについても説明します。
変数とは
プログラムを組むとき数値や文字の情報を扱います。
その時には、変数(へんすう)を使うことになります。
例えばジュースの自動販売機ならば、変数として「 投入金額 」と「 おつり 」を
用意します。そして
「 投入金額 」ー「 ジュース代 」という計算式で「 おつり 」を算出します。
200 円、または、1000 円投入されることもあると思います。
投入された金額とジュース代により、おつりも変わってきます。
変化する値を記録するために変数を使うのです。
変数の特徴は次のものがあります。
ここでは簡単に説明していますが、実はもう少し複雑です。
プログラミング言語によっても多少違います。
くわしくは後で少しずつ説明していきます。
変数を使ってみよう
それでは実際に使ってみましょう。
まず、変数を使うには宣言をします。
例えば「これから kazu という変数を使います」という感じです。
ちなみに kazu は私が勝手に付けた名前です。
Dim kazu As Long
という宣言文を画像の位置に書き込みます。
テストをするため、Button1_Click の中を次のように変更します。
Button1_Click の中を変更しています。( 4 行目と 5 行目)
Label1.Text = "Hello Basic" を削除して次の2行を追加しました。
kazu = kazu + 1
Label1.Text = kazu
これで Button1 が押される度に次の処理が行われます。
・変数 kazu の内容に1ずつ足す
・ラベル Label1 に変数 kazu の内容を表示する
実行してみます。
Button1 をクリックすると Label1 の表示が1になります。
続けてクリックすると2,3,4…とカウントアップしていきます。
変数の宣言について
変数の宣言には「 型 」を指定する必要があります。
型とは、整数や文字列などのタイプのことです。
次のようになっています。
Dim 変数名 As 型
Dim kazu As Long
「 型 」は色々あります。よく使うものを表にしました。
他にもあるので、プログラミングに慣れてきたらネットで調べましょう。
型 (タイプ) | 内 容 | 備 考 |
---|---|---|
Long | 整数(符号あり) | -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 |
Decimal | 10 進数データ型 | 小数点が利用可能 |
String | 文字列 | 0 個 ~ 約 20 億個の Unicode 文字 |
Boolean | 論理型 | True または False |
小数点を使わないのであれば Long
小数点を使うのであれば Decimal
文字列ならば String
選択肢が二択ならば Boolean
を使うのがいいでしょう。
変数のスコープについて
スコープとは簡単に言うと有効範囲のことです。
これについての説明は長くなるので、いま覚えて欲しいことだけ説明します。
変数の宣言をする場所に気を付けてください。
今回のようにサブルーチンの外で宣言すると、すべてのサブルーチンで使えるようになります。
試しにサブルーチン Button2_Click でも使ってみましょう。
今度は変数 kazu を1ずつ引いてみます。
実行してみましょう。
Button1 を押すと1足されて、Button2 を押すと1引かれます。
1つの変数を2箇所で使っているのが分かりますね。
ちなみに、サブルーチンの中で宣言した変数は、そのサブルーチンの中だけでしか使えません。
そこで使うだけなら、必ずサブルーチン内で宣言するようにしましょう。
代入演算子とは
これまで使っている = は代入演算子と言われています。
kazu = kazu + 1
Label1.Text = kazu
これです。
右側の値を、左側の要素に入れるわけです。
右側は計算式(例:kazu + 1)でも OK です。
注意する点は、何でも代入できる訳ではないことです。
左右のタイプが違うと代入できないこともあります。
例えば整数を扱う変数に、文字列は代入できないのです。
Dim kazu As Long
kazu = "Hello Basic"
. . . . . . (エラーになる)
次のパターンは少し特殊です。
Dim moji As String
moji = 200 + 500
これはエラーにならず moji の中には "700" という文字列が代入されます。
もし "200 + 500" という文字列を代入したいのなら次のように書きます。
moji = "200 + 500"
というように書きます。
数値を文字列として扱いたいときには " (ダブルコーテーション) で囲むことを覚えておいてください。