اختصارات التعيين
جزء من قسم Fundamentals في رحلة Dart على Coddy — الدرس 20 من 94.
في Dart، تدمج اختصارات التعيين العمليات الحسابية مع التعيين لتعديل المتغيرات بشكل موجز.
1. معامل التعيين بالجمع (+=)
void main() {
int score = 10;
score += 5; // يعادل: score = score + 5;
print('Score after adding 5: $score');
}2. معامل تعيين الطرح (-=)
void main() {
int lives = 3;
lives -= 1; // يعادل: lives = lives - 1;
print('Lives after losing 1: $lives');
}3. تخصيص الضرب (*=)
void main() {
int points = 5;
points *= 2; // ما يعادل: points = points * 2;
print('Points after doubling: $points');
}4. معامل تخصيص القسمة (/=)
void main() {
double price = 100.0;
price /= 2; // يعادل: price = price / 2;
print('Price after 50% discount: $price');
}التحدي
سهلأنشئ برنامجاً يتتبع إحصائيات اللعبة للاعب باستخدام اختصارات التعيين:
- قم بالتصريح عن متغير صحيح
scoreبقيمة أولية قدرها 100 - قم بالتصريح عن متغير صحيح
bonusبقيمة أولية قدرها 50 - قم بالتصريح عن متغير صحيح
multiplierبقيمة أولية قدرها 2 - قم بالتصريح عن متغير صحيح
penaltyبقيمة أولية قدرها 30 - اطبع النتيجة الأولية مع الرسالة:
Initial score: 100 - استخدم المعامل
+=لإضافة المكافأة (bonus) إلى النتيجة (score) - اطبع النتيجة بعد إضافة المكافأة:
Score after bonus: 150 - استخدم المعامل
*=لضرب النتيجة في المضاعف (multiplier) - اطبع النتيجة بعد تطبيق المضاعف:
Score after multiplier: 300 - استخدم المعامل
-=لطرح العقوبة (penalty) من النتيجة - اطبع النتيجة النهائية:
Final score: 270
يجب أن يتطابق مخرجك مع التنسيق الموضح أعلاه تماماً.
ورقة مرجعية
تجمع اختصارات التعيين بين العمليات الحسابية والتعيين لتعديل المتغيرات بشكل موجز:
تعيين الجمع (+=)
score += 5; // يعادل: score = score + 5;تعيين الطرح (-=)
lives -= 1; // يعادل: lives = lives - 1;تعيين الضرب (*=)
points *= 2; // يعادل: points = points * 2;تعيين القسمة (/=)
price /= 2; // يعادل: price = price / 2;جرّب بنفسك
void main() {
// أعلن عن متغيراتك هنا
int score = ?;
int bonus = ?;
int multiplier = ?;
int penalty = ?;
// طباعة النتيجة الأولية
print("Initial score: $score");
// إضافة المكافأة باستخدام معامل +=
score ? bonus;
// طباعة النتيجة بعد المكافأة
print("Score after bonus: $score");
// تطبيق المضاعف باستخدام معامل *=
score ? multiplier;
// طباعة النتيجة بعد المضاعفة
print("Score after multiplier: $score");
// طرح العقوبة باستخدام معامل -=
score ? penalty;
// طباعة النتيجة النهائية
print("Final score: $score");
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس 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المجموعات - أساسيات القوائم
ما هي القوائم؟إنشاء قائمةالوصول عبر الفهرسالحصول على طول القائمةإضافة عناصرإزالة عناصرالتحقق مما إذا كانت القائمة فارغةالتكرار عبر القائمة