Përdorimi i return në cikle në JavaScript

Fakti që return ndodhet brenda një cikli, nuk është gjithmonë një gabim. Në shembullin vijues është krijuar një funksion që përcakton, sa elementët e parë të grupit duhet të mblidhen, që shuma të bëhet më e madhe ose e barabartë me 10:

javascriptfunction func(arr) {
  let sum = 0;
  
  for (let i = 0; i < arr.length; i++) {
    sum += arr[i];
    
    // Nëse shuma është më e madhe ose e barabartë me 10:
    if (sum >= 10) {
      return i + 1; // dalim nga cikli dhe nga funksioni
    }
  }
}

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

Në shembullin vijues është krijuar një funksion që llogarit, sa numra të plotë, duke filluar nga 1, duhet të mblidhen, që rezultati të jetë më i madh se 100:

javascriptfunction func() {
  let sum = 0;
  let i = 1;
  
  while (true) { // cikël i pafundëm
    sum += i;
    
    if (sum >= 100) {
      return i; // cikli vazhdon derisa të dalë këtu
    }
    
    i++;
  }
}

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

Shkruani një funksion që si parametër do të marrë një numër dhe do ta pjesëtojë atë me 2 kaq herë, derisa rezultati të bëhet më i vogël se 10. Le të kthejë funksioni numrin e përsëritjeve, që u deshën për të arritur rezultatin.