[解答と解説] break
前ページの練習問題「【PHPプログラミング入門講座】[練習問題] break」の解答&解説です。
練習問題が解けたら、このページで答え合わせをしてみましょう!
練習問題1
次の内容をPHPプログラムで書く場合、[処理A]の部分を埋めてください。
配列$listに対してforeach文でループ処理を行い、配列$listの要素で「A」を見つけたら「Aを見つけました!<br>」と出力し、foreach文のループ処理を終了する。
<?php $list = ['P','R','O','G','R','A','M','M','I','N','G']; foreach($list as $name) { echo $name . '<br>'; [処理A] }
練習問題1の解答と解説
<解答>
<?php $list = ['P','R','O','G','R','A','M','M','I','N','G']; foreach($list as $name) { if($name === 'A') { echo 'Aを見つけました!<br>'; break; } }
<解説>
「配列$listの要素で『A』を見つけたら」は、「もし変数$nameの値が『A』だったら」ということですので、if文を使って変数$nameの値が「A」と等しいかどうかを判定します。
そして、「Aを見つけました!<br>」を出力してから、breakによりforeachループから脱出すればOKです。
練習問題2
次の内容をPHPプログラムで書く場合、[処理A]の部分を埋めてください。
14と15の最小公倍数を求める。
(最小公倍数とは、14と15の両方で割り切れる最小の数字のことです。)
最小公倍数が分かった時点で「**は14と15の最小公倍数です。<br>」と出力し、ループ処理を終了する。
(**の部分には、最小公倍数を出力してください。)
<?php $total = 0; while($total <= 1000) { $total += 14; [処理A] }
練習問題2の解答と解説
<解答>
<?php $total = 0; while($total <= 1000) { $total += 14; if($total % 15 == 0) { echo $total . 'は14と15の最小公倍数です。<br>'; break; } }
<解説>
変数$totalは初期値0で、whileループの中の「$total += 14;」の処理で、14を足し続けますので、常に14の倍数(14で割り切れる数字)になります。
その上で、最初に15で割り切れる数字だった場合は、その数字は14と15の最小公倍数になります。
というような処理になるので、変数$totalの値が15で割り切れるかどうかをif文を使って判定します。
対象となる数値が割り切れるかどうかを判定するには、余りを計算する代数演算子「%」を使い、余りが0かどうかをif文を使って判定します。
よって、if文の条件は「$total % 15 == 0」になります。
その次に「[求めた最小公倍数]は14と15の最小公倍数です。<br>」と出力し、breakによりwhileループから脱出すればOKです。
おわりに
お疲れ様でした。
いかがでしたでしょうか?
もし間違えた練習問題がありましたら、前の記事「【PHPプログラミング入門講座】break」戻って読み直し、再度、練習問題にチャレンジしてください。
正解できた人は、おめでとうございます!
次の記事に進んでいきましょう!
PHPプログラミング入門講座 〜 全記事一覧 〜
- PHPで開発された有名なWebサイト
- PHPでどのような機能が作れるか?
- サーバーについて理解しよう
- Webサーバーの処理について詳しく説明
- PHPプログラムの動作について説明
- パソコンにPHPの動作環境を構築しよう
- 一番簡単なPHPプログラムを書いてみよう
- ブラウザ画面にメッセージを表示しよう
- PHPタグの書き方と終了タグの省略
- 特殊なメッセージ(文字列)の書き方
- PHPプログラムで計算をしてみよう
- 変数
- 文字列の結合とヒアドキュメント
- ファイルの分割とファイルの読み込み
- コメント
- 定数
- 数値と文字列の性質・デバッグ
- 条件分岐 (if文)
- 論理型 (boolean型)
- 比較演算子
- 論理演算子
- 条件分岐 (switch文)
- 三項演算子
- 配列とforeach文
- 代入演算子 / 加算子 / 減算子
- ループ処理 (for文)
- ループ処理 (while文とdo-while文)
- break
- [練習問題] break
- 現在のページ:[解答と解説] break
- continue
- 連想配列
- 連想配列のループ処理