Break-ohje PHP:ssä

Oletetaan, että meillä on seuraava silmukka, joka tulostaa taulukon elementit näytölle:

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

Oletetaan, että tehtävänämme on määrittää, onko taulukossa numero 3. Jos on, tulostamme näytölle '+++' (ja jos ei, emme tee mitään).

Ratkaistaan tehtävämme:

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

Tehtävä on ratkaistu, mutta on ongelma: sen jälkeen, kun numero 3 on löytynyt, taulukkoa jatketaan silti merkityksettömästi läpikäymällä edelleen, tuhlaamalla arvokkaita suorittimen resursseja ja hidastaen skriptimme toimintaa.

Optimaalisempaa olisi keskeyttää silmukan suoritus välittömästi numeron löytymisen jälkeen. Tämä on mahdollista erityisohjeella break, joka mahdollistaa silmukan ennenaikaisen keskeyttämisen.

Niinpä, keskeytetään silmukka heti, kun kohtaamme numeron 3:

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

Break-ohje voi keskeyttää mitkä tahansa silmukat: foreach, for, while.

Задание 1

Annettu taulukko numeroita. Käynnistä silmukka, joka tulostaa vuorotellen tämän taulukon alkiot konsoliin, kunnes vastaan tulee alkio, jonka arvo on 0. Tämän jälkeen silmukan tulee keskeyttää toimintansa.

Задание 2

Annettu taulukko numeroita. Etsi alkioiden summa taulukon alusta ensimmäiseen negatiiviseen numeroon asti.

Задание 3

Annettu taulukko numeroita. Etsi ensimmäisen numeron 3 sijainti tässä taulukossa (oletamme, että tämä numero on varmasti taulukossa).

Задание 4

Määritä, kuinka monta kokonaislukua, alkaen numerosta 1, on laskettava yhteen, jotta summa ylittäisi 100.