الدرس 4 من 10

المصفوفات وطرقها

هدف الدرس

أضف واحذف ورتّب

01

الشرح

المصفوفة قائمة مرتّبة من القيم: scores = [72, 95, 64]. تقرؤها بالموضع والعدّ من الصفر: scores[0] الأولى وscores[-1] الأخيرة، ولهما اسمان أوضح: first وlast. وinclude?(x) سؤال عن الوجود، وindex(x) موضع أول ظهور، أو nil إن لم يوجد.

وتتغيّر في مكانها: << تُلحق عنصرًا في الآخر، وpush مثلها وتقبل أكثر من عنصر، وpop تحذف الأخير وتُرجعه، فتحفظ ما حذفته إن احتجته.

أما sort وuniq فتُرجعان مصفوفة جديدة ولا تمسّان الأصل. scores.sort وحدها في سطر تحسب ثم ترمي النتيجة؛ احفظها في متغيّر، أو سلسلها: scores.uniq.sort.

02

المطلوب

وصلت درجتان متأخّرتان: أضف 81 بـ << ثم 47 بـ push. ثم تبيّن أن الأخيرة سُجّلت خطأً: احذفها بـ pop واحفظها في wrong. ثم اصنع ranked: الدرجات بلا تكرار مرتّبة تصاعديًّا، ومنها lowest وhighest بـ first وlast. وtop_at موضع أول 95 في scores، وhas_full هل فيها 100.

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

6 معايير
  1. scores بعد الإضافة والحذف، بترتيبها الأصلي
  2. wrong هي الدرجة المحذوفة: 47
  3. ranked بلا تكرار ومرتّبة تصاعديًّا
  4. lowest و highest أدنى درجة وأعلاها
  5. top_at موضع أول 95 والعدّ من الصفر
  6. has_full: لا درجة 100
main.rb
المخرجاتRuby 3.4 · ruby.wasm

جارٍ تحميل Ruby… نحو 8MB مرّة واحدة، ثم يحفظها المتصفح.

–/6

يبدأ الفحص حين تجهز البيئة.

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