منو
  1. آخرین فایل ها
  2. پرفروشترین فایل ها
  3. پربازدیدترین فایل ها
تهیه نرم افزار حقوق و دستمزد - کارشناسی نرم افزار

تهیه نرم افزار حقوق و دستمزد - کارشناسی نرم افزار

بررسي عملكرد خانواده در كنترل خشم نوجوانان دختر و پسر نوجوان

بررسي عملكرد خانواده در كنترل خشم نوجوانان دختر و پسر نوجوان

تأثیر مشاوره گروهی با رویکرد تحلیل رفتار متقابل بر سازگاری

تأثیر مشاوره گروهی با رویکرد تحلیل رفتار متقابل بر سازگاری

بررسي قابليت گزارشگري مطلوب سيستم اطلاعات حسابداري شهرداري

بررسي قابليت گزارشگري مطلوب سيستم اطلاعات حسابداري شهرداري

آموزش تله کینزی در 2 روز(حرکت اجسام با نیروی ذهن)

آموزش تله کینزی در 2 روز(حرکت اجسام با نیروی ذهن)

دانلو نمونه سوال تئوری ورق و پوسته

دانلو نمونه سوال تئوری ورق و پوسته

پروژه بلوتوث

پروژه بلوتوث

کسب درآمد از اینترنت تا سقف ماهانه 10 ملیون تومان عجله کنید!!!

کسب درآمد از اینترنت تا سقف ماهانه 10 ملیون تومان عجله کنید!!!

دانلود پاورپوینت گل گندم خاردار

دانلود پاورپوینت گل گندم خاردار

الگوریتم و سورس کد مسئله هشت وزیر

الگوریتم و سورس کد مسئله هشت وزیر

گروه محصول -> پروژه های برنامه نویسی -> c++ و c

الگوریتم و سورس کد مسئله هشت وزیر



قیمت: ۴۰۰۰۰ریال     تعداد صفحات:      کد محصول :9818



مساله هشت وزیر از جمله مسائل پرمخاطب مباحث طراحی الگوریتم است. ۸  مهره وزیر رو روی صفحه شطرنج چنان بچینید که نتونن همدیگه رو تهدید کنن.

برای افرادی که با بازی شطرنج آشنایی ندارن:

وزیر مهره ای از مهره های بازی شطرنجه که می تونه در تمامی 8 جهت هر تعداد خانه – تا زمانی که مهره ای مانع نباشه – حرکت کنه و اگه در یکی از این خانه ها مهره حریف قرار داشته باشه تهدیدش کنه.

مساله هشت وزیر :  ما مساله رو در حالت کلی در نظر می گیریم. یعنی زمانی که ابعاد صفحه شطرنج n در n و تعداد مهره ها n هستش. ( n > 3 ) روشهای مختلفی برای پیدا کردن جواب وجود داره. یکی از این روشها چیدن تصادفی مهره ها روی صفحه شطرنجه! به عبارت دیگه n مهره رو به صورت تصادفی در خانه های مختلف صفحه قرار می دیم و بررسی می کنیم که آیا شرط مساله رو برآورده می کنن یا نه؟ این روش بسیار سریع ما رو به جواب می رسونه. اما ایرادی که داره نمی شه مطمئن بود بشه به همه حالتهای چینش دست پیدا کرد. در صفحه 8 در 8 شطرنج این مساله 92 جواب مختلف داره. شما ممکنه روش تصادفی رو هزار بار به کار ببرید، اما نتونید همه 92 حالت ممکنه رو به دست بیارید. این روش زمانی مفیده که پیدا کردن یه جواب برای ما کافی باشه.

