المشكلة في برنامجك تبدو واضحة، فإنه عندما تطلب من المستخدم إدخال ‘y’ أو ‘n’ للتحقق مما إذا كان يرغب في شراء عنصر آخر أم لا، فإنك تستخدم متغير من نوع int
لتخزين هذه القيمة، بينما يجب أن تستخدم متغيرًا من نوع char
لأنك تتوقع إدخال حرف واحد فقط. عندما تستخدم cin
لأخذ الإدخال، يجب أن تستخدم char
بدلاً من int
لتفادي المشكلة.
يمكنك حل هذه المشكلة بتغيير نوع المتغير cont
إلى char
بدلاً من int
. هكذا:
-
خطأ صيغة غير صالح في Python31/03/2024
-
تعامل مع مشكلة النسخ الضحل في C++01/04/2024
cppchar cont;
وعند الطلب من المستخدم إدخال قيمة ‘y’ أو ‘n’، يجب عليك استخدام النمط المناسب لإدخال الحرف، والذي يتطلب استخدام علامتي اقتباس فقط:
cppcout << "Do you want to purchase another item? Enter y/n: ";
cin >> cont;
باستخدام هذه التغييرات، يجب أن تعمل البرنامج بشكل صحيح الآن، حيث يتوقف عندما يدخل المستخدم ‘n’ ويعرض القائمة كما هو متوقع عندما يدخل ‘y’.
المزيد من المعلومات
بالطبع! إليك بعض المعلومات الإضافية حول مشكلتك وكيفية حلها:
-
نوع المتغير: استخدمت
int
لتخزين قيمة الاستمرار (cont
)، ولكنك بحاجة إلى استخدامchar
لأنك تتوقع حرفًا واحدًا فقط (يمكن أن يكون ‘y’ أو ‘n’). -
تحقق من القيمة المدخلة: تحقق من أن تحقق الجزء الذي يتحقق فيه من قيمة
cont
يشمل كل من ‘n’ و ‘N’ للخروج من الحلقة. -
تنسيق الإخراج: يمكنك تنسيق الإخراج لجعل القائمة أو أي رسائل أخرى أكثر وضوحًا وجاذبية.
باستخدام هذه النصائح، يجب أن تكون قادرًا على إصلاح الخطأ في برنامجك بنجاح.