پیاده سازی بازی دوز در ++C – از صفر تا صد

۶۱۶۱ بازدید
آخرین به‌روزرسانی: ۱۹ تیر ۱۴۰۲
زمان مطالعه: ۴ دقیقه
دانلود PDF مقاله
پیاده سازی بازی دوز در ++C – از صفر تا صدپیاده سازی بازی دوز در ++C – از صفر تا صد

در این مطلب، روش پیاده سازی بازی دوز در زبان برنامه‌نویسی «سی‌پلاس‌پلاس» (++C) آموزش داده شده است. بازی دوز که به آن ایکس-او و یا تیک تاک تو (Tic-Tac-Toe) نیز گفته می‌شود، یکی از بازی‌های محبوب دو بازیکنی است. قواعد این بازی به شرح زیر هستند:

فهرست مطالب این نوشته
997696
  • بازی بین دو بازیکن انجام می‌شود (در این پیاده‌سازی، بازی بین انسان و کامپیوتر انجام می‌شود).
  • یکی از بازیکنان «O» و دیگری «X» را برای علامت‌گذاری خانه مورد نظر خود برمی‌گزیند.
  • بازی با یک بازیکن شروع می‌شود و هنگامی به پایان می‌رسد که یکی از بازیکنان بتواند یک سطر، ستون یا قطر کامل را با علامت خودش (O یا X) پر کند.
  • اگر هیچ کس برنده نشود، بازی گره خورده است (Tie).

پیاده سازی بازی دوز در ++C -- از صفر تا صد

در برنامه‌ای که کد آن در ادامه ارائه شده است، حرکات انتخاب شده توسط کامپیوتر و انسان تصادفی هستند. بنابراین، از تابع ()rand در این راستا استفاده می‌شود. این بازی توسط طرفین بازی به صورت بهینه قابل انجام نیست؛ زیرا حرکات به صورت تصادفی انتخاب می‌شوند. برنامه را می‌توان به سادگی ویرایش کرد، بنابراین هر دو بازیکنان می‌توانند به صورت بهینه بازی کنند (که در این صورت، مساله از جمله مسائل «هوش مصنوعی» (Artificial Intelligence) محسوب می‌شود).

همچنین، برنامه را می‌توان به گونه‌ای ویرایش کرد که خود کاربر ورودی را وارد کند (با استفاده از ()scanf یا cin). اگر هر دو بازیکن به صورت بهینه بازی کنند، بازی گره می‌‌خورد. در واقع، فارغ از اینکه چه کسی اول بازی را آغاز کند، در صورتی که دو بازیکن حرفه‌ای با یکدیگر بازی کنند، بازی گره می‌خورد.

پیاده سازی بازی دوز در ++C

خروجی قطعه کد بالا، به صورت زیر است.

                Tic-Tac-Toe

Choose a cell numbered from 1 to 9 as below and play

              1 | 2  | 3  
            --------------
              4 | 5  | 6  
            --------------
              7 | 8  | 9  

-    -    -    -    -    -    -    -    -    -

COMPUTER has put a O in cell 6


                |    |    
            --------------
                |    | O  
            --------------
                |    |    

HUMAN has put a X in cell 7


                |    |    
            --------------
                |    | O  
            --------------
              X |    |    

COMPUTER has put a O in cell 5


                |    |    
            --------------
                | O  | O  
            --------------
              X |    |    

HUMAN has put a X in cell 1


              X |    |    
            --------------
                | O  | O  
            --------------
              X |    |    

COMPUTER has put a O in cell 9


              X |    |    
            --------------
                | O  | O  
            --------------
              X |    | O  

HUMAN has put a X in cell 8


              X |    |    
            --------------
                | O  | O  
            --------------
              X | X  | O  

COMPUTER has put a O in cell 4


              X |    |    
            --------------
              O | O  | O  
            --------------
              X | X  | O  

COMPUTER has won

همانطور که پیش‌تر نیز بیان شد، اگر دو بازیکن با تجربه بازی دوز را انجام دهند، بازی همیشه گره می‌خورد. نوع دیگری از بازی دوز وجود دارد که به آن «دوز استراتژیک» (Ultimate Tic-Tac-Toe | Strategic Tic-Tac-Toe) گفته می‌شود و هدف آن ساخت یک دوز معمولی جذاب‌تر و با امکان پیش‌بینی کمتر است.

اگر نوشته بالا برای شما مفید بوده است، آموزش‌های زیر نیز به شما پیشنهاد می‌شوند:

^^

بر اساس رای ۲۱ نفر
آیا این مطلب برای شما مفید بود؟
اگر بازخوردی درباره این مطلب دارید یا پرسشی دارید که بدون پاسخ مانده است، آن را از طریق بخش نظرات مطرح کنید.
منابع:
GeeksforGeeks
دانلود PDF مقاله
۵ دیدگاه برای «پیاده سازی بازی دوز در ++C – از صفر تا صد»

سلام وقت بخیر ببخشید برای بازی دونفره یا بازی با کامپیوتر چکار باید بکنیم کدش چیه؟؟

تو این کد چطوری ورودیه کد رو خودمون وارد کنیم بازی جوری شه که cin شماره رو خودمون وارد کنیم

تو این کد بالا اکه بخایم عدد ها رو خودمون وارد کنیم یعنی دو نفر بازی کند چ باس کرد ؟؟

برای من اجرا نمیشه و چند اخطار برایprints زده

با سلام؛

از همراهی شما با مجله فرادرس و ارائه بازخورد سپاس‌گزاریم. لطفا، عنوان خطا را در پاسخ به این دیدگاه ارسال کنید تا امکان راهنمایی بهتر فراهم شود.

پیروز، شاد و تندرست باشید.

نظر شما چیست؟

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *