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المعاملات، الجزء الأول
المعاملات الحسابيةالقسمة الصحيحةمعامل باقي القسمةاختصارات العمليات الحسابيةمراجعة - حسابات بسيطةمعاملات المقارنة7أساسيات الإدخال والإخراج
الإخراجالإخراج باستخدام المتغيراتتنسيق السلاسل النصيةالإدخالالتحويل بين الأنواعمراجعة - حتى 120مراجعة - صح أم خطأ10الدوال
تعريف دالةالمعاملاتالقيمة المعادةأنواع القيم المعادةمراجعة - دالة سيغمامراجعة - دالة التحققالقيم الافتراضية13التكرار على المصفوفات
التكرار على العناصرالتكرار باستخدام الفهارسالتكرار على السلاسل النصية الجزء 1التكرار على السلاسل النصية الجزء 216متعقّب المصروفات اليومية
نظرة عامة على المشروعإنهاء البرنامجتدرّب بنفسك: مترجم GDScript عبر الإنترنت