DataMuseum.dk

Presents historical artifacts from the history of:

MIKADOS

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

See our Wiki for more about MIKADOS

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦1d70c8cea⟧ TextFile

    Length: 2528 (0x9e0)
    Types: TextFile
    Notes: Mikados_K
    Names: »FORKORT.K«

Derivation

└─⟦4cd80c18f⟧ Bits:30003895/4xCOMAL3a.imd 4 * COMAL - SPC/1 - Disketter til bogen
    └─⟦this⟧ »FORKORT.K« 
└─⟦bcf7b34c7⟧ Bits:30003895/4xCOMAL2.imd 4 * COMAL - SPC/1 - Disketter til bogen
    └─⟦this⟧ »FORKORT.K« 

Mikados K File

0010 // --------------------- Forkort -------------------------
0015 INTEGER DIVIDEND,DIVISOR
0020 // 
0030 PROC FNSFD(N,M)
0040 WHILE M>0 DO 
0050 REST:=N MOD M
0060 N:=M;M:=REST
0070 ENDWHILE 
0080 FNSFD:=N
0090 ENDPROC FNSFD
0100 // 
0110 PROC FORKORT(REF TÆLLER,REF NÆVNER)
0120 FAKTOR:=FNSFD(TÆLLER,NÆVNER)
0130 TÆLLER:=TÆLLER/FAKTOR
0140 NÆVNER:=NÆVNER/FAKTOR
0150 ENDPROC FORKORT
0160 // 
0170 CLEAR 
0175 PRINT 
0180 INPUT "Indtast tæller og nævner:  ":DIVIDEND,DIVISOR
0190 PRINT 
0200 PRINT DIVIDEND;"/";DIVISOR;
0210 EXEC FORKORT(DIVIDEND,DIVISOR)
0220 IF FAKTOR=1 THEN 
0230 PRINT " er uforkortelig."
0240 ELSE 
0250 PRINT " kan forkortes til ";
0260 IF DIVISOR=1 THEN 
0270 PRINT DIVIDEND
0280 ELSE 
0290 PRINT DIVIDEND;"/";DIVISOR
0300 ENDIF 
0310 ENDIF 

Mikados K File

