Menu
CoddyTech

אופרטורים לוגיים חלק 3

חלק מהיחידה יסודות במסלול ה-GDScript של Coddy. שיעור 24 מתוך 92.

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

var number := 6
var is_positive := number > 0
var is_even := number % 2 == 0
var result := is_positive and is_even # true

אפשר גם לכתוב את התנאים ישירות, בלי המשתנים הנוספים:

var result := number > 0 and number % 2 == 0

עם or, תנאי אחד שמתקיים מספיק. -4 הוא שלילי, לכן התוצאה היא true אף על פי ש--4 אינו אי־זוגי:

var number := -4
var negative_or_odd := number < 0 or number % 2 != 0 # true

‏GDScript מעריכה קודם את not, אחר כך את and, ואז את or. סוגריים משנים את הסדר:

var level := 3
var has_key := false
var has_map := true
print(level >= 5 and (has_key or has_map)) # false
print(level >= 5 and has_key or has_map) # true

כדי לבדוק שערך נמצא בטווח, כתבו שתי השוואות המחוברות באמצעות and: level >= 1 and level <= 10. GDScript מדווח על הצורה המתמטית 1 <= level <= 10 כשגיאה.

challenge icon

אתגר

קל

שחקן רוצה לחקור צינוק. המשתנים level, has_key ו-has_map הוגדרו עבורך. הגדר שלושה נוספים:

  • can_enter: level הוא לפחות 5 וגם לשחקן יש מפתח או מפה
  • can_find_treasure: לשחקן יש מפתח וגם מפה וגם level הוא לפחות 10
  • is_lost: לשחקן אין מפתח ואין מפה, או level נמוך מ-3

השתמש ב-and, ב-or וב-not. עם הערכים הנתונים, הפלט הוא:

Can enter: true
Can find treasure: false
Is lost: false

נסו בעצמכם

extends Node

func _ready():
	var level := 7
	var has_key := true
	var has_map := false
	# הכריזו למטה על can_enter, can_find_treasure ו-is_lost

	# אל תשנו את השורות שלמטה
	print("Can enter: ", can_enter)
	print("Can find treasure: ", can_find_treasure)
	print("Is lost: ", is_lost)
quiz iconבחנו את עצמכם

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

כל השיעורים ביחידה יסודות

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