Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

ملخص - الحسابات البسيطة

جزء من قسم Fundamentals في رحلة Dart على Coddy — الدرس 21 من 94.

challenge icon

التحدي

سهل

أنت تقوم بتطوير آلة حاسبة بسيطة لنتائج الألعاب تتبع تقدم اللاعب عبر مستويات مختلفة. اتبع هذه الخطوات بعناية لإنشاء برنامجك:

الخطوة 1: تهيئة المتغيرات

  • قم بإنشاء متغير صحيح (integer) يسمى playerScore واضبط قيمته على 100
  • قم بإنشاء متغير صحيح يسمى currentLevel واضبط قيمته على 5

الخطوة 2: حساب إحصائيات اللعبة

قم بحساب وتخزين هذه القيم في متغيرات جديدة:

  • مكافأة المستوى (Level Bonus): اضرب المستوى الحالي في 20 وقم بتخزين النتيجة في متغير يسمى levelBonus
  • تعزيزات القوة المتاحة (Power-ups Available): تكلفة كل تعزيز قوة هي 25 نقطة. استخدم القسمة الصحيحة (~/) لمعرفة عدد تعزيزات القوة الكاملة التي يمكن للاعب شراؤها من رصيده الحالي. قم بتخزين ذلك في powerUps
  • النقاط المتبقية (Remaining Points): استخدم عامل باقي القسمة (%) لمعرفة عدد النقاط المتبقية بعد شراء جميع تعزيزات القوة الممكنة. قم بتخزين ذلك في remainingPoints

الخطوة 3: تحديث نتيجة اللاعب والمستوى

  • أضف مكافأة المستوى إلى نتيجة اللاعب باستخدام عامل التعيين +=
  • قم بزيادة المستوى الحالي بمقدار 1 باستخدام عامل الزيادة القبلية (++currentLevel) وقم بتخزين هذه القيمة الجديدة في متغير يسمى newLevel
  • اطرح 15 نقطة من نتيجة اللاعب باستخدام عامل التعيين -=
  • ضاعف نتيجة اللاعب بضربها في 2 باستخدام عامل التعيين *=

الخطوة 4: عرض النتائج

جمل الطباعة (print statements) متوفرة بالفعل في الكود. لا تقم بتعديلها. مهمتك هي ملء تعريفات المتغيرات والحسابات الناقصة أعلاه بحيث يتطابق المخرج تماماً.

ملاحظة: إحدى جمل الطباعة المتوفرة تعرض playerScore / 1.5، والتي تجري قسمة عادية (غير صحيحة) وتنتج نتيجة عشرية. هذا أمر متوقع — المخرج لهذا السطر سيكون 246.66666666666666.

هام: تأكد من إجراء حساباتك بالترتيب الدقيق المحدد أعلاه، حيث أن كل خطوة تؤثر على الخطوة التي تليها.

جرّب بنفسك

void main() {
  // تهيئة درجة اللاعب والمستوى
  int playerScore = ?;
  int currentLevel = ?;
  
  // حساب مكافأة المستوى، والتعزيزات، والنقاط المتبقية
  int levelBonus = ?;
  int powerUps = ?;
  int remainingPoints = ?;
  
  // إضافة مكافأة المستوى إلى الدرجة باستخدام اختصار التعيين
  ?;
  
  // زيادة المستوى وتخزين المستوى الجديد
  int newLevel = ?;
  
  // إنقاص الدرجة بمقدار 15 باستخدام اختصار التعيين
  playerScore ?;
  
  // حساب الدرجة النهائية (الضرب في 2)
  playerScore ?;
  
  // طباعة النتائج
  print('Initial score: 100');
  print('Level bonus: $levelBonus');
  print('Available power-ups: $powerUps');
  print('Remaining points: $remainingPoints');
  print('New level: $newLevel');
  print('Score after bonus and penalty: ${playerScore / 1.5}');
  print('Final score with multiplier: $playerScore');
}

جميع دروس Fundamentals