לולאת times
חלק מהיחידה יסודות במסלול ה-Ruby של Coddy. שיעור 44 מתוך 88.
Ruby מציעה דרך אלגנטית יותר לחזור על קוד מספר מסוים של פעמים. לולאת times היא גישה בסגנון Ruby שנקראת כמעט כמו אנגלית.
במקום להגדיר טווח, פשוט קוראים ל-times על מספר:
3.times do
puts "Hello!"
endהדבר מדפיס "Hello!" שלוש פעמים. הקוד שבתוך בלוק do...end רץ בדיוק 3 פעמים. זה נקי יותר מכתיבת for i in 1..3 כשאין צורך במשתנה המונה.
אבל מה אם צריך לדעת באיזו איטרציה אתם? לולאת times יכולה לספק אינדקס שמתחיל ב־0:
4.times do |i|
puts i
end
# פלט: 0, 1, 2, 3המשתנה i שבין הקווים |i| מקבל את מספר האיטרציה הנוכחית. שים לב שהספירה מתחילה ב-0, ולא ב-1. הדבר שימושי כשצריך גם חזרה וגם מונה:
3.times do |num|
puts "Iteration #{num + 1}"
end
# פלט: Iteration 1, Iteration 2, Iteration 3לולאת times מושלמת כשאתה יודע בדיוק כמה חזרות דרושות לך ורוצה קוד נקי וקריא.
אתגר
קלקרא מספר n מהקלט. השתמש בלולאת times עם האינדקס שלה כדי להדפיס לוח כפל של המספר 2, המציג מכפלות מ-2 x 0 ועד 2 x (n-1).
כל שורה צריכה להיות בתבנית: 2 x [index] = [result]
הקלט יהיה מספר שלם יחיד שמייצג כמה פעמים הלולאה צריכה לרוץ.
לדוגמה, אם הקלט הוא 4, הפלט צריך להיות:
2 x 0 = 0
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6אם הקלט הוא 6, הפלט צריך להיות:
2 x 0 = 0
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
2 x 5 = 10נסו בעצמכם
# קראו את מספר החזרות
n = gets.to_i
# TODO: כתבו את הקוד שלכם למטה
# השתמשו בלולאת times עם האינדקס שלה כדי להדפיס את לוח הכפל של 2
# תבנית: 2 x [index] = [result]השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 2
אופרטורים לוגיים חלק 1אופרטורים לוגיים חלק 2חזרה – לוגיקה פשוטהאופרטורים לוגיים חלק 3אופרטורים לוגיים חלק 42משתנים וטיפוסי נתונים
מספרים ומשתניםטיפוס הנתונים מחרוזתטיפוס הנתונים בוליאניטיפוס הנתונים Symbolבדיקת טיפוסי נתוניםמוסכמות שמותסיכום – יצירת משתנים8לולאות
לולאת for עם טווחיםלולאת whilebreaknextסיכום – עצרתלולאת timesלולאת untilלולאות מקוננותסיכום – קלט דינמי3אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוקיצורי דרך אריתמטייםסיכום – חשבון פשוטאופרטורי השוואה6קלט ופלט בסיסיים
פלט באמצעות putsפלט באמצעות print ו־pפלט באמצעות משתניםקלט באמצעות getsשיטת Chompהמרת טיפוסיםחזרה — מחשבון גילחזרה — אמת או שקר9מתודות
הגדרת מתודהפרמטרים של מתודהערכי החזרהסיכום - מתודת Sigmaסיכום - מתודת האימותערכי ברירת מחדל של פרמטרים15מעקב אחר הוצאות יומיות
סקירת הפרויקטיציאה מהתוכניתתרגלו בעצמכם: קומפיילר Ruby אונליין