If文

 プログラムの処理を条件により分岐させることができます。この分岐は、「もし、今日が平日ならば仕事に行く」というように、日常でも「もし、~であれば、~する」という場面が多くあります。それをプログラムで表現するために使用できる命令文として、If文があります。

If文の書式1
If 条件式 Then
 処理
End If

if文
if文

○ プロジェクト

 次のようにプロジェクトを作成してください。

プロジェクトの種類 コンソール アプリケーション
プロジェクト名 IfTest1

サンプルダウンロード

○ プログラム

 次のようにプログラムを入力してください。

  1. Sub Main()
  2.  '変数の宣言
  3.  Dim str As String
  4.  'データを入力
  5.  Console.Write("「平日」か「休日」を入力してください:")
  6.  str = Console.ReadLine()
  7.  '平日の場合、メッセージを表示
  8.  If str = "平日" Then
  9.   Console.WriteLine("今日は仕事があります。")
  10.   Console.ReadLine()
  11.  End If
  12. End Sub

○ 実行結果

「平日」か「休日」を入力してください:平日
今日は仕事があります。
--------------------------------------------------------------------------------------------------------------------
「平日」か「休日」を入力してください:休日
(終了)

○ 解説

 9行目のConsole.WriteLine()はキーボードからのデータを受け付ける命令です。この命令を実行すると、コマンドプロンプト上で入力待ち状態になります。今回のプログラムはキーボードから入力されたデータを変数strに格納しています。

 12行目で入力したデータを比較しています。条件として変数strに格納されているデータが“平日”と等しければ、13行目の命令文で画面に表示されます。条件が満たされない場合は何も処理しません。

 次に、「もし、今日が平日ならば仕事に行く、その他の場合は、遊びに行く」というような、「もし、~であれば、~をし、その他の場合は、~する」という条件を見てみましょう。

If文の書式2
If 条件式 Then
 処理1
Else
 処理2
End If

if文
if文

○ プロジェクト

 次のようにプロジェクトを作成してください。

プロジェクトの種類 コンソール アプリケーション
プロジェクト名 IfTest2

サンプルダウンロード

○ プログラム

 プロジェクトを作成して確認してみましょう。実行するとコンソールに結果が表示されます。

  1. Sub Main()
  2.  '変数の宣言
  3.  Dim str As String
  4.  'データを入力
  5.  Console.Write("「平日」か「休日」を入力してください:")
  6.  str = Console.ReadLine()
  7.  '入力データによって処理を分岐
  8.  If str = "平日" Then     '平日の場合
  9.   Console.WriteLine("今日は仕事があります。")
  10.  Else     '休日の場合
  11.   Console.WriteLine("今日は遊びに行きましょう。")
  12.  End If
  13.  Console.ReadLine()
  14. End Sub

○ 実行結果

「平日」か「休日」を入力してください:平日
今日は仕事があります。
--------------------------------------------------------------------------------------------------------------------
「平日」か「休日」を入力してください:休日
今日は遊びに行きましょう。

○ 解説

 12行目で入力したデータを比較しています。条件として変数strに格納されているデータが”平日”と等しければ、13行目の命令文で画面に表示されます。14行目でElse文が記述されているので、条件が満たされない場合は15行目の命令文でメッセージが表示されます。

 入力内容によって“今日は仕事があります。”か、”今日は遊びに行きましょう。”が表示されます。今回のサンプルでは”平日”と入力されれば”今日は仕事があります。“と表示され、それ以外を入力すると”今日は遊びに行きましょう。“と表示されます。

 次に、「もし、今日が平日ならば仕事に行く、その他もし、休日ならば遊びに行く、その他の場合は、なにもしない」というような、「もし、~であれば、~をし、その他もし~であれば、~をし、その他の場合は、~する」という条件を見てみましょう。

If文の書式3
If 条件式1 Then
 処理1
Else If 条件式2 Then
 処理2
Else
 処理3
End If

if文
if文

○ プロジェクト

 次のようにプロジェクトを作成してください。

プロジェクトの種類 コンソール アプリケーション
プロジェクト名 IfTest3

サンプルダウンロード

○ プログラム

 プロジェクトを作成して確認してみましょう。実行するとコンソールに結果が表示されます。

  1. Sub Main()
  2.  '変数の宣言
  3.  Dim str As String
  4.  'データを入力
  5.  Console.Write("「平日」か「休日」を入力してください:")
  6.  str = Console.ReadLine()
  7.  '入力データによって処理を分岐
  8.  If str = "平日" Then     '平日の場合
  9.   Console.WriteLine("今日は仕事があります。")
  10.  ElseIf str = "休日" Then     '休日の場合
  11.   Console.WriteLine("今日は遊びに行きましょう。")
  12.  Else
  13.   Console.WriteLine("今日は家でおとなしくしていましょう。")
  14.  End If
  15.  Console.ReadLine()
  16. End Sub

○ 実行結果

「平日」か「休日」を入力してください:平日
今日は仕事があります。
--------------------------------------------------------------------------------------------------------------------
「平日」か「休日」を入力してください:休日
今日は遊びに行きましょう。
--------------------------------------------------------------------------------------------------------------------
「平日」か「休日」を入力してください:その他
今日は家でおとなしくしていましょう。

○ 解説

 12行目で入力したデータを比較しています。条件として変数strに格納されているデータが”平日“と等しければ、13行目の命令文で画面に表示されます。14行目でElseIf文が記述されているので、さらに入力データを比較しています。条件として変数strに格納されているデータが”休日”と等しければ、15行目の命令文で画面に表示されます。16行目でElse文が記述されているので、条件が満たされない場合は17行目の命令文でメッセージが表示されます。

 ElseIf文は複数指定することができます。また、Else文は省略することもできます。

 次に条件文に複数の条件を指定する方法を見てみましょう。複数の条件を組み合わせて一つの条件として扱います。その方法として論理積と論理和があります。そして論理否定も確認してみましょう。

前へ   次へ