amir_amiri
14-05-2008, 15:38
سلام دوستان
اگه میشه کسی الگوریتم این برنامه را به من بگه من خودم می نویسمش ولی تو درآوردن الگوریتمش
مشکل دارم.:41:
برنامه از این قراره:سه تا میله داریم و تعدادی دیسک با اندازه های مختلف(تعداد دیسک ها کمتر از 16 تاست و کاربر اونو وارد می کنه ).در ابتدا تعدادی دیسک روی هر یک از میله ها قرار گرفته به نحوی که روی هر میله دیسک ها به ترتیب اندازه قرار گرفتن. یعنی هیچ دیسک بزرگتری روی دیسک کوچکتر قرار نگرفته.کاربر وارد می کنه که روی هر
کدوم از این میله ها چند تا دیسک و کدوم دیسکها (به هر دیسک بر حسب اندازه اش یه عدد بین یک و تعداد دیسک ها می ده) قرار گرفتن . بعدش ما باید تمام دیسک ها را با کمترین تعداد حرکت به میله اول منتقل کنیم به طوری که توی هر مرحله جا به جایی دیسک بزرگتر نمی تونه روی دیسک کوچکتر قرار بگیره. در آخر باید در خروجی تعداد حرکات لازم و این که هر حرکت از کدوم میله به کدوم میله است رو چاپ کنیم.
خیلی ممنون میشم اگه کسی در مورد الگوریتم این برنامه به من کمک کنه.
اگه میشه کسی الگوریتم این برنامه را به من بگه من خودم می نویسمش ولی تو درآوردن الگوریتمش
مشکل دارم.:41:
برنامه از این قراره:سه تا میله داریم و تعدادی دیسک با اندازه های مختلف(تعداد دیسک ها کمتر از 16 تاست و کاربر اونو وارد می کنه ).در ابتدا تعدادی دیسک روی هر یک از میله ها قرار گرفته به نحوی که روی هر میله دیسک ها به ترتیب اندازه قرار گرفتن. یعنی هیچ دیسک بزرگتری روی دیسک کوچکتر قرار نگرفته.کاربر وارد می کنه که روی هر
کدوم از این میله ها چند تا دیسک و کدوم دیسکها (به هر دیسک بر حسب اندازه اش یه عدد بین یک و تعداد دیسک ها می ده) قرار گرفتن . بعدش ما باید تمام دیسک ها را با کمترین تعداد حرکت به میله اول منتقل کنیم به طوری که توی هر مرحله جا به جایی دیسک بزرگتر نمی تونه روی دیسک کوچکتر قرار بگیره. در آخر باید در خروجی تعداد حرکات لازم و این که هر حرکت از کدوم میله به کدوم میله است رو چاپ کنیم.
خیلی ممنون میشم اگه کسی در مورد الگوریتم این برنامه به من کمک کنه.