DataMuseum.dk

Presents historical artifacts from the history of:

CP/M

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CP/M

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦0f802951c⟧ TextFile

    Length: 2048 (0x800)
    Types: TextFile
    Names: »TOWER.PRN«

Derivation

└─⟦49cd49952⟧ Bits:30009431 50004848
    └─⟦0c326962c⟧ 
        └─⟦this⟧ »TOWER.PRN« 

TextFile

Pro Pascal Compiler - Version zz 1.4

Compilation of: b:tower.pas

Options:    LCNOIAPHSD

    1   0000    PROGRAM TOWERSOFHANOI (INPUT, OUTPUT);
    2   0000    
    3   0000    TYPE  POLE = (LEFT, MIDDLE, RIGHT) ;
    4   0000          POSITIVEINTEGER = 1..MAXINT ;
    5   0000    
    6   0000    VAR   NUMBEROFDISKS : POSITIVEINTEGER ;
    7   0000    
    8   0000    PROCEDURE MOVE (N : POSITIVEINTEGER ;
    9   0000                    SOURCE, AUXILIARY, DESTINATION : POLE) ;
   10   0000    
   11   0000       PROCEDURE MOVEDISK ;
   12   0000    
   13   0000          PROCEDURE PRINTPOLE (P : POLE) ;
   14   0000             BEGIN
   15   0000                CASE P OF
   16   0010                  LEFT : WRITE ('LEFT') ;
   17   0027                  MIDDLE : WRITE ('MIDDLE') ;
   18   0040                  RIGHT : WRITE ('RIGHT')  
   19   0056                END
   20   0066             END ; (* PRINTPOLE *)
   21   0069    
   22   0069    
   23   0069          BEGIN
   24   0069            WRITE ('MOVE A DISK FROM ') ;  PRINTPOLE (SOURCE) ;
   25   00A0            WRITE (' TO ') ;  PRINTPOLE (DESTINATION) ;
   26   00C3            WRITELN
   27   00C6          END ; (* MOVEADISKFROMSOURCETODESTINATION *)
   28   00CC    
   29   00CC    BEGIN
   30   00CC       IF N=1 THEN MOVEDISK
   31   00E7              ELSE BEGIN
   32   00F3                      MOVE (N-1, SOURCE, DESTINATION, AUXILIARY) ;
   33   011A                      MOVEDISK ;
   34   0124                      MOVE (N-1, AUXILIARY, SOURCE, DESTINATION)
   35   0148                   END
   36   014B    END ; (* MOVE *)
   37   014E    BEGIN
   38   014E      READ (NUMBEROFDISKS) ;
   39   0171    
   40   0171      WRITELN ('FOR', NUMBEROFDISKS:3, ' DISKS ',       
   41   01A7               'THE REQUIRED MOVES ARE :') ; WRITELN ;
   42   01D6      MOVE (NUMBEROFDISKS, LEFT, MIDDLE, RIGHT)
   43   01EC    END. 
«eof»