○復習:プログラミングの基礎と詳細
今までの復習を簡単にしておきましょう。
○VBの基本的な操作や各名称などについてはだいじょうぶですか?
○プログラミングについて;
- 変数と代入、そして演算、命令(ステップ)の順番とアルゴリズム
現在までは上記について勉強しました。要点を下記に再度解説します。
- 変数と変数名 及び代入
- 変数はプログラム内でプログラマが自由に使える一時的なしまい場所(箱)。
- 変数には何らかの値を保存(記憶)しておくことができ、プログラムでは代入命令「=」を使う。
- 代入命令「=」は右辺の結果を左辺の変数もしくはプロパティに代入するもので、等しいといいう意味ではないことに注意。
- 変数は記憶するだけでなく、呼び出して参照することもできる。
- 変数を利用するには自分で適当な変数名をつける必要がある。
- 演算
- 基本的な演算である、四則演算(加減乗除)は、「+ - * /」という記号を用いる。
- 計算式には優先順位があり、掛け算(*)、割り算(/)が優先される。
- 優先順位を制御するには「( )」を利用する。「( )」はいくつでも何重にしてもよい。
- 加減乗除以外にも、割り算の商「\」や余り「Mod」、べき乗「^」を計算する算術演算子がある。
- 入出力
- 導入編での入力の方法は二つ。一つはInputBox()関数を利用するものと、もう一つはテキストボックスを利用するもの。
どちらも使えるようにしておきましょう。またユーザの操作の違いを明確に理解しておきましょう。
- 例えば、 x = InputBox("messages") もしくは x = Text1.Text などとする。
- なお、InputBox( )にて、数字を入力してもらう場合は、
Val( InputBox("") )
などとしよう。
- 導入編での出力方法は一つ。ラベルコントロールのTextプロパティを利用する方法。
- 例えば、Label1.Text = x などとする。
- 命令の順序とアルゴリズム
- プログラムは、複数の命令の羅列。
- プログラマーがコンピュータにさせたい順に命令(ステップ)が書かれている必要がある。
- コンピュータはプログラムされた順番に何も考えずに淡々と順々に1ステップづつ実行していくだけ。
- ある作業をどのように処理させるかを考えるのはプログラマーの責任かつ義務。
- プログラマーはコンピュータにさせたい作業を、プログラミング言語で伝える。
- 処理の流れ、つまり計算手順をアルゴリズムと呼ぶ。
- よってプログラムの基本は、まずはじっくりとアルゴリズム(処理の流れ)を考えること、そしてそれをVBの文法に従って表現することである。
- 注意点と例
- 上記の復習の中で、注意点及び簡単な例を示しておきます。
- 変数の初期値について;
- 変数はVBプログラマが自由に用意して利用できます。
- 導入編ではプログラマが使いたいときに勝手に適当な変数を使うことになっています。
- 初めて使われた変数には、既に値が記憶されています。これを初期値といいますが、通常は「0」が代入されています。
但し、もし「0」を代入したければ、プログラマが明示的に「0」を代入するようにプログラムすべきです。
- 変数の宣言について
- 変数を利用するためには、変数の宣言を、プログラムの先頭でしておく必要がある。
- 変数を宣言しないで利用(実行)すると、エラーとなる。
- 最終的に宣言されていればよいが、予めどのような変数を使うのか、プログラムを書く前に決めておこう。
- 変数の宣言には「Dim」命令を使用する。
- Dim命令の後ろに、使用する変数名を書く。複数行に何回もDimで宣言してもよいし、「,(カンマ)」で区切って1行に並べてもよい。
- 変数名について;
- 変数名は「先頭がaからz(大文字も可)のアルファベット(半角)で始まる連続した複数の英数文字」で構成されるというのが原則です。
- 但し「_」(アンダーバー)という記号も途中で利用できます。
- なお、変数名の大文字と小文字は区別されません。よって、x という変数も X という変数も同じものとなります。total と TOTAL、
Totalも全て同じ変数を指します。
- 利用可能な変数名の例は次の通りです。
- x
- y
- xyz
- total
- price
- x1
- x2
- a1b2c3
- AbcXyz
- abc_xyz
- total_1
- 利用不可能な変数名の例は次の通りです。
- 1xyz
- abc xyz
- *total*
- ---xyz---
- Text 注1
- date 注2
注1、注2;注1はプロパティの名称と同じなので変数としては利用できません。また注2は既に用意された関数と同じなので変数としては利用できません。なおこのような場合、プログラムすると先頭文字が大文字に勝手に変わったりするのである程度気が付きやすくなっています。
- 代入について;
- 既に何らかの値が記憶されている変数に、別の値を代入すると、前の値は綺麗に消えてしまい、新しい値が代入されます。
- 代入命令「=」は等しいという意味ではないことに十分に注意してください。
=の右を計算してその結果を左に代入するという順序になります。
- a = a + 1 という命令は文法的に間違いではなく、また立派な役目を果たします。
- まず右「a + 1」を計算して、その結果を左の「a」という変数に代入します。
- もしプログラム実行時変数「a」に「0」が記憶されていたとすれば、「a+1」の結果は 0+1 → 1となり、これがaという変数に代入されます。
- よって、上記一文によって、変数aの中は、「0」から「1」に変わるわけです。
- 他にも、 x = 2 : x = x* 2 : x = x * 2 という三つのステップが実行されると、変数xには、結果的に 2*2*2で8という値が代入されていることになります。
- 出力(ラベルへの表示)について;
- 結果などを出力する場合にラベルのTextプロパティを利用し、Label1.Text = 999 などとします。
- もう少し複雑な表示をすることもできます。例えば表示したい計算結果999が変数aに代入されているとし、「999になります」というような表示をさせたい場合、
以下のようにします。
Label1.Text = a & "になります"
- このように、「&」という記号でつなげて表示させることができます。またいくつつないでもOKです。
- 例えば、「x & "円が" & y & "個で" & z
& "円になります"」などとすることもできます。
- この「&」の前後にはしっかりとスペースを入れておきましょう。
- 正確には、「&」命令は2つの文字列を結合(連結)する命令です。
- ちなみに「+」も同様の意味を持つ命令です。勿論「+」は(数値の)足し算命令という意味もあり、複数の意味があることになります。
- よって、文字列の結合の場合は、「&」を使うようにした方が紛らわしくなくてよいです。
- 割り算の商、余りの計算例について;
- 割り算の商の部分(整数部分)は「\」で計算できる。
- 割り算の余りの部分(小数部分)は「Mod」で計算できる。
- 例えば、次のようなプログラムが可能である。
x = 7
y = 3
w = 7 / 3
s = 7 \ 3
a = 7 Mod 3
- 上記プログラムを実行すると、wには2.333...が、sには2が、aには1が代入されることになる。
参考キーワード;
プログラムの作成
コントロールを用意する
イベントプロシージャを記述する
プログラムを実行する
ファイルを保存する
保存ファイルを読み込む
Visual Basicを終了する
VBの基本操作
VBの画面構成
アプリケーション作成手順
アプリケーションの実行とデバッグ
ワンステップ実行
コントロール
コントロールの共通機能
・プロパティ項目の設定
・Textプロパティ
ボタン(Button)
ラベル(Label)
テキストボックス(TextBox)
その他
InputBoxによる入力取得
演算子
算術演算子
代入演算子
[「A班」プログラミング基礎のTopに戻る]