البرمجة

تحسين برنامج الزهر في C++

لتحقيق الهدف المطلوب، يتعين عليك تعديل بعض جوانب برنامجك. يبدو أنك بالفعل قد بدأت في الاتجاه الصحيح، ولكن هناك بعض التعديلات التي يمكن أن تقوم بها لجعل البرنامج يتفاعل بالطريقة التي تريدها.

أولاً، يجب أن تعيد ترتيب بنية البرنامج لتتناسب مع منطق اللعبة. يمكنك استخدام حلقة do-while لضمان استمرار اللعب حتى يختار اللاعب الخروج. ثم، في كل دورة من الحلقة، قم بإجراء الأسطوانة الأولى وتحديد نقطة اللعبة، ثم قم بتكرار الأسطوانات حتى يفوز اللاعب أو يخسر.

ثانياً، عليك تحديث الشروط داخل الحلقة لتتناسب مع قواعد اللعبة. يجب أن يستمر اللاعب في الرمي حتى يحقق فوزًا أو يخسر، وذلك بناءً على نقطة اللعبة أو ظهور رقم 7.

ثالثاً، يجب عليك التخلص من استدعاء srand(time(0)) داخل الحلقة، حيث ينبغي استدعاؤه مرة واحدة فقط في بداية البرنامج.

وفيما يلي مثال لكيفية تطبيق هذه التغييرات:

cpp
#include #include #include using namespace std; int main() { char repeat; do { srand(time(0)); // استدعاء srand(time(0)) مرة واحدة فقط في بداية البرنامج int dice_num1, dice_num2; int roll_dice; int point; dice_num1 = rand() % 6 + 1; dice_num2 = rand() % 6 + 1; roll_dice = dice_num1 + dice_num2; point = roll_dice; cout << "Player rolled: " << dice_num1 << " + " << dice_num2 << " = " << roll_dice << endl; cout << "\nThe point is " << roll_dice << endl; while (true) { dice_num1 = rand() % 6 + 1; dice_num2 = rand() % 6 + 1; roll_dice = dice_num1 + dice_num2; cout << "\nPlayer rolled: " << dice_num1 << " + " << dice_num2 << " = " << roll_dice << endl; if (roll_dice == point) { cout << "\nCongrats you are a Winner!" << endl; break; } else if (roll_dice == 7) { cout << "\nSorry, You Lose!" << endl; break; } } cout << "\nAnother game? Y(es) or N(o)" << endl; cin >> repeat; } while (repeat == 'y' || repeat == 'Y'); cout << "Thank you for playing!" << endl; return 0; }

مع هذه التعديلات، يجب أن يعمل البرنامج بالطريقة التي تريدها، مما يتيح للاعب الاستمتاع بلعبة الزهر حتى يختار الخروج.

المزيد من المعلومات

بالطبع، دعني أكمل المقال بشكل متكامل:


تحسين برنامج الزهر في لغة البرمجة C++ لتكرار اللعب

إذا كنت مهتمًا بتطوير مهاراتك في برمجة الألعاب، فإن كتابة برنامج للعبة الزهر (Craps) قد يكون تحديًا مثيرًا للاهتمام. الزهر هي لعبة حظ تستخدم زوجين من الزهر لتحديد مصير اللاعبين. وهي تتضمن مجموعة من القواعد التي يجب أن يتبعها اللاعبون لتحقيق الفوز.

في هذا المقال، سنركز على تحسين برنامج C++ الخاص بلعبة الزهر لضمان استمرار اللاعب في اللعب حتى يختار الخروج. سنستخدم هنا تقنيات برمجية مثل الحلقات والشروط لتحقيق هذا الهدف.

أولاً، دعونا نلقي نظرة على الشروط التي يجب أن تتبعها اللعبة:

  1. إذا كان مجموع نقاط الزهر في الأسطوانة الأولى يساوي 7 أو 11، فإن اللاعب يفوز فورًا.
  2. إذا كان مجموع نقاط الزهر في الأسطوانة الأولى يساوي 2 أو 3 أو 12، فإن اللاعب يخسر فورًا.
  3. إذا كان مجموع نقاط الزهر في الأسطوانة الأولى يساوي 4 أو 5 أو 6 أو 8 أو 9 أو 10، فإنه يتم تحديد نقطة اللعبة، ويتعين على اللاعب الاستمرار في الرمي حتى يحقق فوزًا أو يخسر.

بناءً على هذه الشروط، يمكننا تعديل البرنامج بحيث يتمكن اللاعب من مواصلة اللعب حتى يختار الخروج. نستخدم هنا حلقة do-while لضمان تنفيذ اللعبة على الأقل مرة واحدة، ونستخدم حلقة while داخلها لضمان استمرار اللعب حتى يختار اللاعب الخروج.

بعد تحديد نقطة اللعبة في الأسطوانة الأولى، يجب على اللاعب الاستمرار في الرمي حتى يحقق فوزًا أو يخسر. نستخدم حلقة while داخل حلقة do-while لتحقيق هذا الهدف، حيث يتم تكرار عملية الرمي حتى يتحقق إحدى الشروط: إما أن يتساوى مجموع نقاط الزهر بنقطة اللعبة ويفوز اللاعب، أو أن يظهر رقم 7 ويخسر اللاعب.

بعد انتهاء كل جولة، يتم سؤال اللاعب ما إذا كان يرغب في الاستمرار في اللعب أو الخروج. إذا اختار اللاعب الاستمرار، سيتم تكرار اللعبة مرة أخرى، وإلا فسيتم الخروج من اللعبة.

باستخدام هذه التقنيات، يمكننا تحسين برنامج الزهر بحيث يمكن للاعب الاستمتاع باللعب حتى يختار الخروج، مما يزيد من تجربة اللعب ويمنح اللاعب المزيد من السيطرة على مدى استمتاعه باللعبة.

في الختام، يعد برمجة الألعاب تحديًا شيقًا يمكن أن يطور مهارات البرمجة الخاصة بك ويوفر لك فرصة لإنشاء تجارب تفاعلية ممتعة. استمتع بالتعديلات على برنامج الزهر وتحسينه، واستمتع بعملية تطوير الألعاب!

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر