وبلاگ فرهاد مرتضی پور

Farhad Mortezapour's Blog

وبلاگ فرهاد مرتضی پور

Farhad Mortezapour's Blog

برنامه بازی برج های هانوی (Tower of Hanoi) به زبان پاسکال

این کد برنامه کامل "برج هانوی" می باشد. همانطور که می دانید این بازی به طوری است که سه میله و تعدادی دیسک داریم. دیسک ها به ترتیب شماره گذاری شده از پائین به بالا (و از بزرگ به کوچک) در میله اول چینده شده اند. ما باید برنامه ای بنویسیم که این دیسک ها از میله یک به میله سوم منتقل شوند (و به همین ترتیب چیده شوند) این بازی یک قانون دارد که هیچگاه یک دیسک بزرگتر نمی تواند روی یک دیسک کوچکتر قرار گیرد. این برنامه به وسیله توابع بازگشتی نوشته شده است. البته این تنها راه نوشتن این بازی نیست!

 

 

 

program hanoi;

var     n,i:integer;

procedure transfer(n,m1,m3,m2:integer);

          procedure diskmove(m1,m3:integer);

          begin

               writeln(i,') Move ',m1,' To ',m3); i:=i+1

          end;

begin

     if n>0 then

     begin

          transfer(n-1,m1,m2,m3);

          diskmove(m1,m3);

          transfer(n-1,m2,m3,m1);

     end

end;

 

begin   {main begin}

     i:=1;

     write('Enter the number of disks: ');

     readln(n);

     writeln;

     transfer(n,1,3,2);

     readln

end.

نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد