پروژه دانشجویی
سورس کد بازی هشت وریز به صورت بازگشتی و گرافیکی
به صورت محدود فروخته میشود.
سورس کد های بازی هشت وزیر به زبان جاوا به صورت گرافیکی
پروژه دانشجویی
سورس کد بازی هشت وریز به صورت بازگشتی و گرافیکی
به صورت محدود فروخته میشود.
فرمت فایل : WORD (لینک دانلود پایین صفحه) تعداد صفحات 101 صفحه
بخشی از متن
- استراتژی،اهداف و اولویتهای فرهنگی دولت صربستان کدام است؟
ج- همان طور که مستحضر هستید در ماه ژوئن سال 2003 نشستی پیرامون استراتژی فرهنگی در صربستان برگزار شد. در این همایش موضوع استراتژی ملّی در فرهنگ و تشکیل اتحادیة ملّی در حوزة فرهنگی به بحث و گفتگو گذاشته شد. وزارت فرهنگ، هرچند فرهنگ سیاسی شفافی را در پیش گرفته است ولی همة بخشهای آن چندان روشن نیست. خوشبختانه در برخی بخشها مشکلات اساسی وجود ندارد و ما توانستهایم طرحهای درازمدت را به اجرا درآوریم. طرحها و قوانینی که به مجلس ارائه دادیم در سطح استاندارد اروپایی بود و این یکی از استراتژیهای رشد فرهنگی به منظور نزدیک شدن به اروپا است. استراتژی رشد فرهنگی سینما برای همه روشن است. مرکز فیلم صربستان را تأسیس کردیم. همان طور که میدانید در ”ایوریماژ“ پذیرفته شدیم و همواره در مسابقات نشان دادهایم که فیلم یکی از موفقترین تولیدات ماست. به دشواری میتوان در زمینة رشد استراتژی فرهنگی به موفقیت دست یافت اگر با کردارهای قاعدهای کهنه و عدم انطباق با زمان معاصر مواجه باشیم.
س- دولت سابق و دولت فعلی از این که مدّتها هیچ قانونی پیرامون فرهنگ تصویب نشد، احساس گناه میکنند. آیا اینطور است؟
ج- همینطور است. البته دولت فعلی چند قانون پیرامون کار فرهنگی را به تصویب رساند. از ما انتظار میرود کارهایی را که در ده سال گذشته انجام نشده به ثمر برسانیم. ما دستکم به تصویب ده قانون در حوزة فرهنگ نیازمند هستیم. روش ما سیاست گام به گام است. زیرا در صورت تعجیل، احتمال گامهای اشتباه افزایش مییابد. در 3 ماهة اوّل سال 2005 به مجلس صربستان پیشنهاد تصویب چهار قانون را خواهیم داد.
س- بیشترین کارهای موفقیت آمیز وزارتخانه در طول مسئولیت شما چه بوده است؟
ج- همان طور که عرض کردم از خود حساسیت بسیاری به تأمل برای صحیح بودن طرحهای فرهنگی نشان میدهم. از سوی دیگر تلاش زیادی در به پایان رساندن این طرحهای فرهنگی صورت میگیرد. آنچه را که صحیح میدانیم تا پایان انجام خواهیم داد. ما در آغاز کار با دو مشکل جدّی مواجه شدیم. آتش سوزی در هیلاندار و فاجعه سال گذشته در کوزوو.
برای جبران این وقایع تمام صربستان بسیج شد. طی سال گذشته میزبان هنرمندان خارجی در همة عرصههای فرهنگی بودیم. تعداد آنها به 4000 نفر میرسد. وضعیت اقتصادی در سطح بسیار پایینی قرار دارد. شهرهای بزرگ هزینههای بسیاری میطلبد. همه عادت کردهاند به نوعی بودجه تکیه کنند. متأسفانه طی سال جاری حتّی یک دینار برای برنامههای اجتماعی وجود نداشت و دلیلش هم این بود که طی سال 2003 هیچگونه پیش بینی وبرنامهریزی برای سال 2004 صورت نگرفتهبود. موفقیت بزرگ جذب ناشران برای حضور در نمایشگاه کتاب در فرانکفورت قابل توجه بود. آنها نمایندگان فرهنگی و ادبی ما هستند. تصمیم داریم در سال 2005 در نمایشگاه کتاب مسکو حضور جدی داشته باشیم.
س- چرا تصور میشود که صندوق شهرداری از صندوق دولت غنیتر است و کارهای آنها رونق بیشتری دارد؟
ج- از هنگامی که شیوههای جدیدی برای حکومت محّلی در جهت صرف هزینهها در پیش گرفته شده برخی نهادهای فرهنگی از وضعیت بهتری برخوردار شدهاند. با این وجود نباید فراموش کرد که وزارت فرهنگ هزینة صد موزه، دهها آرشیو، بنیاد حمایت از آثار فرهنگی، کتابخانهها و آثار فرهنگی در سراسر صربستان را بعهده دارد. همینطور امکانات و هزینهها در حوزة سینما، نشر، رسانهها و همایشهای فرهنگی و پروژههای انواع انجمنهای هنری را نیز نباید فراموش کرد. البته اگر در زمینة تأمین دستاوردهای آثار ملی در سطح شهر بلگراد با شهرداری به توافق برسیم نتایج خوبی حاصل میشود.
س- کارمندان وزارت فرهنگ از میزان حقوق خود راضی نیستند. چه تدابیری در این زمینه اندیشیده شدهاست؟
ج- مشکلات مالی کارمندان از وضعیت اقتصادی کشور خبرمیدهد. به همین دلیل دیگر نهادها و وزارتخانههای دولتی با همین معضل مواجه هستند. این وزارتخانه از نزدیک با وضعیت اقتصادی کارمندان آشنایی دارد.
س- تئاتر ملّی به عنوان یکی از نهادهای اصلی کشور در بحرانی عمیق بسر میبرد. بنظر میرسد این وضعیت هیچ ارتباطی با سندیکا و مدیریت آن ندارد.
ج- بله تئاتر ملّی با معضلات جدی مواجه است. مقالات انتقادی بسیاری در نشریات پیرامون این موضوع به چاپ رسیده ولی هیچگاه بطور عمیق واز نزدیک به ریشة مشکلات پرداخته نشد. مدیریت مسئولین سندیکا را متهم میکند و در سندیکا مدیران را. همان طور که میدانید 3 نوع نمایش در فضای تئاتر ملّی برگزار میشود. بلگراد نیاز به تالارهای جداگانه برای اُپرا و باله دارد. وزارت فرهنگ در حل این معضل کوشش میکند.
س- پرداخت مالیات بر ارزش اضافه، ناشرین را با محدودیتهای بسیاری مواجه میکند. چرا وزارت فرهنگ هیچگونه تلاش و دغدغهای به این موضوع از خود نشان نداد؟
ج- وزارت فرهنگ از درخواست ناشران برای حذف این مالیات حمایت میکند. ولی وزارت اقتصاد و رئیس مجلس بر 8 درصد مالیات بر ارزش اضافه تأکید میکنند. البته گفتگوهایی در این میان صورت میگیرد که به نظر من نتیجه بخش است. باید از تجربة کشورهایی که مرحلة گذرا را سپری کردهاند استفاده کنیم.
س- وزارت فرهنگ در قبال مافیای فرهنگی چگونه موضع گرفته است؟
ج- جالب است که حتّی روزنامهنگاران نیز از معضل مافیا در فرهنگ دوری میجویند. آنها هنوز حضور دارند و خواستهها و مطالبات خود را تحمیل میکنند. سالهاست که وزارت فرهنگ با آنها مقابله میکند. بسیاری از حقوق اولیه خود محروم هستند. من از آنها میخواهم که اعتراضات خود را با صدای بلند مطرح کنند.
س- رسانههای گروهی بعد از 5 اکتبر از آزادی بهتری برخوردار شدهاند. امروز بقایای تأثیرات سیاسی در دهة اخیر را چگونه ارزیابی میکنید؟
ج- باید اعتراف کنم که امروز رسانههای گروهی از آزادی کاملی برخوردار هستند. رادیو و تلویزیون و نشریات از سوی هیچ محفل سیاسی مدیریت نمیشوند. امّا این پرسش مطرح است که برخی صاحبان رسانهها و سردبیرها تا چه میزان از آزادی برخوردارند. این افراد باید آزادی را تمرین کنند و از هیچ قدرتی نهراسند. البته ما شاهد تهمتها و سانسورها از سوی رسانهها هستیم که از سوی روزنامه نگاران تازهکار صورت میگیرد. اگر میخواهیم به سطح اروپا برسیم باید در تشویق و ترغیب خبرنگاران و روزنامهنگاران حرفهای کار کنیم. زیرا آنها ماندگار خواهند بود.
برای افرادی که با بازی شطرنج آشنایی ندارند:
وزیر مهره ای از مهره های بازی شطرنجه که می تونه در تمامی 8 جهت هر تعداد خانه – تا زمانی که مهره ای مانع نباشه – حرکت کنه و اگه در یکی از این خانه ها مهره حریف قرار داشته باشه تهدیدش کنه.
مساله هشت وزیر : ما مساله رو در حالت کلی در نظر می گیریم. یعنی زمانی که ابعاد صفحه شطرنج n در n و تعداد مهره ها n هستش. ( n > 3 ) روشهای مختلفی برای پیدا کردن جواب وجود داره. یکی از این روشها چیدن تصادفی مهره ها روی صفحه شطرنجه! به عبارت دیگه n مهره رو به صورت تصادفی در خانه های مختلف صفحه قرار می دیم و بررسی می کنیم که آیا شرط مساله رو برآورده می کنن یا نه؟ این روش بسیار سریع ما رو به جواب می رسونه. اما ایرادی که داره نمی شه مطمئن بود بشه به همه حالتهای چینش دست پیدا کرد. در صفحه 8 در 8 شطرنج این مساله 92 جواب مختلف داره. شما ممکنه روش تصادفی رو هزار بار به کار ببرید، اما نتونید همه 92 حالت ممکنه رو به دست بیارید. این روش زمانی مفیده که پیدا کردن یه جواب برای ما کافی باشه.
در این دسته روشها مهره ها رو یکی یکی و به صورت بازگشتی روی صفحه طوری می چینیم که مطمئن باشیم با مهره های قبلی تداخل نداره و شرط مساله برآورده می شه. معمولا از سطر اول صفحه شروع می کنیم به قرار دادن مهره ها. پر واضحه که هر سطر فقط می تونه یه مهره رو تو خودش جا بده. مهره سطر دوم رو طوری قرار می دیم که توسط مهره سطر اول تهدید نشه. برای این کار خانه های مختلفی از سطر رو می شه انتخاب کرد. برای نظم داشتن کارهامون فرض می کنیم همیشه انتخاب خانه ها از سمت چپ سطر شروع می شه. به عبارت دیگه با شروع از سمت چپ سطر اولین خانه ای که شرط رو برآورده کنه انتخاب می کنیم. به همین ترتیب سطرهای بعدی رو هم می چینیم. اگر به سطری رسیدیم که بر اساس چیدمان سطرهای قبلی هیچ خانه امنی برای مهره وجود نداشت ( یعنی همه خانه ها توسط مهره های قبلی تهدید می شدن ) یه مرحله به عقب بر می گردیم و مهره سطر قبل رو جابجا می کنیم. این کار هم با حرکت مهره به اولین خانه سمت چپ موقعیت فعلی که شرط رو برآورده کنه، انجام می شه. با ادامه دادن این روال و با جابجا کردن مهره ها به صورت منظم و بازگشتی تمامی حالتهای ممکنه به دست می یان.
برای پیاده سازی چنین الگوریتمی و تشخیص اینکه چه خانه هایی از سطر امن هستن روشهای مختلفی وجود داره. ساده ترینشون اینه که هر بار تمامی خانه هایی رو که امکان تهدید شدن از اونها وجود داره بررسی کنیم تا از قرار نداشتن مهره وزیر در اونها مطمئن باشیم. اما این روش اصلا کارا و بهینه نیست.
روش دیگه تعریف کردن صفحه شطرنج به صورت یه آرایه n در n هستش که خونه های امن و غیر امن با علامتگذاری مشخص می شن. هر بار که مهره ای رو صفحه قرار می گیره تمام خونه هایی که توسط این مهره تهدید می شن به صورت غیر امن علامتگذاری می شن. به این ترتیب می شه فهمید که هر خونه با توجه به چینش مهره های قبلی امن هست یا نه؟ اما این روش هم معایبی داره که باعث می شه به روش سوم رجوع کنیم. برای آشنایی با این معایب کافیه سعی کنید کد برنامه رو بنویسید!
در روش سوم که من ازش استفاده کردم، برای علامتگذاری خانه های امن و غیر امن از شیوه دیگه ای بهره می بریم. به این ترتیب که اقطار راست به چپ، چپ به راست و ستونها با شماره هایی مشخص می شن که کار علامتگذاری رو بسیار ساده می کنن. این روش بدون شک از کاراترین روشهای رسیدن به جواب مساله ماست. هم سرعت اجرای بالایی داره و هم حافظه مصرفی بسیار کم!
کدی که به زبان ++C درباره این مساله نوشته شده با استفاده از روش سوم تعداد جوابهای ممکن – و نه خود جوابها – برای مقادیر مختلف n رو مشخص می کنه. به عنوان مثال اگر n رو 8 وارد کنید خروجی برنامه 92 خواهد بود. توصیه می کنم برای nهای بزرگ برنامه رو امتحان نکنید! اگر n رو 16 وارد کنید بعد از گذشتن زمان زیادی عدد 14772512 روی صفحه نمایش چاپ می شه. یعنی در صفحه شطرنج 16 در 16 حدود ۱۵ میلیون حالت مختلف برای چیدمان صحیح وجود داره!!
در ادامه میتونید الگوریتم، تحلیل و سورس کد این مسئله را ( با زبان های مختلف ) دانلود کنید.
عنوان:الگوریتم حل مسئله هشت وزیر
فرمت فایلها:ورد
تعداد فایل:شش عدد فایل
تعداد صفحات مجموعه کل فایلها:30
نگارش برنامه اجرایی هشت وزیر به زبانهای بزنامه نویسی:C وC++ و بورلند C++ و ویژوال بیسک
nvazir.cpp
در این بازی ما باید هشت وزیر را بگونه ای در صحه شطرنج بچینیم که هیچ یک از وزیرها، 7 وزیر دیگر را تهدید نکند.
فصل اول : طراحی
گام نخست : پیاده سازی مهره و کاشی بازی
گام دوم : تعریف پارامترها و نام دامنه برای User Control ها
گام سوم : تابع تنظیم ردیف و ستون
گام چهارم : ایجاد و نابود سازی User Control ها ن مقاله موزیرود در محیط های مختلف طراحی و پیاده سازی کنند.گوریتم هشت وزیر را تحلیل کرده و بازگشتی و غیر بازگشتی نوشته
گام پنجم : چیدن مهره ها در صفحه شطرنج
گام ششم : کشیدن حاشیه بین کاشی ها.باشد.
گام هفتم : نگاه کلی بر کلاس SquareControl
فصل دوم : پیاده سازی محیط بازی
گام هشتم : تعریف متغییر های تخته بازی
گام نهم : پیاده سازی تابع سازنده تخته بازی
گام دهم : ذخیره 92 حالت مختلف
فصل سوم : الگوریتم هشت وزیر به روش غیر بازگشتی
گام یازدهم : معرفی الگوریتم
گام دوازدهم : روش بررسی صحّت قرار گیری مهره
فصل چهارم : الگوریتم هشت وزیر به روش بازگشتی
گام سیزدهم : معرفی الگوریتم
گام چهاردهم : روش بررسی صحّت قرارگیری مهره