If - Else מקונן
חלק מהיחידה יסודות במסלול ה-GDScript של Coddy. שיעור 29 מתוך 92.
פקודת if יכולה להופיע בתוך בלוק if או else אחר. זהו if מקונן. נתחיל בפקודת if/else פשוטה:
var age := 15
var group := ""
if age >= 18:
group = "Adult"
else:
group = "Minor"כעת חלקו את הקטינים לשתי קבוצות באמצעות if/else מקוננים בתוך בלוק else:
var age := 15
var group := ""
if age >= 18:
group = "Adult"
else:
if age >= 13:
group = "Teenager"
else:
group = "Child"15 אינו לפחות 18, ולכן ה־else החיצוני מתבצע. בתוכו, 15 >= 13 הוא true, ולכן group מכיל את "Teenager".
אפשר לשים if מקונן גם בתוך בלוק if:
var age := 25
var can_rent_car := false
if age >= 18:
if age >= 21:
can_rent_car = trueה-if הפנימי פועל רק כאשר הבלוק החיצוני שבו הוא נמצא פועל. כל רמת קינון מוסיפה טאבים אחד.
אתגר
קלקבע אילו סרטים צופה יכול לראות. המשתנים age ו-with_parent נקראים עבורך בשתי השורות הראשונות (אל תשנה אותם).
השתמש ב-if/else מקוננים כדי להגדיר את message:
- אם
ageהוא18או יותר:"You can watch any movie" - אחרת, אם
with_parentהואtrue:"You can watch PG-13 movies" - אחרת:
"You can only watch G-rated movies"
with_parent הוא bool, לכן בדוק אותו ישירות: if with_parent:. כתוב את שלושת המקרים: הבדיקות מנסות גילאים שונים, עם הורה ובלעדיו. לדוגמה, עבור גיל 17 עם הורה, הפלט הוא:
You can watch PG-13 moviesנסו בעצמכם
extends Node
func _ready():
var age := int(OS.read_string_from_stdin()) # אל תשנו את השורה הזו
var with_parent := OS.read_string_from_stdin() == "true" # אל תשנו את השורה הזו
var message := ""
# כתבו את קוד ה-if - else המקונן שלכם למטה
# אל תשנו את השורה למטה
print(message)
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 1
אופרטורים אריתמטייםחלוקה שלמהאופרטור מודולוקיצורי דרך אריתמטייםסיכום – חשבון פשוטאופרטורי השוואהתרגלו בעצמכם: קומפיילר GDScript אונליין