לולאת for
חלק מהיחידה יסודות במסלול ה-GDScript של Coddy. שיעור 43 מתוך 92.
לולאה מריצה את אותו בלוק קוד כמה פעמים. במקום לכתוב את אותה print() חמש פעמים, כותבים אותה פעם אחת בתוך לולאה.
לולאת for מריצה את הבלוק שלה פעם אחת עבור כל מספר בטווח. range(start, end) מחזירה את המספרים מ-start ועד end, לא כולל את end:
for i in range(0, 5):
print(i)0
1
2
3
4כל הפעלה של הבלוק היא איטרציה. בכל איטרציה, משתנה הלולאה i מכיל את המספר הבא בטווח. שורת for מסתיימת בנקודתיים, והשורות שחוזרות על עצמן מוזחות רמה אחת פנימה.
כשהטווח מתחיל ב־0, אפשר להשמיט את ערך ההתחלה: range(5) נותן את אותם המספרים כמו range(0, 5).
בתוך הבלוק, i פועל כמו כל משתנה אחר:
for i in range(1, 4):
print("Item number: ", i)Item number: 1
Item number: 2
Item number: 3לולאה יכולה גם לצבור תוצאה. התוכנית הזאת מחברת את כל המספרים מ־1 עד 100 ומדפיסה 5050:
var total := 0
for i in range(1, 101):
total += i
print(total)הפקודה האחרונה print() אינה מוזחת מתחת לשורת for, ולכן היא מופעלת פעם אחת, לאחר שהלולאה מסתיימת.
אתגר
קלקרא מספר שלם n (קוד הפתיחה כבר עושה זאת). השתמש בלולאת for כדי להדפיס את "Hello Coddy: " ואת הערך של i עבור כל מספר מ־3 עד n, כולל שניהם.
לדוגמה, אם n הוא 6, הפלט הוא:
Hello Coddy: 3
Hello Coddy: 4
Hello Coddy: 5
Hello Coddy: 6אם n הוא 27, הלולאה מדפיסה 25 שורות, מ־Hello Coddy: 3 עד Hello Coddy: 27.
נסו בעצמכם
extends Node
func _ready():
var n := int(OS.read_string_from_stdin())
# כתבו כאן את לולאת ה-for שלכם
pass
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 1
אופרטורים אריתמטייםחלוקה שלמהאופרטור מודולוקיצורי דרך אריתמטייםסיכום – חשבון פשוטאופרטורי השוואהתרגלו בעצמכם: קומפיילר GDScript אונליין