PHPにおけるbreak命令

例えば、配列の要素を画面に表示する 以下のようなループがあるとします:

php<?php
  $arr = [1, 2, 3, 4, 5];
  
  foreach ($arr as $elem) {
    echo $elem;
  }
?>

ここで、配列内に数字3が存在するかどうかを 判定するタスクがあるとします。存在する場合は 画面に'+++'を表示します(存在しない場合は 何もしません)。

このタスクを解決してみましょう:

php<?php
  $arr = [1, 2, 3, 4, 5];
  
  foreach ($arr as $elem) {
    if ($elem == 3) {
      echo '+++';
    }
  }
?>

タスクは解決されましたが、問題があります: 数字3が見つかった後も、配列の不要な 走査が無意味に続き、貴重なCPUリソースを消費し、 スクリプトの動作を遅くしています。

数字を見つけた直後にループの処理を終了する方が 効率的です。これは、ループを早期終了させるための 特別な命令breakを使用して行うことができます。

それでは、数字3に遭遇したらすぐに ループを終了させましょう:

php<?php
  $arr = [1, 2, 3, 4, 5];
  
  foreach ($arr as $elem) {
    if ($elem == 3) {
      echo '+++';
      break; // ループから抜けます
    }
  }
?>

break命令は、あらゆる種類のループを終了させることができます: foreach、for、while。

Задание 1

数値の配列が与えられます。値0の要素に 遭遇するまで、この配列の要素を順番にコンソールへ 出力するループを実行してください。その後、 ループはその処理を終了する必要があります。

Задание 2

数値の配列が与えられます。配列の先頭から最初の 負の数までにある要素の合計を求めてください。

Задание 3

数値の配列が与えられます。この配列内における最初の 数字3の位置を見つけてください(この数字は 配列内に必ず存在するものとします)。

Задание 4

数字1から始めて、合計が100を超えるために 必要な整数の数を求めてください。