Použitie return v cykloch v JavaScript

To, že return je umiestnený vnútri cyklu, nie vždy musí byť chybou. V nasledujúcom príklade je vytvorená funkcia, ktorá určuje, koľko prvých prvkov poľa je potrebné sčítať, aby sa súčet stal väčším alebo rovným 10:

javascriptfunction func(arr) {
  let sum = 0;
  
  for (let i = 0; i < arr.length; i++) {
    sum += arr[i];
    
    // Ak je súčet väčší alebo rovný 10:
    if (sum >= 10) {
      return i + 1; // ukončíme cyklus a funkciu
    }
  }
}

let res = func([1, 2, 3, 4, 5]);
console.log(res);

A v nasledujúcom príklade je vytvorená funkcia, ktorá vypočítava, koľko celých čísel, počnúc od 1, je potrebné sčítať, aby bol výsledok väčší ako 100:

javascriptfunction func() {
  let sum = 0;
  let i = 1;
  
  while (true) { // nekonečný cyklus
    sum += i;
    
    if (sum >= 100) {
      return i; // cyklus sa točí, kým neukončí tu
    }
    
    i++;
  }
}

console.log( func() );
Задание 1

Napíšte funkciu, ktorá bude parametrom prijímať číslo a deliť ho 2 tolko krát, kým výsledok nebude menší ako 10. Nech funkcia vráti počet iterácií, ktoré boli potrebné na dosiahnutie výsledku.