در این دسته روشها مهره ها رو یکی یکی و به صورت بازگشتی روی صفحه طوری می چینیم که مطمئن باشیم با مهره های قبلی تداخل نداره و شرط مساله برآورده می شه. معمولا از سطر اول صفحه شروع می کنیم به قرار دادن مهره ها. پر واضحه که هر سطر فقط می تونه یه مهره رو تو خودش جا بده. مهره سطر دوم رو طوری قرار می دیم که توسط مهره سطر اول تهدید نشه. برای این کار خانه های مختلفی از سطر رو می شه انتخاب کرد. برای نظم داشتن کارهامون فرض می کنیم همیشه انتخاب خانه ها از سمت چپ سطر شروع می شه. به عبارت دیگه با شروع از سمت چپ سطر اولین خانه ای که شرط رو برآورده کنه انتخاب می کنیم. به همین ترتیب سطرهای بعدی رو هم می چینیم. اگر به سطری رسیدیم که بر اساس چیدمان سطرهای قبلی هیچ خانه امنی برای مهره وجود نداشت ( یعنی همه خانه ها توسط مهره های قبلی تهدید می شدن ) یه مرحله به عقب بر می گردیم و مهره سطر قبل رو جابجا می کنیم. این کار هم با حرکت مهره به اولین خانه سمت چپ موقعیت فعلی که شرط رو برآورده کنه، انجام می شه. با ادامه دادن این روال و با جابجا کردن مهره ها به صورت منظم و بازگشتی تمامی حالتهای ممکنه به دست می یان.

برای پیاده سازی چنین الگوریتمی و تشخیص اینکه چه خانه هایی از سطر امن هستن روشهای مختلفی وجود داره. ساده ترینشون اینه که هر بار تمامی خانه هایی رو که امکان تهدید شدن از اونها وجود داره بررسی کنیم تا از قرار نداشتن مهره وزیر در اونها مطمئن باشیم. اما این روش اصلا کارا و بهینه نیست.

روش دیگه تعریف کردن صفحه شطرنج به صورت یه آرایه n در n هستش که خونه های امن و غیر امن با علامتگذاری مشخص می شن. هر بار که مهره ای رو صفحه قرار می گیره تمام خونه هایی که توسط این مهره تهدید می شن به صورت غیر امن علامتگذاری می شن. به این ترتیب می شه فهمید که هر خونه با توجه به چینش مهره های قبلی امن هست یا نه؟ اما این روش هم معایبی داره که باعث می شه به روش سوم رجوع کنیم. برای آشنایی با این معایب کافیه سعی کنید کد برنامه رو بنویسید!

در روش سوم که من ازش استفاده کردم، برای علامتگذاری خانه های امن و غیر امن از شیوه دیگه ای بهره می بریم. به این ترتیب که اقطار راست به چپ، چپ به راست و ستونها با شماره هایی مشخص می شن که کار علامتگذاری رو بسیار ساده می کنن. این روش بدون شک از کاراترین روشهای رسیدن به جواب مساله ماست. هم سرعت اجرای بالایی داره و هم حافظه مصرفی بسیار کم!

کدی که به زبان ++C درباره این مساله نوشته شده با استفاده از روش سوم تعداد جوابهای ممکن – و نه خود جوابها – برای مقادیر مختلف n رو مشخص می کنه. به عنوان مثال اگر n رو 8 وارد کنید خروجی برنامه 92 خواهد بود. توصیه می کنم برای nهای بزرگ برنامه رو امتحان نکنید! اگر n رو 16 وارد کنید بعد از گذشتن زمان زیادی عدد 14772512 روی صفحه نمایش چاپ می شه. یعنی در صفحه شطرنج 16 در 16 حدود ۱۵ میلیون حالت مختلف برای چیدمان صحیح وجود داره!!

 

دانلود پروژه ++C



  • پس از پرداخت موفق لینک دانلود هم نمایش داده می شود هم به ایمیل ارسال می گردد
  • ایمیل را بدون www وارد کنید و در صورت نداشتن این قسمت را خالی بگزارید
  • در صورت هر گونه مشگل در پروسه خرید میتوانید با پشتیبانی تماس بگیرید گزارش تخلف

برچسب ها:الگوریتم و سورس کد مسئله هشت وزیر  پروژه برنامه نویسی ++c  دانلود پروژه ++C    
نام ونام خانوادگي:


پست الکترونيکي:


عنوان:


پيام:


ارسال پيام به صورت شخصي
کد امنيتي:

برگزیده ها

  • 1
  • 2

پروژه مرکز داده

پروژه مرکز داده

پروژه مرکز داده

حجم:28560KB | بازدید :8

عنوان پروژه : مرکز داده (دوره کارشناسی رشته مهندسی کامپیوتر گرایش نرم افزار) قالب بندی : Word .................................................................................... شرح مختصر: در جهان پرشتاب و پيچيده امروز، در هر تحول وحركت جديدي نيازها و مسايل جديد و بعضاً پيچيده اي به چشم مي خورد كه...

