|
|
1.1 ! root 1: program hanoi(input,output); ! 2: const print = 0; ! 3: DISK = 14; ! 4: var num: array[1..3] of integer; ! 5: ow: integer; ! 6: cnt: integer; ! 7: disk: integer; ! 8: procedure mov(n,f,t : integer); ! 9: var o: integer; ! 10: begin ! 11: if n = 1 then begin ! 12: num[f] := num[f] - 1; ! 13: num[t] := num[t] - 1; ! 14: if print = 1 then writeln('Move ',f, ' to ', t); ! 15: cnt := cnt + 1; ! 16: end ! 17: else begin ! 18: o := 6 - (f+t); ! 19: mov(n-1,f,o); ! 20: mov(1,f,t); ! 21: mov(n-1,o,t); ! 22: end ! 23: end; ! 24: ! 25: begin ! 26: disk := DISK; ! 27: writeln('Number: '); ! 28: read(disk); ! 29: num[1] := disk; ! 30: cnt := 0; ! 31: if print = 1 then writeln('start ',disk); ! 32: ow := wallclock; ! 33: mov(disk,1,3); ! 34: writeln('For ',disk:3,' ',cnt:10,' steps, time',wallclock-ow); ! 35: end.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.