البرمجة

لعبة النرد باستخدام بايثون: تحدي الحظ وتحقيق الأعلى نقاط!

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

لنبدأ بإنشاء ملف Python جديد يحمل اسم “dice_game.py”. سنستخدم وحدة random لإنشاء أرقام عشوائية تمثل نتائج النرد. إليك الشيفرة المصدرية لبداية اللعبة:

python
import random def roll_dice(): return random.randint(1, 6) def main(): print("مرحبًا بك في لعبة النرد!") input("اضغط Enter للقاء النرد...") result = roll_dice() print(f"لقد حصلت على: {result}") if __name__ == "__main__": main()

تحتوي هذه الشيفرة المصدرية على وظيفتين رئيسيتين: roll_dice و main. تقوم roll_dice بإرجاع رقم عشوائي بين 1 و 6، ممثلاً نتيجة رمي النرد. أما main، فتقوم بطباعة رسالة ترحيب وتطلب من المستخدم إلقاء النرد عبر الضغط على Enter. بعد ذلك، يتم استخدام roll_dice للحصول على النتيجة وطباعتها.

لتحسين اللعبة وجعلها تستمر حتى يرغب اللاعب في الخروج، يمكننا تعديل الشيفرة المصدرية كما يلي:

python
import random def roll_dice(): return random.randint(1, 6) def main(): while True: print("مرحبًا بك في لعبة النرد!") input("اضغط Enter للقاء النرد...") result = roll_dice() print(f"لقد حصلت على: {result}") play_again = input("هل ترغب في اللعب مرة أخرى؟ (نعم/لا): ") if play_again.lower() != 'نعم': print("شكرًا للعب! إلى اللقاء.") break if __name__ == "__main__": main()

تم إضافة حلقة تكرار while True لجعل اللعبة تستمر حتى يقرر اللاعب الخروج. يتم طلب إلقاء النرد بعد كل جولة، ثم يتم سؤال اللاعب إذا كان يرغب في اللعب مرة أخرى. في حالة الرفض، يتم إنهاء الحلقة وإظهار رسالة الشكر.

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

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

python
import random def roll_dice(): return random.randint(1, 6) def main(): total_score = 0 high_score = 0 print("مرحبًا بك في لعبة النرد!") while True: input("اضغط Enter للقاء النرد...") result = roll_dice() print(f"لقد حصلت على: {result}") if result == 1: print("للأسف، لقد حصلت على واحد. لا فوز هذه المرة.") total_score = 0 break else: total_score += result print(f"النقاط الإجمالية: {total_score}") play_again = input("هل ترغب في اللعب مرة أخرى؟ (نعم/لا): ").lower() if play_again != 'نعم': print(f"شكرًا للعب! النقاط الإجمالية النهائية: {total_score}") if total_score > high_score: high_score = total_score print(f"ألف مبروك! لقد سجلت أعلى نقاط حتى الآن: {high_score}") break if __name__ == "__main__": main()

تمت إضافة متغيرين جديدين: total_score لتتبع إجمالي النقاط في كل جولة، و high_score لتسجيل أعلى نقاط تم تحقيقها. تم أيضًا تحسين رسائل الخروج بناءً على نتائج النرد. في حالة الحصول على نتيجة 1، يتم إعلام اللاعب بأنه لم يفز في هذه المرة، ويعاود اللعب إلى الصفر. أما في حالة الرفض من اللاعب للعب مرة أخرى، يتم عرض النقاط الإجمالية ويتم التحقق إذا كانت هي الأعلى على الإطلاق.

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

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

هذا المحتوى محمي من النسخ لمشاركته يرجى استعمال أزرار المشاركة السريعة أو تسخ الرابط !!