Inštrukcia break v PHP

Majme takýto cyklus, ktorý vypisuje prvky poľa na obrazovku:

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

Predpokladajme, že našou úlohou je zistiť, či sa v poli nachádza číslo 3. Ak áno, vypíšeme na obrazovku '+++' (a ak nie - neurobíme nič).

Poďme vyriešiť našu úlohu:

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

Úloha je vyriešená, avšak existuje problém: po tom, ako bolo číslo 3 nájdené, pole sa aj naďalej zbytočne prechádza, čím sa míňajú cenné prostriedky procesora a spomaľuje sa práca nášho skriptu.

Bolo by optimálne ukončiť beh nášho cyklu okamžite po nájdení čísla. To sa dá urobiť pomocou špeciálnej inštrukcie break, ktorá umožňuje predčasne ukončiť prácu cyklu.

Poďme teda ukončiť cyklus hneď, ako narazíme na číslo 3:

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

Inštrukcia break môže ukončiť akýkoľvek cyklus: foreach, for, while.

Задание 1

Dané je pole s číslami. Spustite cyklus, ktorý bude postupne vypisovať prvky tohto pola do konzoly, až kým nenarazí na prvok s hodnotou 0. Potom sa cyklus má ukončiť.

Задание 2

Dané je pole s číslami. Nájdite súčet prvkov, umiestnených od začiatku poľa až po prvé záporné číslo.

Задание 3

Dané je pole s číslami. Nájdite pozíciu prvého čísla 3 v tomto poli (predpokladáme, že toto číslo sa v poli určite nachádza).

Задание 4

Určite, koľko celých čísel, počnúc číslom 1, je potrebné sčítať, aby súčet bol väčší ako 100.