Toepassing van return in 'n lus in PHP

Dat return binne 'n lus geleë is, is nie altyd 'n fout nie.

In die volgende voorbeeld is 'n funksie gemaak wat bepaal hoeveel van die eerste elemente van die skikking opgetel moet word sodat die som groter of gelyk aan 10 word:

php<?php
  function func($arr) {
    $length = count($arr);
    $sum = 0;
    
    for ($i = 0; $i < $length; $i++) {
      $sum += $arr[$i];
      
      // As die som groter of gelyk aan 10 is:
      if ($sum >= 10) {
        return $i + 1; // verlaat die lus en die funksie
      }
    }
  }
  
  $res = func([1, 2, 3, 4, 5]);
  echo $res;
?>

En in die volgende voorbeeld is 'n funksie gemaak wat bereken hoeveel heelgetalle, vanaf 1, opgetel moet word sodat die resultaat groter as 100 is:

php<?php
  function func() {
    $sum = 0;
    $i = 1;
    
    while (true) { // oneindige lus
      $sum += $i;
      
      if ($sum >= 100) {
        return $i; // die lus draai totdat dit hier uitbreek
      }
      
      $i++;
    }
  }
  
  echo func();
?>
Задание 1

Skryf 'n funksie wat 'n getal as parameter sal aanvaar en dit deur 2 deel soveel keer totdat die resultaat minder as 10 is. Laat die funksie die aantal iterasies teruggee wat nodig was om die resultaat te bereik.