-أكتب برنامج يعرض قائمة العمليات الحسابية ( × , + , – , ÷ , ^ ) وخيار الخروج “Exit” ويطلب من المستخدم الاختيار من القائمة ثم يقرأ منه الرقمين الذين سيجري عليهما العملية الحسابية إذا لم يختار الخروج ، ويكرر العملية إلى أن يختار المستخدم خيار Exit .
الحل:
#include <iostream> using namespace std; int main() { int num1, num2, Choice; do{ cout << "-------------Calculator----------------\n"; cout << "Choose the operation:\n"; cout << "1. Addition\n"; cout << "2.Subtracting\n"; cout << "3.Multiplication\n"; cout << "4.Division\n"; cout << "5.Power\n"; cout << "6.Exit\n\n"; cin >> Choice; while(Choice<1 || Choice>6) {cout << "Invalid input, Please enter your choice again: "; cin >> Choice;} if (Choice!=6) { cout << "\nEnter Two Numbers:\n"; cin >> num1 >> num2; switch (Choice) { case 1: cout << "The Result : " << num1 << " + " << num2 << " = " << num1 + num2 << endl<<endl; break; case 2: cout << "The Result : " << num1 << " - " << num2 << " = " << num1 - num2 << endl<<endl; break; case 3: cout << "The Result : " << num1 << " x " << num2 << " = " << num1 * num2 << endl<<endl; break; case 4: cout << "The Result : " << num1 << " ÷ " << num2 << " = " << num1 / num2 << endl<<endl; break; case 5: cout << "The Result : " << num1 << " ^ " << num2 << " = " << pow(num1, num2) << endl<<endl; break; }//End switch }//End if } while (Choice != 6); system("pause"); return 0; }
السطر رقم 20 : يتم اختبار اختيار المستخدم ، فإذا قام بإدخال رقم غير موجود في القائمة تظهر رسالة الخطأ مع طلب إدخال خيار آخر وتتكرر العملية إلى أن يدخل خيارًا صحيحيًا ، أي بعد هذه العملية نضمن أن الخيار المُدخل صحيح وسوف يكون أحد الأعداد الظاهرة في القائمة (1-2-3-4-5-6 ).
السطر رقم 23 : ماذا لو اختار المستخدم الخيار الأخير Exit ؟! ليس اختيار خاطئ ، وفي الوقت نفسه يجب أن لايمر الـ compiler على كود الـ switch وأن لايطلب إدخال الرقمين لهذه الأسباب تم وضع الـ if .
السطر رقم 34 : الاختيار رقم 5 وهو عملية الرفع إلى قوة ، يتم استخدام دالة الـ power والتي يمثّل فيها num1 الأساس و num2 الأس .
السطر رقم 40 : شرط الـ while هو أن يكون المستخدم لم يختار الخروج ، لأنه كما طلب في السؤال يجب تكرار عملية ظهور قائمة العمليات الحسابية إلى ان يختار المستخدم Exit .
*نلاحظ أنه لم نضع الـ default للـ switch ؛ وذلك لأنه عند تتبع الكود نجد عند الوصول للـ switch يكون Choice يحمل أحد الأرقام من 1 إلى 5 ويستحيل أن يحمل غير هذه الأرقام لذلك لاداعي لوجود الـ default .
Advertisements