Zastosowanie return w pętli w PHP

To, że return znajduje się wewnątrz pętli, nie zawsze musi być błędem.

W następującym przykładzie stworzono funkcję, która określa, ile pierwszych elementów tablicy trzeba zsumować, aby suma stała się większa lub równa 10:

php<?php
  function func($arr) {
    $length = count($arr);
    $sum = 0;
    
    for ($i = 0; $i < $length; $i++) {
      $sum += $arr[$i];
      
      // Jeśli suma jest większa lub równa 10:
      if ($sum >= 10) {
        return $i + 1; // wychodzimy z pętli i z funkcji
      }
    }
  }
  
  $res = func([1, 2, 3, 4, 5]);
  echo $res;
?>

A w następującym przykładzie stworzono funkcję, która oblicza, ile liczb całkowitych, zaczynając od 1, trzeba zsumować, aby wynik był większy niż 100:

php<?php
  function func() {
    $sum = 0;
    $i = 1;
    
    while (true) { // pętla nieskończona
      $sum += $i;
      
      if ($sum >= 100) {
        return $i; // pętla kręci się, aż wyjdzie tutaj
      }
      
      $i++;
    }
  }
  
  echo func();
?>
Задание 1

Napisz funkcję, która jako parametr będzie przyjmować liczbę i dzielić ją przez 2 tyle razy, aż wynik stanie się mniejszy niż 10. Niech funkcja zwraca liczbę iteracji, które były potrzebne do osiągnięcia wyniku.