الدرس 3 من 10

الجمل الشرطية

هدف الدرس

if و switch والعامل الثلاثي

01

الشرح

if تنفّذ كتلتها إن صحّ شرطها، وelse if تعرض شرطًا آخر، وelse لما بقي. وJava تفحص الفروع بالترتيب وتنفّذ أول فرع صحيح فقط، فابدأ بالحدّ الأعلى: لو بدأت بـ score >= 60 لنال صاحب الـ 95 درجة D. وتُجمع الشروط بـ && (و) و|| (أو).

وswitch تطابق قيمة واحدة مع ثوابت: case 'w':. وكل فرع يُختم بـ break، وإلا سقط التنفيذ إلى الفرع التالي ونفّذه أيضًا. هذا السقوط مصدر أخطاء شهير، لكنه يفيد حين تتشارك قيم عدّة فرعًا واحدًا: case 'w': case 'W':. وdefault لكل ما لم يطابق.

وللاختيار بين قيمتين في سطر واحد العاملُ الثلاثي cond ? a : b: int lives = hardMode ? 1 : 3;.

02

المطلوب

grade(score) بسلسلة if: A من 90، وB من 80، وC من 70، وD من 60، وإلا F، والدرجة خارج 0 إلى 100 تُرجع "?". وmove(key) لمفاتيح WASD بـ switch: w «أعلى» وs «أسفل» وa «يسار» وd «يمين»، بالحرف الصغير والكبير، وأي مفتاح آخر «ثابت». وdamage(base, critical) بالعامل الثلاثي: ضعف base في الضربة الحرجة، وإلا base نفسه.

معايير التصحيح

6 معايير
  1. grade: من 90 إلى 100 درجة A
  2. grade: الحدود بالترتيب الصحيح
  3. grade: تحت 60 درجة F، وخارج المدى "?"
  4. move بالحرف الصغير والكبير
  5. move لأي مفتاح آخر: ثابت
  6. damage تتضاعف في الضربة الحرجة
Main.java
المخرجاتJava 13 · Judge0

يُترجَم الكود ويعمل على السيرفر…

–/6

يُترجَم الكود ويعمل على السيرفر…

6 معايير في بطاقة «المطلوب».