|
|
DataMuseum.dkPresents historical artifacts from the history of: MIKADOS |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about MIKADOS Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 2528 (0x9e0)
Types: TextFile
Notes: Mikados_K
Names: »BINOMIAL.K«
└─⟦92e6f589c⟧ Bits:30003895/4xCOMAL3b.imd 4 * COMAL - SPC/1 - Disketter til bogen
└─⟦this⟧ »BINOMIAL.K«
└─⟦faca42ef2⟧ Bits:30003895/4xCOMAL1.imd 4 * COMAL - SPC/1 - Disketter til bogen
└─⟦this⟧ »BINOMIAL.K«
0010 // ------------------ bino -------------------- 0020 // Programmet finder binomialkoefficienten K(n,r) 0030 // 0034 INTEGER N,R 0035 DIM S$ OF 1 0040 REPEAT 0050 CLEAR 0055 CURSOR 1,10 0060 INPUT "Indtast n og r i K(n,r): ":N,R 0070 PRINT "K( ";N;",";R;") = ";CHR$(FNK(N,R),4) 0080 // 0100 CURSOR 10,20 0110 INPUT "Ønsker du at fortsætte? (j/n) ":S$ 0140 UNTIL S$="N" OR S$="n" 0150 // 0160 PROC FNK(PRN,PRR) 0170 IF INT(PRN)<>ABS(PRN) OR INT(PRR)<>ABS(PRR) OR PRN<PRR THEN 0180 PRINT "*** Fejl i inddata ***" 0190 STOP 0200 ENDIF 0210 IF PRR=0 THEN 0220 FNK:=1 0230 ELSE 0240 IF PRR>PRN/2 THEN PRR:=PRN-PRR // K(n,r)=K(n,n-r) 0250 FAK:=1 0260 FOR I:=0 TO PRR-1 DO 0270 FAK:=FAK*(PRN-I)/(PRR-I) // Ex: K(10,4)=10/4*9/3*8/2*7/1 0280 NEXT I 0290 FNK:=INT(FAK+0.5) // Afrund for en sikkerheds skyld 0300 ENDIF 0310 ENDPROC FNK
0x000…036 Line {l1=0x34, l2=»0010 // ------------------ bino --------------------«, l3=0x34}
0x036…06e Line {l1=0x36, l2=»0020 // Programmet finder binomialkoefficienten K(n,r)«, l3=0x36}
0x06e…078 Line {l1=0x08, l2=»0030 // «, l3=0x08}
0x078…08a Line {l1=0x10, l2=»0034 INTEGER N,R«, l3=0x10}
0x08a…09c Line {l1=0x10, l2=»0035 DIM S$ OF 1«, l3=0x10}
0x09c…0aa Line {l1=0x0c, l2=»0040 REPEAT «, l3=0x0c}
0x0aa…0b7 Line {l1=0x0b, l2=»0050 CLEAR «, l3=0x0b}
0x0b7…0c9 Line {l1=0x10, l2=»0055 CURSOR 1,10«, l3=0x10}
0x0c9…0f5 Line {l1=0x2a, l2=»0060 INPUT "Indtast n og r i K(n,r): ":N,R«, l3=0x2a}
0x0f5…127 Line {l1=0x30, l2=»0070 PRINT "K( ";N;",";R;") = ";CHR$(FNK(N,R),4)«, l3=0x30}
0x127…131 Line {l1=0x08, l2=»0080 // «, l3=0x08}
0x131…144 Line {l1=0x11, l2=»0100 CURSOR 10,20«, l3=0x11}
0x144…175 Line {l1=0x2f, l2=»0110 INPUT "Ønsker du at fortsætte? (j/n) ":S$«, l3=0x2f}
0x175…192 Line {l1=0x1b, l2=»0140 UNTIL S$="N" OR S$="n"«, l3=0x1b}
0x192…19c Line {l1=0x08, l2=»0150 // «, l3=0x08}
0x19c…1b4 Line {l1=0x16, l2=»0160 PROC FNK(PRN,PRR)«, l3=0x16}
0x1b4…1f7 Line {l1=0x41, l2=»0170 IF INT(PRN)<>ABS(PRN) OR INT(PRR)<>ABS(PRR) OR PRN<PRR THEN «, l3=0x41}
0x1f7…21c Line {l1=0x23, l2=»0180 PRINT "*** Fejl i inddata ***"«, l3=0x23}
0x21c…228 Line {l1=0x0a, l2=»0190 STOP «, l3=0x0a}
0x228…235 Line {l1=0x0b, l2=»0200 ENDIF «, l3=0x0b}
0x235…24a Line {l1=0x13, l2=»0210 IF PRR=0 THEN «, l3=0x13}
0x24a…257 Line {l1=0x0b, l2=»0220 FNK:=1«, l3=0x0b}
0x257…263 Line {l1=0x0a, l2=»0230 ELSE «, l3=0x0a}
0x263…29b Line {l1=0x36, l2=»0240 IF PRR>PRN/2 THEN PRR:=PRN-PRR // K(n,r)=K(n,n-r)«, l3=0x36}
0x29b…2a8 Line {l1=0x0b, l2=»0250 FAK:=1«, l3=0x0b}
0x2a8…2c4 Line {l1=0x1a, l2=»0260 FOR I:=0 TO PRR-1 DO «, l3=0x1a}
0x2c4…303 Line {l1=0x3d, l2=»0270 FAK:=FAK*(PRN-I)/(PRR-I) // Ex: K(10,4)=10/4*9/3*8/2*7/1«, l3=0x3d}
0x303…310 Line {l1=0x0b, l2=»0280 NEXT I«, l3=0x0b}
0x310…34a Line {l1=0x38, l2=»0290 FNK:=INT(FAK+0.5) // Afrund for en sikkerheds skyld«, l3=0x38}
0x34a…357 Line {l1=0x0b, l2=»0300 ENDIF «, l3=0x0b}
0x357…369 Line {l1=0x10, l2=»0310 ENDPROC FNK«, l3=0x10}
0x369…380 00 00 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 ┆ ccccccccccccccccccccc┆
0x380…3a0 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┆
[…0x32…]
40010 // ------------------ bino --------------------460020 // Programmet finder binomialkoefficienten K(n,r)6▶08◀0030 // ▶08◀▶10◀0034 INTEGER N,R▶10◀▶10◀0035 DIM S$ OF 1▶10◀\f 0040 REPEAT \f ▶0b◀0050 CLEAR ▶0b◀▶10◀0055 CURSOR 1,10▶10◀*0060 INPUT "Indtast n og r i K(n,r): ":N,R*00070 PRINT "K( ";N;",";R;") = ";CHR$(FNK(N,R),4)0▶08◀0080 // ▶08◀▶11◀0100 CURSOR 10,20▶11◀/0110 INPUT "Ønsker du at fortsætte? (j/n) ":S$/▶1b◀0140 UNTIL S$="N" OR S$="n"▶1b◀▶08◀0150 // ▶08◀▶16◀0160 PROC FNK(PRN,PRR)▶16◀A0170 IF INT(PRN)<>ABS(PRN) OR INT(PRR)<>ABS(PRR) OR PRN<PRR THEN A#0180 PRINT "*** Fejl i inddata ***"# 0190 STOP ▶0b◀0200 ENDIF ▶0b◀▶13◀0210 IF PRR=0 THEN ▶13◀▶0b◀0220 FNK:=1▶0b◀ 0230 ELSE 60240 IF PRR>PRN/2 THEN PRR:=PRN-PRR // K(n,r)=K(n,n-r)6▶0b◀0250 FAK:=1▶0b◀▶1a◀0260 FOR I:=0 TO PRR-1 DO ▶1a◀=0270 FAK:=FAK*(PRN-I)/(PRR-I) // Ex: K(10,4)=10/4*9/3*8/2*7/1=▶0b◀0280 NEXT I▶0b◀80290 FNK:=INT(FAK+0.5) // Afrund for en sikkerheds skyld8▶0b◀0300 ENDIF ▶0b◀▶10◀0310 ENDPROC FNK▶10◀▶00◀▶00◀ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc