Scripto
اليوم 30 من 30صعبمشروع صغير: OOP كامل🏆 تحدي الأسبوع

التحدي الأخير: قائمة المهام

المستوى 1

مبتدئ

فاضل 150 XP للمستوى الجاي

نقاطك

0 XP

السلسلة

🔥 0 أيام

التحديات

0/30

7 مستويات

اتعلّم الأول

تحدي النهاية: مشروع صغير بيجمع الكلاسات والقوائم والأخطاء. فكّر في البيانات الأول: كل مهمة ليها نص وحالة (تمت ولا لأ).

الحكاية

آخر يوم في الرحلة. هتبني نواة تطبيق To-Do حقيقي، وده اللي هيبقى في الـ Portfolio بتاعك.

المطلوب

اكتب كلاس TodoList فيه: add(task) بتضيف مهمة جديدة (غير مكتملة)، done(task) بتعلّم مهمة إنها تمت (وترفع ValueError لو المهمة مش موجودة)، pending() بترجّع المهام غير المكتملة بترتيب الإضافة، وprogress() بترجّع نسبة المكتمل كرقم صحيح مقرّب للأقرب (0 لو مفيش مهام).

>>> t = TodoList(); t.add('A'); t.add('B'); t.done('A'); t.progress()

50

تلميحات

    اكتب الكود هنا

    class TodoList:
        def __init__(self):
            pass
    
    النقاط لو حليتها دلوقتي: 300 XP