[ Pomaze_Bog @ 26.04.2005. 11:01 ] @
Ko ne zna legendu evo je... U jednom budističkom manastiru postoje tri štapa sa nanizanim prstenovima koji su svi različite veličine. U početku su bili nanizani na prvom štapu, i to tako da je na svakome stajao manji od njega. Ostavljeno je u amanet monasima da premeste sve prstenove (mislim oko 48) na treći štap uz pomoć drugog, i to jedan po jedan, tako da se zadrži početni poredak - da nikako ne sme doći veći prsten iznad manjeg. Legenda kaže (što je manje važno) da će, kada se premeste svi prstenovi na treći štap, doći kraj sveta. E, sad, pretočite to u pascalov programčić... Zapravo, to smo radili u školi, ali mi nije baš jasno šta se zapravo dešava, i na koju foru rade ove rekurzije... Evo ga kod: Code: program HanojskeKule; procedure Prebaci(n:integer; izvor, pomoc, cilj: char); begin if n=1 then writeln('Sa ',izvor,' na ',cilj) else begin Prebaci(n-1, izvor, cilj, pomoc); writeln('Sa ',izvor,' na ',cilj); Prebaci(n-1, pomoc, izvor, cilj) end end; var n:integer; begin write('n='); readln(n); Prebaci(n,'A','B','C'); writeln('Enter...'); readln end. |