Towers of Hanoi

From Rosetta Code
Revision as of 18:44, 29 August 2007 by rosettacode>On5M1p

le olimpiadi della giungla el chiringuito bisca dr4800 lg master falcon etilometro ebony pussy cavit karabey espectaculo lavoro lanciano video rock master strong la guerra di pero certificazioni gas metano tommy srl my sacrifice vendita personal computer chimaira carene neonato set avent stadio 2 sprint tariffa aere power color 9600pro televisore philips 25 agguato nei caraibi ozone mia ai ha gioco demo simulatore commercialista nike dry fit vasco rossi net foto hard lilli carati gratis vacuna contra el cancer single calabresi danzig km0 fiat punto d diesel auto km 0 lettini viaggio graco codag dvd vhs combinato annuncio cartomanzia parnaso raffaello decoder satellite humax selen super troia ragazzo civitanova marche apple motion ufficio somma lombardo motorhead the best of motorhead il paese senza dio ceraunavolta tapis roulant olympic 2000 grow old with you silvia salemi genio e follia micheal buble the way you look tonight butinar www gazzzetta depucellage russia cartina sinto tv videoproiettori colonne sonore highlander fg 42 jeep minnesota cose fare surgical gloves www totoscommesse it perfekte ufficio lyon baba o riley hellgate il grande inferno memoria aspire 1200 accessori canon xl1 dvp3010 dvd dvx philips meteo bologna multipla bipower torino globe theatre roma sodimm 512 mb 333 fiera inquieta biancheria intima donna schiavo terry palmare palmone treo 600 uno straniero a sacramento cerco corriere per trasporto cuccioli la cavalletta www lanciay it horsex fotos de los pijos 87 tribute philips 32pw9309 gate jump coracle frontera com f1 world grand prix thomas friedman biglietto di augurio da stampare electrolux trilobite 2 versace woman regali nascita gigaset c35 monopoli hp 970cxi sboccare motorola a835 www lupin com cardiofrequenzimetro ciclismo sport e jvc mc500e codici sblocco lg u8110 la voce della calunnia best time viaggi televisori 10 pollici memoria ram 512 ddr bella riccardo cocciante tutti i miei sbagli not without us rotten in culo hp nx 6125 storia della pubblicita www the oc it videofonino lg universite reims vanni basi nusicali www vitadidonna it fiat punto speed 1 3 canon ef 50mm dream desk pc gemini (astronomia) video titmuss inviato da roberta abit fatal1ty 939 fiat marea 105 jtd elx mesoterapia corso i m so exciting mercy drive server di memorizzazione di rete i duetti di teatro 10 w w w meteotrentino it la ragazza di tony usbstor file maker pro 7 bluetoth kenwood bm300 di saracu empire ehart fly on drugs key tps france entony club lightin break incontro pinerolo le soldat inconnu sauvegarde big tettone quan nha la vn com sm 17 amstrad lettore dx itaia 1 fiera di milano epson monitor lavoro a verbania mostert new mediaguard keys photo porno sonho lindo ona notebook pentium 4 3 ghz giorgia on my mind nero wolfe circuito chiuso sistema operativo pocket pc televisori lcd 30 sony vicentico re scorpione world championship 2004 yu gi oh filmografia carmen elettra toshiba 60 seggiolino auto brevi billy honey fischia il vento cortona turismo nikon mc20 calathea euronova italia it spaccio cesare paciotti civitanova nude in video we are the worlde predator pulse calcio cit viaggi programma per mixare hot meil the aristocrats memoria portatile 1gb frodi cheguevara quetzal reinhold messner novecento bertolucci nuova fiat furgone auto nuove la roccia di fuoco kingston 512mb ddr sodimm (915) katie cassidy navigatore gps satellitare garmin pallavolo a firenze hymn polski cavo dvi hdmi rasoi elettrici ricaricabili philips

Task
Towers of Hanoi
You are encouraged to solve this task according to the task description, using any language you may know.

In this task, the goal is to solve the Towers of Hanoi problem with recursivity.

Ada

with Ada.Text_Io; use Ada.Text_Io;

procedure Towers is
   type Pegs is (Left, Center, Right);
   procedure Hanoi (Ndisks : Natural; Start_Peg : Pegs := Left; Via_Peg : Pegs := Center; End_Peg : Pegs := Right) is
   begin
      if Ndisks > 0 then
         Hanoi(Ndisks - 1, Start_Peg, Via_Peg, End_Peg);
         Put_Line("Move disk"