ICTメディア編集U 20251128

 

Visual Basicのプログラミング練習1(条件分岐:if文)

 

ここでは、プログラムコード(動作命令)の代表的な1つとして,Ifとよばれる条件分岐などについて説明し,プログラミングの練習を行っていきます.

 

条件分岐とは,もし何かの条件を満たせば処理1(コード1など)を行い,条件を満たさないならば処理2を行うというような,条件を満たすか否かによって処理を変えたい場合に使います.この条件分岐に「If文」と呼ばれるコード(命令)があります.(ここでIf文とは「もしもならばこれをしなさい」という意味です。)

 If文の動作命令は以下のような書き方になります.(IfthenElseEnd Ifがセットとなっています.)

 

If ( 条件文 ) Then

条件文が満たされるときに,実行されるコードの行

(次のElseというコードまでは,何行でもよい)

コード1(処理1)

Else

条件文が満たされないときに,実行されるコードの行

(次のEnd IFというコードまでは,何行でもよい)

コード2(処理2)

End If

 

「もし条件文を満たすならば,コード1(処理1を実行し,満たさなければコード2(処理2)を実行しなさい」 となります.

 

 

たとえば今変数の A が1より大きいならばA-1、1以下ならば A+1 を計算するとする。

これを代入ステートメントとIf文で書くと

 

If ( A > 1 ) Then

A=A-1

Else

A=A+1

End If

 

と書けます。


参考:条件の判定が連続する場合は,ElseIfを使って条件をつなげていくことができます.

If ( 条件文1 ) Then

条件文1満たされるときに,実行されるコードの行

(次のElseIfというコードまでは,何行でもよい)

コード1

ElseIf ( 条件文2 ) Then

条件文1満たされずに,条件文2が満たされるときに,実行されるコードの行

(次のElseというコードまでは,何行でもよい)

コード2

Else

条件文1と条件文2の両方が満たされないときに,実行されるコードの行

(次のEnd Ifというコードまでは,何行でもよい)

コード3

End If

 

「もし条件文1を満たすならば,コード1を実行し,それを満たずにもし条件文2を満たすならば,コード2を実行し,さらに,2つとも満たさなければ,コード3を実行しなさい」

となります.

 

 


 

演習(条件分岐:if文) 

先ほど作成したプログラムを改良にして、以下のようなプログラムを作成しましょう。

 

先ほどの押しボタンプログラム(“WindowsApp1.exe”)は,一度,“クリック”のボタンが押されたら,“終 了”とボタンに表示するものでしたが,そのあと,“終 了”のボタンを押しても何も起こりませんでした.

条件分岐のif文を使って,“クリック”のボタンが押されたら,“終 了”とボタンに表示し,“終 了”のボタンが押されたら,“クリック”とボタンに表示するプログラムを作ってください.

 

1.     WindowsApp1.vbproj」(もしくはWindowsApp1.sln)をダブルクリックして開くかVisual Basicが立ち上がっていれば,ファイルのプロジェクトを開くからWindowsApp1.vbprojのファイルを開いてください.

 

2.     ヒント:if文の中の判定は,ボタンに書かれた表示されている文字(Button1.Text)がどの文字であるかによって,実行する命令として,次にボタンに表示する文字を何にするのか指定します.今回は,Button1.Text = "クリック"であれば,どうするのかをif文で判定し,それ以外は,どうするのかをコードで書けばいいことになります.

 

3.     実行し,うまく動作したならば,全てのファイルを上書きして保存してください.ファイルは,新しくなったはずです.

 

 


演習の回答例)

1) 以下のようにフォームデザイナにツールボックス上のButtonのツールを使ってボタンを1つ配置し,それぞれのプロパティで最初の表示文字を「クリック」にかえておく.これは,既に先ほどのプログラム作成で行っています.

 

2) ボタン(Button1という名前)をクリックし,コードエディタウインドウを使って,以下のように入力する

 

        If (Button1.Text = "クリック") Then

            Button1.Text = "終 了"

        Else

            Button1.Text = "クリック"

        End If

 

3) ツールバーの開始のボタン(メニューバーの“実行”の中の“開始”でもよい)を押し,プログラムを実行してみる.

 

ボタンをクリックし,上図と下図の繰り返しができれば,完成

 

完成したら、すべてを保存で、ファイルを上書き保存しておきましょう。

実行形式のファイルでもプログラムを実行してみましょう.

 

 



参考:条件の判定が連続する場合は,ElseIfを使って条件をつなげていくことができます.

If ( 条件文1 ) Then

条件文1が満たされるときに,実行されるコードの行

(次のElseIfというコードまでは,何行でもよい)

コード1

ElseIf ( 条件文2 ) Then

条件文1が満たされずに,条件文2が満たされるときに,実行されるコードの行

(次のElseというコードまでは,何行でもよい)

コード2

Else

条件文1と条件文2の両方が満たされないときに,実行されるコードの行

(次のEnd Ifというコードまでは,何行でもよい)

コード3

End If

 

「もし条件文1を満たすならば,コード1を実行し,それを満たずにもし条件文2を満たすならば,コード2を実行し,さらに,2つとも満たさなければ,コード3を実行しなさい」

となります.

 


 

練習問題1(条件分岐:if文)

以下の練習問題を行ってみましょう.(時間によっては,講義でここを省略するかもしれません.そのときは,各自,確認しておきましょう.回答例へのリンクが末尾にあります.)

 

さらに今作成したプログラムを改良して、上記の参考をみて,表示を1つ増やしたプログラムを作成しなさい。

 

上記の参考の説明をもとに,先ほどの押しボタンのプログラムを改良し,“クリック”のボタンが押されたら,“実行中”とボタンに表示し,“実行中”のボタンが押されたら,“終 了”とボタンに表示するプログラムを作ってください.

 

プログラムがうまく動作しましたら,全てを保存で上書き保存をしてください.

 練習問題(条件分岐:if文)の回答例のページへ

 

 

      時間があれば,プログラム練習2として,より具体的な問題を解くプログラムの作成を行います.

 

 


加藤のページへ | ICTメディア編集U | プログラミング練習2(条件分岐:if文,うるう年判定プログラム)