目次に戻る
前のページへ
次のページへ

場合分けしよう (if文)

さて、このプログラムはまだ賢くないので、上の欄が空っぽのときにボタンを押しても、下の欄に「さん」と表示してしまいます。これは変ですね。そこで、上の欄が空であるときは警告を表示するようにしましょう。

まずは、警告欄を作ります。「入力欄を作ろう」でやったように、入力欄をもう1つ作り、それを警告欄としましょう。

入力欄が1つ増えたフォーム

警告欄が「Edit1」ではわかりにくいですから、この欄の名前(Name)を「EditWarning」にし、表示内容(Text)を空にしましょう。

次にプログラムを書き換えます。次のように入力してください。(実際に入力するのは下線部だけです。)

void __fastcall TForm1::Button1Click(TObject *Sender)

{

if (EditFrom->Text == "") {

EditWarning->Text = "ちゃんと入力して!";

}

EditTo->Text = EditFrom->Text + "さん";

}

うまく動きましたか。

このプログラムを解説します。今回書き足した3行は if 文とか条件分岐とか呼ばれるもので、基本的に次の形をしています。

if (条件) {

処理; (何行でもよい)

}

もっと具体的な例で示しましょう。「もし天気が雨なら傘を持っていく」という行動をプログラムで表すと、次のようになります。

if (天気 == ) {

傘を持っていく;

}

また、「=」ではなく「==」と2つ続けていることも不思議に見えるかも知れません。C言語では、「=」は右の値を左に代入することを表し、「==」は左右の値を比較することを表します。そのため、if 文では「==」を用います。