برج هانوی رو همه میشناسن:انتقال n حلقه از یک میله به میله دوم به کمک یک میله سوم.برنامه خروجی حرکات رو در چند سطر چاپ میکنه.
بدست آوردن روش حل خیلی سادست.فرض کنید ما دو مهره داریم.میخواهیم a را از ستون اول ببریم به ستون سوم.b روی a قرار گرفته ، پس باید اول b رو خارج کنیم یعنی b رو ببریم به ستون دوم تا بشه a رو برد به ستون سوم.بعد از این ما b رو به ستون سوم میبریم.
برای بیشتر از دو مهره هم به همین ترتیب عمل میکنیم.یعنی اگر بخوایم n مهره رو از ستون 1 ببریم به ستون 3 باید اول مهره اول رو از جاش حرکت بدیم منتها قبلش باید n-1 مهره روی مهره اول رو ببریم به یه ستون دیگه یعنی:
void honoi(n,a,c,) 0
}
if(n==1) move(a,c); 0
else
honoi(n-1,a,b); 0
{
درضمن با عرض پوزش برنامه غیر گرافیکی هست.ان شاءالله گرافیکیشم میذارم براتون.