ترجمة آلية تحت المراجعة
نقدي
المصدر الأصليقائمة تنفيذ التمرين
تُحفظ علامات هذه القائمة على هذا الجهاز والمتصفح فقط. أنشئ حسابًا مفعّلًا لحفظ إنجاز التمرين في مسارك.
نقدي
مشكلة بحاجة إلى حل
في ملف يسمى cash.py في مجلد يسمى sentimental-cash، اكتب برنامجًا يسأل المستخدم عن مقدار التغيير المستحق ثم ينشر الحد الأدنى لعدد العملات المعدنية التي يمكن إجراء التغيير المذكور بها. يمكنك القيام بذلك تمامًا كما فعلت في مجموعة المشاكل 1، باستثناء أن برنامجك هذه المرة يجب أن يكون مكتوبًا بلغة بايثون، ويجب أن تفترض أن المستخدم سيُدخل التغيير بالدولار (e.g.، 0.50 دولار بدلاً من 50 سنتًا).
تجريبي
المواصفات
- استخدم
get_floatمن مكتبة CS50 للحصول على مدخلات المستخدم وprintلإخراج إجابتك. افترض أن العملات المعدنية الوحيدة المتاحة هي الأرباع (25 سنتًا)، والدايمات (10 سنتات)، والنيكل (5 سنتات)، والبنسات (1 سنتات).- نطلب منك استخدام
get_floatحتى تتمكن من التعامل مع الدولارات والسنتات، حتى لو كانت بدون علامة الدولار. بمعنى آخر، إذا كان بعض العملاء مدينًا بمبلغ 9.75 دولارًا (كما في الحالة التي تبلغ فيها تكلفة الصحيفة 25 سنتًا ولكن العميل يدفع بفاتورة بقيمة 10 دولارات)، فافترض أن مدخلات برنامجك ستكون9.75وليس$9.75أو975. ومع ذلك، إذا كان بعض العملاء مدينًا بمبلغ 9 دولارات بالضبط، فافترض أن مدخلات برنامجك ستكون كذلك9.00أو فقط9ولكن، مرة أخرى، لا$9أو900. بالطبع، بحكم طبيعة قيم الفاصلة العائمة، من المحتمل أن يعمل برنامجك مع مدخلات مثل9.0و9.000أيضًا؛ لا داعي للقلق بشأن التحقق مما إذا كان إدخال المستخدم "منسقًا" كما ينبغي أن يكون المال.
- نطلب منك استخدام
- إذا فشل المستخدم في تقديم قيمة غير سالبة، فيجب على برنامجك إعادة مطالبة المستخدم بمبلغ صالح مرارًا وتكرارًا حتى يمتثل المستخدم.
- بالمناسبة، حتى نتمكن من أتمتة بعض اختبارات الشيفرة الخاصة بك، نطلب أن يكون السطر الأخير من إخراج برنامجك هو الحد الأدنى لعدد العملات الممكنة فقط: عدد صحيح متبوع بسطر جديد.
كيفية الاختبار
بينما check50 متاح لهذه المشكلة، ننصحك أولاً باختبار الشيفرة بنفسك لكل مما يلي.
- قم بتشغيل البرنامج الخاص بك باسم
python cash.py، وانتظر المطالبة بالإدخال. اكتب0.41ثم اضغط على زر الإدخال. يجب أن يخرج برنامجك4. - قم بتشغيل البرنامج الخاص بك باسم
python cash.py، وانتظر المطالبة بالإدخال. اكتب0.01ثم اضغط على زر الإدخال. يجب أن يخرج برنامجك1. - قم بتشغيل البرنامج الخاص بك باسم
python cash.py، وانتظر المطالبة بالإدخال. اكتب0.15ثم اضغط على زر الإدخال. يجب أن يخرج برنامجك2. - قم بتشغيل البرنامج الخاص بك باسم
python cash.py، وانتظر المطالبة بالإدخال. اكتب1.60ثم اضغط على زر الإدخال. يجب أن يخرج برنامجك7. - قم بتشغيل البرنامج الخاص بك باسم
python cash.py، وانتظر المطالبة بالإدخال. اكتب23ثم اضغط على زر الإدخال. يجب أن يخرج برنامجك92. - قم بتشغيل البرنامج الخاص بك باسم
python cash.py، وانتظر المطالبة بالإدخال. اكتب4.2ثم اضغط على زر الإدخال. يجب أن يخرج برنامجك18. - قم بتشغيل البرنامج الخاص بك باسم
python cash.py، وانتظر المطالبة بالإدخال. اكتب-1ثم اضغط على زر الإدخال. يجب أن يرفض برنامجك هذا الإدخال باعتباره غير صالح، وذلك عن طريق إعادة مطالبة المستخدم بكتابة رقم آخر. - قم بتشغيل البرنامج الخاص بك باسم
python cash.py، وانتظر المطالبة بالإدخال. اكتبfooثم اضغط على زر الإدخال. يجب أن يرفض برنامجك هذا الإدخال باعتباره غير صالح، وذلك عن طريق إعادة مطالبة المستخدم بكتابة رقم آخر. - قم بتشغيل البرنامج الخاص بك باسم
python cash.py، وانتظر المطالبة بالإدخال. لا تكتب أي شيء، ثم اضغط على زر الإدخال. يجب أن يرفض برنامجك هذا الإدخال باعتباره غير صالح، وذلك عن طريق إعادة مطالبة المستخدم بكتابة رقم آخر.
صحة
check50 cs50/problems/2026/x/sentimental/cash
النمط
style50 cash.py
كيفية الإرسال
في جهازك الطرفي، قم بتنفيذ ما يلي لإرسال عملك، والإجابة على المطالبات التي تظهر أيضًا.
submit50 cs50/problems/2026/x/sentimental/cash