break
חלק מהיחידה יסודות במסלול ה-Ruby של Coddy. שיעור 41 מתוך 88.
לפעמים צריך לצאת מלולאה מוקדם, לפני שהיא מסתיימת באופן טבעי. מילת המפתח break מאפשרת לך לעצור מיד לולאה ולהמשיך בקוד שאחריה.
דמיינו שאתם מחפשים מספר מסוים. ברגע שמצאתם אותו, אין טעם להמשיך לבדוק את השאר:
for i in 1..10
if i == 5
puts "Found it!"
break
end
puts i
end
puts "Loop ended"הפעולה הזאת מדפיסה 1, 2, 3, 4, ואז "Found it!", ולבסוף "Loop ended". כש־i מגיע ל־5, הפקודה break מתבצעת והלולאה נעצרת מיד. המספרים 6 עד 10 לעולם אינם מעובדים.
מילת המפתח break פועלת עם כל סוג של לולאה. הנה דוגמה עם לולאת while:
count = 0
while true
count += 1
if count > 3
break
end
puts count
endהפעולה הזאת מדפיסה 1, 2, 3. אף על פי שהתנאי הוא true (מה שבדרך כלל היה גורם ללולאה להימשך לנצח), הפקודה break עוצרת את הלולאה כש־count גדול מ־3.
אתגר
קלקרא שני מספרים שלמים מהקלט:
limitשמייצג את הגבול העליון של טווח שמתחיל ב־1- מספר
targetשיש לחפש
עבור על המספרים מ־1 עד limit. הדפס כל מספר בשורה נפרדת. כשתגיע אל target, הדפס Found! במקום המספר ועצור מיד את הלולאה באמצעות break.
אם target נמצא בטווח, הלולאה אמורה להיעצר מוקדם. אם target גדול מ־limit, יודפסו כל המספרים מ־1 עד limit.
לדוגמה, אם הקלט הוא 10 ו־4, הפלט אמור להיות:
1
2
3
Found!אם הקלט הוא 5 ו־8, הפלט אמור להיות:
1
2
3
4
5נסו בעצמכם
# קראו את הקלט
limit = gets.to_i
target = gets.to_i
# TODO: כתבו את הקוד שלכם למטה
# עברו בלולאה על המספרים מ-1 עד limit
# הדפיסו כל מספר בשורה נפרדת
# כשתגיעו ל-target, הדפיסו את הטקסט המדויק מההוראות וצאו מהלולאההשיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 2
אופרטורים לוגיים חלק 1אופרטורים לוגיים חלק 2חזרה – לוגיקה פשוטהאופרטורים לוגיים חלק 3אופרטורים לוגיים חלק 42משתנים וטיפוסי נתונים
מספרים ומשתניםטיפוס הנתונים מחרוזתטיפוס הנתונים בוליאניטיפוס הנתונים Symbolבדיקת טיפוסי נתוניםמוסכמות שמותסיכום – יצירת משתנים8לולאות
לולאת for עם טווחיםלולאת whilebreaknextסיכום – עצרתלולאת timesלולאת untilלולאות מקוננותסיכום – קלט דינמי3אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוקיצורי דרך אריתמטייםסיכום – חשבון פשוטאופרטורי השוואה6קלט ופלט בסיסיים
פלט באמצעות putsפלט באמצעות print ו־pפלט באמצעות משתניםקלט באמצעות getsשיטת Chompהמרת טיפוסיםחזרה — מחשבון גילחזרה — אמת או שקר9מתודות
הגדרת מתודהפרמטרים של מתודהערכי החזרהסיכום - מתודת Sigmaסיכום - מתודת האימותערכי ברירת מחדל של פרמטרים15מעקב אחר הוצאות יומיות
סקירת הפרויקטיציאה מהתוכניתתרגלו בעצמכם: קומפיילר Ruby אונליין