الدرس 2 من 10
الأرقام والنصوص
- 11 دقيقة
- 5 معايير للتصحيح
- 3 تلميحات
- إلى المطلوب
هدف الدرس
القسمة العشرية وطرق النصّ
الشرح
في Ruby نوعان أساسيان للأرقام: Integer للأعداد الصحيحة وFloat للعشرية. والقسمة بين عددين صحيحين تبقى صحيحة وتُسقط الكسر بصمت: 7 / 2 تساوي 3 لا 3.5. ويكفي أن يكون أحد الطرفين عشريًّا لتصير القسمة عشرية: 7.to_f / 2، أو 7.fdiv(2) مباشرة.
والفخّ أن تحوّل بعد فوات الأوان: (47 / 6).to_f تعطي 7.0، لأن القسمة الصحيحة حدثت أوّلًا وضاع الكسر قبل التحويل. وحين تعرض الناتج فـ round(2) تقرّبه إلى منزلتين.
والنصّ كائن له طرقه: strip تحذف المسافات من الطرفين، وupcase تكبّر الأحرف اللاتينية (العربية بلا حالة)، وreverse تعكس ترتيب الأحرف، وsplit(",") تقسم النصّ مصفوفةً عند كل فاصلة، و"-" * 20 تكرّره عشرين مرّة. وكلها تُرجع نصًّا جديدًا ولا تمسّ الأصل، فتتسلسل: text.strip.upcase.
المطلوب
احسب average: متوسّط نقاط الفريق في المباراة الواحدة، عشريًّا مقرّبًا إلى منزلتين. ونظّف coupon في code: بلا مسافات وبأحرف كبيرة. وقسّم tags عند الفواصل في tag_list. واصنع divider: العلامة "=" مكرّرة 20 مرّة بـ *.
معايير التصحيح
5 معايير- average عشري لا صحيح
- average مقرّب إلى منزلتين: 7.83
- code بلا مسافات وبأحرف كبيرة
- tag_list مصفوفة الوسوم الثلاثة
- divider عشرون علامة =