לולאת Repeat-While
חלק מהיחידה יסודות במסלול ה-Swift של Coddy. שיעור 44 מתוך 86.
לולאת repeat-while דומה ללולאת while, אך יש הבדל מרכזי אחד: היא בודקת את התנאי אחרי ביצוע בלוק הקוד, ולא לפניו. כך מובטח שגוף הלולאה יתבצע לפחות פעם אחת.
var count = 1
repeat {
print(count)
count += 1
} while count <= 3
// פלט: 1, 2, 3שימו לב למבנה: מילת המפתח repeat מופיעה ראשונה, אחריה בלוק הקוד, והתנאי מופיע בסוף אחרי while.
ההבדל מתבהר כשהתנאי שקרי מלכתחילה:
var number = 10
repeat {
print("This runs once!")
} while number < 5
// פלט: This runs once!אף על פי ש-number < 5 הוא false, ההודעה עדיין מודפסת פעם אחת. בלולאת while רגילה, שום דבר לא היה מודפס.
השתמשו ב-repeat-while כשצריך שהקוד יבוצע לפחות פעם אחת לפני שבודקים אם להמשיך, למשל כשמבקשים מהמשתמש להזין נתונים עד שהוא מספק נתונים תקינים.
אתגר
קלקרא מספר שלם n מהקלט. השתמש בלולאת repeat-while כדי להדפיס את כל המספרים מ־1 עד n, כל אחד בשורה חדשה.
הקלט שתקבלו:
- שורה אחת המכילה מספר שלם כמחרוזת (לדוגמה,
"5")
קרא את הקלט, המר אותו ל־Int, והשתמש בלולאת repeat-while כדי להדפיס כל מספר החל מ־1.
דרישות:
- התחל מונה ב־
1 - הדפס את ערך המונה
- הגדל את המונה
- המשך כל עוד המונה קטן מ־
nאו שווה לו
לדוגמה, אם הקלט הוא 4, הפלט צריך להיות:
1
2
3
4נסו בעצמכם
// קראו את הקלט והמירו אותו ל-Int
let n = Int(readLine()!)!
// TODO: כתבו את הקוד שלכם למטה
// אתחלו מונה ל-1 והשתמשו בלולאת repeat-while כדי להדפיס מספרים מ-1 עד nהשיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
7קלט/פלט בסיסי
פונקציית ההדפסהאינטרפולציה של מחרוזותקלט באמצעות ReadLineהמרת טיפוסיםחזרה – עד 120חזרה – אמת או שקר3ערכים אופציונליים
מהם ערכים אופציונלייםשליפת ערך באמצעות If LetGuard Letאופרטור איחוד עם Nilסיכום – שליפה בטוחה של ערך9לולאות
לולאת For-Inלולאת Whileלולאת Repeat-WhileBreakContinueחזרה – עצרתטווחים בלולאותלולאה מקוננתחזרה – קלט דינמיתרגלו בעצמכם: Swift אונליין