Menu
CoddyTech

מילון בתור קבוצה

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-GDScript של Coddy. שיעור 32 מתוך 78.

כדי להפוך מערך לקבוצה, עברו בלולאה על המערך והפכו כל ערך למפתח. ערכים חוזרים מופיעים באותו מפתח:

var reports := ["spam", "scam", "spam"]
var banned := {}
for word in reports:
	banned[word] = true
print(banned.keys()) # ["spam", "scam"]

כדי לבדוק אם ערך הוא איבר, השתמשו ב־has() או באופרטור in. במילון, שניהם בודקים את המפתחות, ולעולם לא את הערכים:

print(banned.has("scam")) # true
print("hello" in banned) # false
print("hello" not in banned) # true

למערך יש גם has(), אבל הוא משווה את הערך לאיברים אחד־אחד. מילון מוצא מפתח ישירות, ולכן בדיקת חברות בקבוצה נשארת מהירה גם עם אלפי איברים.

לולאת for על קבוצה עוברת על האיברים שלה, לפי הסדר שבו הם נוספו:

for word in banned:
	print(word) # spam, ואז scam
challenge icon

אתגר

קל

אתה בודק את האורחים בכניסה למסיבה. התוכנית קוראת שתי שורות קלט:

  1. רשימת האורחים: שמות מופרדים ברווחים. חלק מהשמות מופיעים יותר מפעם אחת.
  2. האנשים שמגיעים: שמות מופרדים ברווחים.

בנה את הקבוצה guests מתוך רשימת האורחים. הדפס כמה אנשים שונים מופיעים ברשימה, ואז שורה אחת לכל אדם שמגיע: NAME: welcome אם הוא מופיע ברשימה, או NAME: not on the list. עבור הקלט:

mia leo ana mia
mia sam ana

הפלט הוא:

Guests on the list: 3
mia: welcome
sam: not on the list
ana: welcome

נסו בעצמכם

extends Node

func _ready():
	var guest_list := OS.read_string_from_stdin().split(" ", false)
	var arrivals := OS.read_string_from_stdin().split(" ", false)
	var guests := {}

	# בנו את קבוצת האורחים

	# הדפיסו את מספר האורחים ובדקו כל הגעה
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

תרגלו בעצמכם: קומפיילר GDScript אונליין