Ужыванне return у цыкле ў PHP

Toе, што return размешчаны ўнутры цыклу, не заўсёды можа быць памылкай.

У наступным прыкладзе зроблена функцыя, якая вызначае, колькі першых элементаў масіву трэба скласці, каб сума стала большая або роўная 10:

php<?php
  function func($arr) {
    $length = count($arr);
    $sum = 0;
    
    for ($i = 0; $i < $length; $i++) {
      $sum += $arr[$i];
      
      // Калі сума большая або роўная 10:
      if ($sum >= 10) {
        return $i + 1; // выходзім з цыклу і з функцыі
      }
    }
  }
  
  $res = func([1, 2, 3, 4, 5]);
  echo $res;
?>

А ў наступным прыкладзе зроблена функцыя, якая вылічвае, колькі цэлых лікаў, пачынаючы з 1, трэба скласці, каб вынік быў большы за 100:

php<?php
  function func() {
    $sum = 0;
    $i = 1;
    
    while (true) { // бясконцы цыкл
      $sum += $i;
      
      if ($sum >= 100) {
        return $i; // цыкл круціцца пакуль не выйдзе тут
      }
      
      $i++;
    }
  }
  
  echo func();
?>
Задание 1

Напішыце функцыю, якая параметрам будзе прымаць лік і дзяліць яго на 2 столькі разоў, пакуль вынік не стане меншы за 10. Хай функцыя вяртае колькасць ітэрацый, якая спатрэбілася для дасягнення выніку.