גישה לאיברי מערך
חלק מהיחידה יסודות במסלול ה-GDScript של Coddy. שיעור 63 מתוך 92.
לכל איבר במערך יש אינדקס, המיקום שלו במערך. האינדקסים מתחילים ב־0, ולכן האינדקס האחרון הוא הגודל פחות אחד:
var letters := ["a", "b", "c", "d"]"a"נמצא באינדקס 0"b"נמצא באינדקס 1"d"נמצא באינדקס 3
כדי לקרוא איבר, כתבו את האינדקס שלו בסוגריים מרובעים אחרי המערך:
var scores := [10, 20, 30, 40, 50]
print(scores[2])30אינדקס שלילי סופר מהסוף: scores[-1] הוא האיבר האחרון (50), ו-scores[-2] הוא האיבר שלפניו (40).
בלולאה על range(scores.size()), המשתנה מקבל כל אינדקס במערך, כך שאפשר לקרוא כל איבר בתורו:
for i in range(scores.size()):
print(scores[i])קריאה של אינדקס שאינו קיים, כמו scores[5] במערך הזה בן 5 איברים, עוצרת את התוכנית עם שגיאה.
אתגר
קלהמערך inventory מכיל 6 פריטים. התוכנית קוראת מספר count מהקלט (מ־1 עד 6).
- הדפיסו את
countהפריטים הראשונים, פריט אחד בכל שורה. השתמשו בלולאה שעוברת על האינדקסים. - לאחר מכן הדפיסו את
Last:ואחריו את הפריט האחרון, שקראו באמצעות אינדקס שלילי.
עבור הקלט 3, הפלט הוא:
sword
shield
potion
Last: ropeנסו בעצמכם
extends Node
func _ready():
var inventory := ["sword", "shield", "potion", "map", "torch", "rope"]
var count := int(OS.read_string_from_stdin())
# הדפס את count הפריטים הראשונים, אחד בכל שורה
# לאחר מכן הדפס "Last: " ואת הפריט האחרון
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 1
אופרטורים אריתמטייםחלוקה שלמהאופרטור מודולוקיצורי דרך אריתמטייםסיכום – חשבון פשוטאופרטורי השוואהתרגלו בעצמכם: קומפיילר GDScript אונליין