کسب درآمد از اینترنت تا سقف ماهانه 10 ملیون تومان عجله کنید!!!

کسب درآمد از اینترنت تا سقف ماهانه 10 ملیون تومان عجله کنید!!!

کسب درآمد از اینترنت تا سقف ماهانه 10 ملیون تومان عجله کنید!!!

حجم:15069KB | بازدید :23

  آموزش کامل تکنیک های کسب درآمد از طریق اینترنت ماهی ۱۰ میلیون تمان درآمد ثابت در کمتر از ۷۰ روز بدون داشتن هیچ وبلاگ یا سایت یا حتی ۱ ریال سرمایه گذاری اولیه تا کسب درآمد میلیونی فقط ۱ قدم فاصله دارید بصورت تضمینی با تمامی راه ها و روش های موجود کاملا تضمینی و...

حل المسائل کامل رسم فنی و نقشه های صنعتی ۱

حل المسائل کامل رسم فنی و نقشه های صنعتی ۱

حل المسائل کامل رسم فنی و نقشه های صنعتی ۱

حجم:11152KB | بازدید :7

حل المسائل کامل رسم فنی و نقشه های صنعتی 1 کامل ترین با حجم 10 مگابایت فرمت jpj( عکس) باکیفیت. تنها حل کامل در این سایت موجود...

پایان نامه مهاجرت وحاشیه نشینی و امنیت شهرها

پایان نامه مهاجرت وحاشیه نشینی و امنیت شهرها

پایان نامه مهاجرت وحاشیه نشینی و امنیت شهرها

حجم:9994KB | بازدید :14

مهاجرت و حاشيه‌نشيني دو پديده به ظاهر متفاوت مي‌باشند كه برآيند يك عامل مشترك بوده و نتايج و تبعات مشابهي  هم بخصوص براي شهرها بدنبال دارد. مهاجرت كه خود نتيجه ی نابرابري‌هاي مكاني و بي‌عدالتي‌هاي منطقه‌اي مي‌باشد، به دليل ويژگي‌هاي خاص مهاجران و علل...

پروژه بلوتوث

پروژه بلوتوث

پروژه بلوتوث

حجم:8024KB | بازدید :38

عنوان پروژه : بلوتوث قالب بندی : Word و pdf .......................................................................... چکیده مختصر: تاریخچه Bluetooth    در سال 1994 مطالعاتی در شرکت اريکسون برای برقراری ارتباط راديويی کم توان و ارزان بين تلفن های سيار و تجهيزات جانبی آنها آغاز شد شرايط مورد...

آموزش ساخت کوادروتور در کم ترین زمان 3 روز

آموزش ساخت کوادروتور در کم ترین زمان 3 روز

آموزش ساخت کوادروتور در کم ترین زمان 3 روز

حجم:7227KB | بازدید :5

  در این آموزش که یکی از بهترین آموزش جامع و کامل  است می توانید در کم ترین زمان خودتان یک کوادروتور بسازید در این فایل که با فرمت pdf همراه با عکس با کیفیت خودتان قادر به طراحی ایر فریم بوده قطعه های لازم و نحوه اتصالات قطعات  با توضیح کاملا دقیق همراه با عکس...

نرم افزار دانلود مستقیم برنامه های پولی گوگل پلی

نرم افزار دانلود مستقیم برنامه های پولی گوگل پلی

نرم افزار دانلود مستقیم برنامه های پولی گوگل پلی

حجم:5685KB | بازدید :10

نرم افزار دانلود مستقیم برنامه های پولی گوگل پلی(تضمینی)     دانلود برنامه های کاربردی یا بازی های پولی گوگل دیگر رویا نیست با این برنامه خارجی که به صورت یک مارکت است می توانید بدون هیچ دردسری برنامه ها و بازی ها پولی و غیر پولی را دانلود کرد این برنامه دیتای...

پایان نامه سیستم های امنیتی شبکه

پایان نامه سیستم های امنیتی شبکه

پایان نامه سیستم های امنیتی شبکه

حجم:5044KB | بازدید :15

  عنوان پایان نامه : تحقیق سیستم های امنیتی شبکه (پایان نامه دوره کاردانی کامپیوتر)   قالب بندی : pdf...