برنامه نویسی پیشرفته نیم سال اول ۸۵-۸۶ تمرین ۴ در این تمرین برنامه ای برای بازی شطرنج می نویسید .برای تحویل برنامه کلیه کالسهای نوشته شده را به صورت یک فایل zipاز طریق یک نامه الکترونیکی با مشخصات زیر ارسال کنید: [email protected] Recipient: hw4-82123456 Subject: Body: Attachments: 82123456.zip در فیلد subjectنامه ،بعد از hw4-شماره دانشجویی خود را بنویسید و از کاراکتر فاصله خالی نیز استفاده نکنید .نام فایل zipهم باید شماره دانشجویی فرد باشد .توجه کنید که بدنه نامه شما لزوم ًا خوانده نمی شود .مهلت تحویل تمرین ،ساعت ۱۲شب جمعه ۸۵/۱۰/۸است. توضیحات این برنامه باید حرکات انجام شده در یک بازی شطرنج که در یک فایل به نام input.txtوجود دارد را به ترتیب انجام داده و در نهایت وضعیت صفحه شطرنج را پس از انجام حرکات موجود در فایل inputدر یک اپلت یا فریم نشان دهد. هر خط در این فایل نشان دهنده یک حرکت در بازی است و بنابر قوانین شطرنج ،بازی را مهره سفید آغاز می کند .به این ترتیب خطهای با شماره فرد حرکات مهره های سفید بوده و خطهای با شماره زوج حرکات مهره های سیاه می باشند. برای نمایش حرکات ابتدا اسم مهره مورد نظر را ذکر می کنیم )این اسامی در جدول ۱آورده شده اند( و پس از آن محل کنونی آن مهره و در انتها نیز محل نهایی آن را معین می کنیم .به عنوان مثال B A5 B6به این معنا است که فیل از خانه A5به خانه B6برود .الزم به ذکر است در بازی شطرنج در ابتدای بازی خانه A1متعلق به رخ سفید می باشد. این برنامه باید حرکات را تا زمانی که خطایی منطقی در آنها موجود نباشد ادامه دهد و وضعیت بازی را پس از انجام تمام حرکات در یک فریم یا اپلت نمایش دهد .در صورتی که در حرکات گفته شده نیز خطایی موجود باشد با پیغامی مناسب خطی که در آن خطا موجود است را مشخص کرده و وضعیت صفحه شطرنج را تا آخرین حرکت بدون خطا نمایش دهد. برخی از خطاهای منطقی عبارتند از: بازی با مات شدن یکی از بازیکن ها به پایان برسد ولی با این وجود حرکات موجود در فایل ورودی به پایان نرسیده باشند. حرکت معین شده برای یک مهره با قوانین موجود در بازی شطرنج مغایر باشد. در محلی که به عنوان محل اولیه مهره در نظر گرفته شده مهره ای موجود نباشد یا مهره موجود در این محل با مهره ای ال در فایل ورودی گفته شده که اسب سفید از خانه A4به C6برود اما در که قرار بوده در آن باشد متفاوت باشد ) مث ً وضیت کنونی بازی در خانه A4یک سرباز سفید قرار دارد(. عالوه بر خطاهای نام برده شده در باال برنامه شما باید سایر خطاهای ممکن دیگر را نیز تشخیص دهد و برای هر یک پیغامی مناسب را پس از نمایش وضعیت کنونی بازی نمایش دهد. همچنین پس از نمایش بازی به صورت گرافیکی در یک اپلت یا فرم کاربر باید قادر باشد با موس بازی را ادامه دهد .در این شرایط نیز برنامه باید از کلیه حرکات مغایر با قوانین جلوگیری کند و در صورتی که بازی با مات شدن یک طرف به پایان رسید دیگر امکان جابه جایی مهره ها را به کاربر ندهد. ﻧﺎم ﺣﺮف ﻧﮕﺎرﻩ ﺳﺮﺑﺎز P اﺳﺐ N ﻓﻴﻞ B رخ )ﻗﻠﻌﻪ( R وزﯾﺮ Q ﺷﺎﻩ K
© Copyright 2025 Paperzz