Developer

【PHP問題演習】if文 プログラム作成問題
2022.10.31
Lv2

【PHP問題演習】if文 プログラム作成問題

【PHP問題演習】if文 プログラム作成問題

今回はif文のプログラムを作成して、理解度の確認を行いましょう。

■問題

出身地を格納する変数 $prefecture と年齢を格納する変数 $age を宣言し、
変数の値によって以下のメッセージが出力されるプログラムを作成してください。
また、出力されるメッセージは $message に格納し、出力してください。

<条件>出身地が「東京都」の場合のみ、年齢が「20」歳以上かを判別するプログラム。

・出身地が「東京都」で、年齢が「20」歳以上の場合
→ 「20歳以上です」と表示
・出身地が「東京都」で、年齢が「20」歳未満の場合
→ 「20歳未満です」と表示
・出身地が「東京都」でない場合
→ 「出身地が東京都ではありません」と表示


<?php
    $prefecture = '東京都'; // 出身地
    $age = 20;  // 年齢

    /* 
        上記変数を使用して、問題の条件を満たすプログラムを作成
    */

    echo $message; // メッセージの表示
?>

■解答

解答例
[php]

<?php
$prefecture = ‘東京都’; // 出身地
$age = 20; // 年齢

if($prefecture == ‘東京都’){
if($age >= 20) {
$message = ’20歳以上です’;
} else {
$message = ’20歳未満です’;
}
} else {
$message = ‘出身地が東京都ではありません’;
}

echo $message; // メッセージの表示
?>
[/php]

■解説

まず、今回の条件として挙げられるのが、
出身地が「東京都」か、年齢は「20」歳以上か、の2つとなります。

出身地が「東京都」 かつ 年齢が「20」歳以上のとき
のように条件式を書くこともできますが
今回の場合、年齢の条件は
出身地が「東京都」の条件を満たした場合のみ
判別する必要があります。

なので、まずは出身地の条件分岐をif文で作成してみましょう。
以下が作成した例となります。

[php] <?php
$prefecture = ‘東京都’; // 出身地
$age = 20; // 年齢

if($prefecture == ‘東京都’){
// ①出身地が「東京都」の場合に実行する処理
} else {
// ②出身地が「東京都」以外の場合に実行する処理
}

echo $message; // メッセージの表示
?>
[/php]

次に、年齢が「20」歳以上かどうかを判別する処理は、
出身地が「東京都」の場合のみ行うので、
①の箇所に年齢の判別を行うif文を追加しましょう。

[php] <?php
$prefecture = ‘東京都’; // 出身地
$age = 20; // 年齢

if($prefecture == ‘東京都’){
if($age >= 20) {
$message = ’20歳以上です’;
} else {
$message = ’20歳未満です’;
}
} else {
// ②出身地が「東京都」以外の場合に実行する処理
}

echo $message; // メッセージの表示
?>
[/php]

最後に、出身地が「東京都」以外の場合は
年齢の判別を行わず、決まったメッセージを出力するため
②の箇所でその処理を記述しましょう。

[php]

<?php
$prefecture = ‘東京都’; // 出身地
$age = 20; // 年齢

if($prefecture == ‘東京都’){
if($age >= 20) {
$message = ’20歳以上です’;
} else {
$message = ’20歳未満です’;
}
} else {
$message = ‘出身地が東京都ではありません’;
}

echo $message; // メッセージの表示
?>
[/php]

これで完成です。
この解答例以外でも同様に動作するプログラムは作成できます。
他にどのようなプログラムが作成できるか試してみるのもよいでしょう。

■関連記事

PHP基礎 連載目次リンク

PHP基礎 連載目次