דילוג לתוכן המרכזי
מודול 5 · שיעור 3 מתוך 419/32 בקורס~10 min
שיעורי מודול (3/4)

לשבור ולהמשיך

שתי מילים קטנות מאוד שימושיות בתוך לולאה:

  • break יוצא מיד מהלולאה הפנימית ביותר.
  • continue קופץ לאיטרציה הבאה, מבלי לבצע את שאר הגוף.

break: צא מוקדם

אופייני ל"מצא את הראשון שמקיים תנאי":

JS
function primoNegativo(nums) {
  for (const n of nums) {
    if (n < 0) return n; // o: result = n; break;
  }
  return undefined;
}

primoNegativo([3, 7, -2, 4, -9]); // -2

דוגמה עם break מפורש:

JS
let trovato = -1;
const nums = [10, 20, 30, 40, 50];
for (let i = 0; i < nums.length; i++) {
  if (nums[i] === 30) {
    trovato = i;
    break;
  }
}
trovato; // 2

continue: דלג אל הבא

כאשר אלמנט לא מעניין אבל אתה רוצה להמשיך בלולאה:

JS
function sommaPari(nums) {
  let totale = 0;
  for (const n of nums) {
    if (n % 2 !== 0) continue; // salta i dispari
    totale += n;
  }
  return totale;
}

sommaPari([1, 2, 3, 4, 5, 6]); // 12

במקרים רבים if (cond) { ... } יהיה שווה ערך; continue עוזר כשהגוף ארוך ואתה רוצה לשמור על הזרימה שטוחה (קינון קטן).

נסה את זה

פעילות גופנית#js.m5.l3.e1
ניסיונות: 0טוען...

הגדר את 'firstGreater(nums, threshold)' שמחזיר את הרכיב הראשון של nums גדול בהחלט מהסף, או לא מוגדר אם אין. השתמש בהפסקה (או חזרה מיידית).

טוען עורך...
הצג רמז

החזרה בתוך ה-for עובד כהפסקה + החזרה בו זמנית.

הפתרון זמין לאחר 3 ניסיונות

סקירת התרגיל

פעילות גופנית#js.m5.l3.e2
ניסיונות: 0טוען...

הגדר `sumSkippingZeros(nums)` שמסכם את כל האלמנטים מלבד האפסים המדויקים. השתמש המשך.

טוען עורך...
הצג רמז

אם n === 0, המשך; אחרת להצטבר.

הפתרון זמין לאחר 3 ניסיונות