next
חלק מהיחידה יסודות במסלול ה-Ruby של Coddy. שיעור 42 מתוך 88.
בעוד ש-break יוצאת לחלוטין מלולאה, לפעמים רוצים רק לדלג על האיטרציה הנוכחית ולעבור לבאה. מילת המפתח next עושה בדיוק את זה.
כאשר Ruby נתקלת ב-next, היא קופצת מיד לאיטרציה הבאה של הלולאה ומדלגת על כל הקוד שנותר באיטרציה הנוכחית:
for i in 1..5
if i == 3
next
end
puts i
endהפלט הוא 1, 2, 4, 5. כאשר i שווה ל-3, מילת המפתח next מדלגת על פקודת puts וממשיכה ישירות לאיטרציה הבאה, שבה i הופך ל-4.
מקרה שימוש נפוץ הוא סינון של ערכים לא רצויים. לדוגמה, הדפסת מספרים זוגיים בלבד:
for num in 1..6
if num % 2 != 0
next
end
puts num
end
# פלט: 2, 4, 6המספרים האי־זוגיים מדולגים, ורק המספרים הזוגיים מודפסים. חשבו על next כאילו הוא אומר "דלג על המספר הזה והמשך", בעוד break אומר "עצור הכול".
אתגר
קלקראו שני מספרים שלמים מהקלט:
- מספר
start - מספר
end
עברו בלולאה על המספרים מ־start עד end. הדפיסו רק את המספרים שאינם מתחלקים ב־3. השתמשו ב־next כדי לדלג על מספרים שמתחלקים ב־3.
יש להדפיס כל מספר בשורה נפרדת.
לדוגמה, אם הקלט הוא 1 ו־10, הפלט צריך להיות:
1
2
4
5
7
8
10אם הקלט הוא 5 ו־9, הפלט צריך להיות:
5
7
8נסו בעצמכם
# קראו את הקלט
start = gets.chomp.to_i
end_num = gets.chomp.to_i
# TODO: כתבו את הקוד שלכם למטה
# עברו בלולאה על המספרים מ-start עד end_num
# השתמשו ב-next כדי לדלג על מספרים שמתחלקים ב-3
# הדפיסו מספרים שאינם מתחלקים ב-3השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 2
אופרטורים לוגיים חלק 1אופרטורים לוגיים חלק 2חזרה – לוגיקה פשוטהאופרטורים לוגיים חלק 3אופרטורים לוגיים חלק 42משתנים וטיפוסי נתונים
מספרים ומשתניםטיפוס הנתונים מחרוזתטיפוס הנתונים בוליאניטיפוס הנתונים Symbolבדיקת טיפוסי נתוניםמוסכמות שמותסיכום – יצירת משתנים8לולאות
לולאת for עם טווחיםלולאת whilebreaknextסיכום – עצרתלולאת timesלולאת untilלולאות מקוננותסיכום – קלט דינמי3אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוקיצורי דרך אריתמטייםסיכום – חשבון פשוטאופרטורי השוואה6קלט ופלט בסיסיים
פלט באמצעות putsפלט באמצעות print ו־pפלט באמצעות משתניםקלט באמצעות getsשיטת Chompהמרת טיפוסיםחזרה — מחשבון גילחזרה — אמת או שקר9מתודות
הגדרת מתודהפרמטרים של מתודהערכי החזרהסיכום - מתודת Sigmaסיכום - מתודת האימותערכי ברירת מחדל של פרמטרים15מעקב אחר הוצאות יומיות
סקירת הפרויקטיציאה מהתוכניתתרגלו בעצמכם: קומפיילר Ruby אונליין