Break
חלק מהיחידה יסודות במסלול ה-Swift של Coddy. שיעור 45 מתוך 86.
לפעמים צריך לצאת מלולאה מוקדם, לפני שהיא מסיימת את כל האיטרציות שלה. הפקודה break עוצרת את הלולאה מיד וממשיכה בקוד שאחריה.
for number in 1...10 {
if number == 5 {
break
}
print(number)
}
// פלט: 1, 2, 3, 4כאשר number מגיע ל־5, הפקודה break מתבצעת והלולאה נעצרת לחלוטין. שים לב ש־5 עצמו לעולם לא מודפס, כי break יוצא מהלולאה לפני ההגעה לפקודת print.
פקודת break פועלת עם כל סוגי הלולאות. הנה דוגמה עם לולאת while שמחפשת ערך מסוים:
var count = 0
while true {
count += 1
if count == 3 {
break
}
}
print(count) // פלט: 3התבנית הזאת שימושית כשמחפשים משהו ורוצים לעצור ברגע שמוצאים אותו, במקום להמשיך באיטרציות מיותרות.
אתגר
קלכתבו פונקציה findFirstMultiple שמקבלת את limit ואת divisor ומחזירה את המספר הראשון (החל מ־1) שמתחלק ב־divisor.
השתמשו בלולאה כדי לעבור על המספרים החל מ־1 ועד limit. כשתמצאו מספר שמתחלק ב־divisor, השתמשו ב־break כדי לצאת מיד מהלולאה ולהחזיר את המספר הזה.
לוגיקה:
- עברו על המספרים מ־1 עד
limit - בדקו אם המספר הנוכחי מתחלק ב־
divisor(השארית היא 0) - אם נמצא מספר מתאים, צאו מהלולאה והחזירו את המספר הזה
- אם לא נמצא כפולה עד limit, החזירו
-1
פרמטרים:
limit(Int): הגבול העליון של החיפוש (כולל)divisor(Int): המספר שבו בודקים התחלקות
ערך מוחזר: המספר הראשון שמתחלק ב־divisor, או -1 אם לא נמצא כזה (Int)
לדוגמה, אם limit הוא 10 ו־divisor הוא 3, הפונקציה מחזירה 3 (המספר הראשון שמתחלק ב־3).
נסו בעצמכם
func findFirstMultiple(limit: Int, divisor: Int) -> Int {
// כתבו כאן קוד
}
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
7קלט/פלט בסיסי
פונקציית ההדפסהאינטרפולציה של מחרוזותקלט באמצעות ReadLineהמרת טיפוסיםחזרה – עד 120חזרה – אמת או שקר3ערכים אופציונליים
מהם ערכים אופציונלייםשליפת ערך באמצעות If LetGuard Letאופרטור איחוד עם Nilסיכום – שליפה בטוחה של ערך9לולאות
לולאת For-Inלולאת Whileלולאת Repeat-WhileBreakContinueחזרה – עצרתטווחים בלולאותלולאה מקוננתחזרה – קלט דינמיתרגלו בעצמכם: Swift אונליין