اولین بار است که به این وب‌سایت می‌آیید. راهنما را مطالعه کنید!
x
موسسه خیریه محک

شهر ریاضی بازی-ریاضی

Sudoku in ++C

0 امتیاز
465 نمایش

قصد طراحی یک جدول سودوکو رو C++ دارم..
با تابع rand ی جدول 9*9 طراحی کردم و تو ی فایل ذخیره کردم
حالا می خوام ب صورت رندوم بعضی از عددها رو حذف کنم تا کاربر ب جاش عدد بذاره..
چطوری این کارو انجام بدم؟؟ ))

پرسیده شده یکشنبه ۲۱ اردیبهشت ۱۳۹۳ در C++ توسط Masiha  
ویرایش شده یکشنبه ۲۱ اردیبهشت ۱۳۹۳ توسط Masiha

1 پاسخ

0 امتیاز

۱) خب قبل از این که فایل رو ذخیره کنین می‌تونین اعداد مورد نظر رو حذف کنین. راحت تره که

۲) حذف اعداد از سودوکو به همین راحتی‌ها هم نیست ها! ممکنه با حذف اعداد زیادی، باعث بشین سودوکو جواب منحصر به فرد نداشته باشه.

هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پاسخ داده شده دوشنبه ۲۲ اردیبهشت ۱۳۹۳ توسط prodo  

درسته ولی وا3 حل سودوکو از آخر به اول می خوام عمل کنم ک اول یه جدول آماده کنم و بعد ی قسمت هاییش رو حذف کنم تا کاربر پر کنه && با اون طرح اولیه مقایسه کنم تا کاربر ب جواب برسه..
نمی دونم این روش جواب میده یا نه.. الگوریتم دگ ای سراغ دارید عایا؟

روش‌تون درسته. با دو تا شرط.
۱) جدول رندوم اولیه که می‌سازین واقعاً یک جدول درست سودوکو باشه. طوری که گفتین رندوم پر کردین مطمئن هستین که جدول کامل شده، همه‌ی قواعد و رعایت کرده؟
۲) وقتی اعدادی رو حذف می‌کنین بیش از حد حذف نکنین. چون در این صورت ممکنه پازلی که ساختین چند تا جواب درست داشته باشه که یکی‌ش جواب مورد نظر شماست.

درسته حرفتون، این جدول 9*9 ک با rand ایجاد میشه عدد تکراری داره..
میفکرم استفاده از ی روش دگ بهتر جواب بده واس این کد؛
ممنون.