roadmap.az

Menyu

JavaScript & DOMDərs 8 / 25

Şərtli dövr

Şərt doğru olduqca təkrar et

while şərti gövdədən əvvəl yoxlayır. Şərt ilk anda yanlış olsa, gövdə heç işləməz. Dövrü yazmazdan əvvəl başlanğıc dəyəri, hər iterasiyanın dəyişdirdiyi vəziyyəti və bitmə şərtini müəyyən et.

function sumTo(limit) {
  if (!Number.isInteger(limit) || limit < 0) return null;
  let current = 1;
  let total = 0;
  while (current <= limit) {
    total += current;
    current += 1;
  }
  return total;
}
console.log(sumTo(4), sumTo(0)); // 10 0
Nümunə

Sonsuz dövrü tanı

Sayğac artmasa və şərt dəyişməsə dövr dayanmaz. Brauzerdə belə sinxron dövr səhifənin cavab verməsini əngəlləyə bilər. Sərhəddə <= və < arasında bir iterasiya fərqi var; kiçik girişlər üçün addımları kağızda yaz.

Şərtə görə təkrar sayı əvvəlcədən məlum deyilsə while uyğundur. Girişin etibarsızlığı və istifadəçinin imtinası üçün çıxış yolu saxla. do...while isə şərti sonda yoxlayır və gövdəni ən az bir dəfə icra edir; bu fərqi lazım olan davranışa görə seç.

Əlavə qeydlər və mənbələr

while gövdəsi şərt doğru olduğu müddətcə təkrarlanır. Başlanğıc vəziyyəti, iterasiya və dayanma şərtini ayrı müəyyən et; dəyişməyən şərtin sonsuz dövr yaratdığını nəzərə al.

Niyə vacibdir?

JavaScript istifadəçi hərəkətinə cavab verən və məlumatı emal edən səhifələr yaratmağa imkan verir.

Əvvəlki biliklər

Bu mövzuda

  • while və iterasiya
  • Sayğac və yığılan nəticə
  • Dayanma şərti və sonsuz dövr

Mövzuya baxış

Mənbələr

Məşqin idarəetməsi
Addım 1 / 3

Dövrün addımlarını izlə

Limit dəyişdikcə iterasiya və cəm dəyişir. Limiti 4 seç.

Hədəf: Son ədədi 4 et və addımları aç.

Canlı nəticə

Giriş123
Nəticə6
Mənbə kodu
let i = 1, sum = 0;
while (i <= 3) { sum += i; i++; }
Addım-addım izlə
  1. 1 əlavə et → 1
  2. 2 əlavə et → 3
  3. 3 əlavə et → 6

Özün sına

Verilmiş müsbət limitə qədər ədədlərin cəmini while ilə hesabla. Sıfır və mənfi limit üçün dövrün dayanmasını yoxla.

Nəticəni necə yoxlayım?

Dövr müsbət, sıfır və mənfi limitdə dayanır, hər iterasiyada hansı vəziyyətin dəyişdiyini izah edirsən.

Gözlənilən nəticə

  • 5 üçün 1+2+3+4+5=15.
  • Sıfır və mənfi limitdə sonsuz dövr yaranmır.
15 0 0
Nümunə həllə bax

Əvvəl özün sına, sonra müqayisə et. Bu, mümkün həllərdən biridir.

Sayğac hər dövrdə artır. Mənfi limit üçün dövr başlamır; kəsr limit əvvəlcə aşağı yuvarlaqlaşdırılır.

main.js

function sumTo(limit) {
  if (!Number.isFinite(limit) || limit <= 0) return 0;
  let number = 1;
  let sum = 0;
  while (number <= Math.floor(limit)) {
    sum += number;
    number += 1;
  }
  return sum;
}
console.log(sumTo(5), sumTo(0), sumTo(-3));

Praktikanı bitirdin?Özün qiymətləndirirsən. İrəliləyiş bu brauzerdə saxlanılır.