المعامل الشرطي
جزء من قسم Fundamentals في رحلة Dart على Coddy. الدرس 30 من 94.
يوفر **العامل الشرطي** (conditional operator) (?:) طريقة موجزة لكتابة عبارات if-else في سطر واحد:
condition ? expressionIfTrue : expressionIfFalseمثال:
void main() {
int age = 20;
String status = age >= 18 ? 'Adult' : 'Minor';
print(status);
}الناتج: Adult
إنه يعمل مع أنواع بيانات مختلفة ومثالي للتخصيصات الشرطية البسيطة.
التحدي
سهلأنشئ برنامجًا يستخدم المعامل الشرطي (?:) لتحديد ما إذا كان لدى اللاعب نقاط كافية للترقي في المستوى (level up) في اللعبة:
- قم بـ Declare متغير أعداد صحيحة
playerScoreبقيمة 750 - قم بـ Declare متغير أعداد صحيحة
levelUpThresholdبقيمة 500 - استخدم المعامل الـ
conditionalإنشاءmessageنصية تذكر إما:- "Level up!" إذا كانت نقاط الـ
playerأكبر من أو تساوي الـthreshold - "Keep trying!" إذا كانت نقاط الـ
playerأقل من الـthreshold
- "Level up!" إذا كانت نقاط الـ
- قم بتخزين هذه الـ
messageفي متغيرStringيسمىmessage - قم بـ
Printنقاط الـplayerبالتنسيق التالي:Player score: 750 - قم بـ
Printالـmessage - قم بـ
Updateنقاط الـplayerإلى 450 - استخدم المعامل الـ
conditionalمرة أخرى لـupdateالـmessageبناءً على الـscoreالجديد - قم بـ
Printنقاط الـplayerالـupdatedبالتنسيق التالي:Player score: 450 - قم بـ
Printالـmessageالـupdated
يجب أن يطابق إخراجك التنسيق المتوقع تمامًا.
جرّب بنفسك
void main() {
// أعلن عن متغيراتك هنا
// استبدل كل صفر بالقيمة التي تطلبها المهمة
int playerScore = 0;
int levelUpThreshold = 0;
// استخدم العامل الشرطي لإنشاء الرسالة الأولى
// استبدل النصين الفارغين بالرسائل التي تطلبها المهمة
String message = playerScore >= levelUpThreshold ? "" : "";
// اطبع نقاط اللاعب والرسالة
print("Player score: $playerScore");
print(message);
// حدّث نقاط اللاعب
// استبدل الصفر بالنقاط المحدّثة التي تطلبها المهمة
playerScore = 0;
// استخدم العامل الشرطي لتحديث الرسالة
message = playerScore >= levelUpThreshold ? "" : "";
// اطبع نقاط اللاعب المحدّثة والرسالة
print("Player score: $playerScore");
print(message);
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Fundamentals
4المعاملات - الجزء الثاني
معاملات المقارنةالمعامل المنطقي ANDالمعامل المنطقي ORالمعامل المنطقي NOTمعاملات فحص النوعملخص - إجراء المقارنات7التعامل مع النصوص (Strings)
دمج النصوص (String Concatenation)تضمين النصوص (String Interpolation)النصوص متعددة الأسطر (Multi-line Strings)خصائص النصوص (String Properties)دوال النصوص الأساسية (String Methods)10المجموعات - أساسيات الخرائط
ما هي الخرائط؟إنشاء خريطةالوصول إلى القيم عبر المفتاحأزواج المفتاح والقيمةالحصول على حجم الخريطةالحصول على المفاتيحالحصول على القيمالتحقق من وجود مفتاح2المتغيرات وأنواع البيانات الأساسية
ما هي المتغيرات؟النصوص (Strings)الأعداد الصحيحة (int)الأعداد العشرية (double)القيم المنطقية (bool)استنتاج النوع باستخدام 'var'المتغيرات النهائية (Final)المتغيرات الثابتة (Constant)قواعد التسميةأساسيات الـ Null Safetyملخص - التصريح عن المتغيرات8مسار التحكم - الحلقات التكرارية
حلقة 'for' التكراريةحلقة 'while' التكراريةحلقة 'do-while' التكراريةاستخدام 'break' في الحلقات التكراريةاستخدام 'continue' في الحلقات التكراريةملخص - تكرار الكود البرمجي3المعاملات - الجزء الأول
المعاملات الحسابيةالقسمة الصحيحةمعامل باقي القسمة (Modulo)الزيادة والنقصاناختصارات التعيينملخص - الحسابات البسيطة6تدفق التحكم - اتخاذ القرار
جملة 'if'جملة 'else'جملة 'else if'ملخص - القرارات البسيطةجمل 'if' المتداخلةجملة 'switch'9المجموعات - أساسيات القوائم
ما هي القوائم؟إنشاء قائمةالوصول عبر الفهرسالحصول على طول القائمةإضافة عناصرإزالة عناصرالتحقق مما إذا كانت القائمة فارغةالتكرار عبر القائمةتدرّب بنفسك: مترجم Dart عبر الإنترنت