לולאת while
חלק מהיחידה יסודות במסלול ה-Ruby של Coddy. שיעור 40 מתוך 88.
לולאת for מצוינת כשידוע לך בדיוק כמה פעמים לחזור על הפעולה. אבל מה אם תרצה להמשיך בלולאה עד שתנאי מסוים ישתנה? כאן נכנסת לתמונה לולאת while.
לולאת while ממשיכה לפעול כל עוד התנאי שלה נשאר true:
count = 1
while count <= 3
puts count
count += 1
endהפעולה הזו מציגה את 1, 2 ו־3. הלולאה בודקת את התנאי לפני כל איטרציה. ברגע ש־count הופך ל־4, התנאי count <= 3 הוא שקרי, והלולאה נעצרת.
ההבדל העיקרי מלולאת for הוא שאתה שולט במועד שבו הלולאה מסתיימת באמצעות שינוי משתנה בתוך הלולאה. אם תשכח לעדכן את המשתנה, הלולאה תפעל לנצח! הנה דוגמה לספירה לאחור:
num = 5
while num > 0
puts num
num -= 1
end
puts "Done!"הספירה יורדת מ־5 עד 1, ואז מדפיסה "Done!" לאחר שהלולאה מסתיימת. לולאת while שימושית במיוחד כשלא ידוע מראש כמה איטרציות תצטרך.
אתגר
קלקרא מספר n מהקלט. השתמש בלולאת while כדי להדפיס את כל המספרים מ־n ועד 1 בסדר יורד, כל אחד בשורה נפרדת. לאחר סיום הספירה לאחור, הדפס Blastoff! בשורה חדשה.
הקלט יהיה מספר שלם יחיד המייצג את המספר ההתחלתי לספירה לאחור.
לדוגמה, אם הקלט הוא 5, הפלט צריך להיות:
5
4
3
2
1
Blastoff!נסו בעצמכם
# קראו את המספר ההתחלתי
n = gets.chomp.to_i
# TODO: כתבו את הקוד שלכם למטה
# השתמשו בלולאת while כדי להדפיס מספרים מ-n עד 1
# לאחר מכן הדפיסו את הטקסט המדויק שמופיע בהוראותהשיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 2
אופרטורים לוגיים חלק 1אופרטורים לוגיים חלק 2חזרה – לוגיקה פשוטהאופרטורים לוגיים חלק 3אופרטורים לוגיים חלק 42משתנים וטיפוסי נתונים
מספרים ומשתניםטיפוס הנתונים מחרוזתטיפוס הנתונים בוליאניטיפוס הנתונים Symbolבדיקת טיפוסי נתוניםמוסכמות שמותסיכום – יצירת משתנים8לולאות
לולאת for עם טווחיםלולאת whilebreaknextסיכום – עצרתלולאת timesלולאת untilלולאות מקוננותסיכום – קלט דינמי3אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוקיצורי דרך אריתמטייםסיכום – חשבון פשוטאופרטורי השוואה6קלט ופלט בסיסיים
פלט באמצעות putsפלט באמצעות print ו־pפלט באמצעות משתניםקלט באמצעות getsשיטת Chompהמרת טיפוסיםחזרה — מחשבון גילחזרה — אמת או שקר9מתודות
הגדרת מתודהפרמטרים של מתודהערכי החזרהסיכום - מתודת Sigmaסיכום - מתודת האימותערכי ברירת מחדל של פרמטרים15מעקב אחר הוצאות יומיות
סקירת הפרויקטיציאה מהתוכניתתרגלו בעצמכם: קומפיילר Ruby אונליין