0x000…041 Line {l1=0x3f, l2=»0010 // --------------------- Forkort -------------------------«, l3=0x3f}
0x041…060 Line {l1=0x1d, l2=»0015 INTEGER DIVIDEND,DIVISOR«, l3=0x1d}
0x060…06a Line {l1=0x08, l2=»0020 // «, l3=0x08}
0x06a…080 Line {l1=0x14, l2=»0030 PROC FNSFD(N,M)«, l3=0x14}
0x080…094 Line {l1=0x12, l2=»0040 WHILE M>0 DO «, l3=0x12}
0x094…0a8 Line {l1=0x12, l2=»0050 REST:=N MOD M«, l3=0x12}
0x0a8…0bb Line {l1=0x11, l2=»0060 N:=M;M:=REST«, l3=0x11}
0x0bb…0cb Line {l1=0x0e, l2=»0070 ENDWHILE «, l3=0x0e}
0x0cb…0da Line {l1=0x0d, l2=»0080 FNSFD:=N«, l3=0x0d}
0x0da…0ee Line {l1=0x12, l2=»0090 ENDPROC FNSFD«, l3=0x12}
0x0ee…0f8 Line {l1=0x08, l2=»0100 // «, l3=0x08}
0x0f8…122 Line {l1=0x28, l2=»0110 PROC FORKORT(REF TÆLLER,REF NÆVNER)«, l3=0x28}
0x122…145 Line {l1=0x21, l2=»0120 FAKTOR:=FNSFD(TÆLLER,NÆVNER)«, l3=0x21}
0x145…161 Line {l1=0x1a, l2=»0130 TÆLLER:=TÆLLER/FAKTOR«, l3=0x1a}
0x161…17d Line {l1=0x1a, l2=»0140 NÆVNER:=NÆVNER/FAKTOR«, l3=0x1a}
0x17d…193 Line {l1=0x14, l2=»0150 ENDPROC FORKORT«, l3=0x14}
0x193…19d Line {l1=0x08, l2=»0160 // «, l3=0x08}
0x19d…1aa Line {l1=0x0b, l2=»0170 CLEAR «, l3=0x0b}
0x1aa…1b7 Line {l1=0x0b, l2=»0175 PRINT «, l3=0x0b}
0x1b7…1f2 Line {l1=0x39, l2=»0180 INPUT "Indtast tæller og nævner:  ":DIVIDEND,DIVISOR«, l3=0x39}
0x1f2…1ff Line {l1=0x0b, l2=»0190 PRINT «, l3=0x0b}
0x1ff…221 Line {l1=0x20, l2=»0200 PRINT DIVIDEND;"/";DIVISOR;«, l3=0x20}
0x221…246 Line {l1=0x23, l2=»0210 EXEC FORKORT(DIVIDEND,DIVISOR)«, l3=0x23}
0x246…25e Line {l1=0x16, l2=»0220 IF FAKTOR=1 THEN «, l3=0x16}
0x25e…27e Line {l1=0x1e, l2=»0230 PRINT " er uforkortelig."«, l3=0x1e}
0x27e…28a Line {l1=0x0a, l2=»0240 ELSE «, l3=0x0a}
0x28a…2ad Line {l1=0x21, l2=»0250 PRINT " kan forkortes til ";«, l3=0x21}
0x2ad…2c6 Line {l1=0x17, l2=»0260 IF DIVISOR=1 THEN «, l3=0x17}
0x2c6…2db Line {l1=0x13, l2=»0270 PRINT DIVIDEND«, l3=0x13}
0x2db…2e7 Line {l1=0x0a, l2=»0280 ELSE «, l3=0x0a}
0x2e7…308 Line {l1=0x1f, l2=»0290 PRINT DIVIDEND;"/";DIVISOR«, l3=0x1f}
0x308…315 Line {l1=0x0b, l2=»0300 ENDIF «, l3=0x0b}
0x315…322 Line {l1=0x0b, l2=»0310 ENDIF «, l3=0x0b}
0x322…340 00 00 31 35 20 49 4e 54 45 47 45 52 20 44 49 56 49 44 45 4e 44 2c 44 49 56 49 53 4f 52 1d         ┆  15 INTEGER DIVIDEND,DIVISOR ┆
0x340…360 08 30 30 32 30 20 2f 2f 20 08 14 30 30 33 30 20 50 52 4f 43 20 46 4e 53 46 44 28 4e 2c 4d 29 14   ┆ 0020 //   0030 PROC FNSFD(N,M) ┆
0x360…380 12 30 30 34 30 20 57 48 49 4c 45 20 4d 3e 30 20 44 4f 20 12 12 30 30 35 30 20 52 45 53 54 3a 3d   ┆ 0040 WHILE M>0 DO   0050 REST:=┆
0x380…3a0 4e 20 4d 4f 44 20 4d 12 11 30 30 36 30 20 4e 3a 3d 4d 3b 4d 3a 3d 52 45 53 54 11 0e 30 30 37 30   ┆N MOD M  0060 N:=M;M:=REST  0070┆
0x3a0…3c0 20 45 4e 44 57 48 49 4c 45 20 0e 0d 30 30 38 30 20 46 4e 53 46 44 3a 3d 4e 0d 12 30 30 39 30 20   ┆ ENDWHILE   0080 FNSFD:=N  0090 ┆
0x3c0…3e0 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63   ┆cccccccccccccccccccccccccccccccc┆
          […0x30…]

TextFile

?0010 // --------------------- Forkort -------------------------?▶1d◀0015 INTEGER DIVIDEND,DIVISOR▶1d◀▶08◀0020 // ▶08◀▶14◀0030 PROC FNSFD(N,M)▶14◀▶12◀0040 WHILE M>0 DO ▶12◀▶12◀0050 REST:=N MOD M▶12◀▶11◀0060 N:=M;M:=REST▶11◀▶0e◀0070 ENDWHILE ▶0e◀\r0080 FNSFD:=N\r▶12◀0090 ENDPROC FNSFD▶12◀▶08◀0100 // ▶08◀(0110 PROC FORKORT(REF TÆLLER,REF NÆVNER)(!0120 FAKTOR:=FNSFD(TÆLLER,NÆVNER)!▶1a◀0130 TÆLLER:=TÆLLER/FAKTOR▶1a◀▶1a◀0140 NÆVNER:=NÆVNER/FAKTOR▶1a◀▶14◀0150 ENDPROC FORKORT▶14◀▶08◀0160 // ▶08◀▶0b◀0170 CLEAR ▶0b◀▶0b◀0175 PRINT ▶0b◀90180 INPUT "Indtast tæller og nævner:  ":DIVIDEND,DIVISOR9▶0b◀0190 PRINT ▶0b◀ 0200 PRINT DIVIDEND;"/";DIVISOR; #0210 EXEC FORKORT(DIVIDEND,DIVISOR)#▶16◀0220 IF FAKTOR=1 THEN ▶16◀▶1e◀0230 PRINT " er uforkortelig."▶1e◀
0240 ELSE 
!0250 PRINT " kan forkortes til ";!▶17◀0260 IF DIVISOR=1 THEN ▶17◀▶13◀0270 PRINT DIVIDEND▶13◀
0280 ELSE 
▶1f◀0290 PRINT DIVIDEND;"/";DIVISOR▶1f◀▶0b◀0300 ENDIF ▶0b◀▶0b◀0310 ENDIF ▶0b◀▶00◀▶00◀15 INTEGER DIVIDEND,DIVISOR▶1d◀▶08◀0020 // ▶08◀▶14◀0030 PROC FNSFD(N,M)▶14◀▶12◀0040 WHILE M>0 DO ▶12◀▶12◀0050 REST:=N MOD M▶12◀▶11◀0060 N:=M;M:=REST▶11◀▶0e◀0070 ENDWHILE ▶0e◀\r0080 FNSFD:=N\r▶12◀0090 cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc

Reduced view