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 - metrics - download

⟦2f4e0fe0e⟧

    Length: 10112 (0x2780)
    Notes: Mikados TextFile, Mikados_K
    Names: »HJERTER_«

Derivation

└─⟦92e6f589c⟧ Bits:30003895/4xCOMAL3b.imd 4 * COMAL - SPC/1 - Disketter til bogen
    └─⟦this⟧ »HJERTER_« 
└─⟦faca42ef2⟧ Bits:30003895/4xCOMAL1.imd 4 * COMAL - SPC/1 - Disketter til bogen
    └─⟦this⟧ »HJERTER_« 

Text

0100 // ----------------------- hjerter-test -------------------------
0110 // 
0120 DIM TAL$ OF 3,SV$ OF 2,NAVN$ OF 20,TRU$(10) OF 1,SPØR$(40) OF 80
0130 DIM RETUR$ OF 2,FA$ OF 1,F$(10) OF 1
0140 DIM TESTNAVN1$ OF 40,TESTNAVN2$ OF 40,QUESTFIL$ OF 17,TXTFIL$ OF 17
0150 INTEGER SUM,TALNR,M,NUMMER,A,J,I,SPRING
0160 TESTNAVN1$:="H J E R T E R - T E S T . "
0170 TESTNAVN2$:="H j e r t e r - t e s t"
0180 TXTFIL$:="SYSTIME:HJERTTXT"
0190 // ------------------------------------------------------------------
0200 EXEC HOVED
0210 EXEC FORSIDEN
0220 EXEC VALG
0230 // ------------------------------------------------------------------
0240 PROC HOVED
0250 CLEAR 
0260 CURSOR 13,4
0270 PRINT " V E L K O M M E N   T I L   ";TESTNAVN1$
0280 CURSOR 13,5
0290 PRINT "------------------------------------------------------"
0300 CURSOR 15,8
0310 INPUT "Skriv dit navn her:    ":NAVN$
0320 CURSOR 20,12
0330 ENDPROC HOVED
0340 // ------------------------------------------------------------------
0350 PROC VALG
0360 SUM:=0;M:=1;A:=0;NUMMER:=0
0370 CLEAR 
0380 CURSOR 30,12
0390 PRINT " Lige et øjeblik!"
0400 EXEC FILLÆS
0410 EXEC FRÅGAN
0420 CLEAR 
0430 CURSOR 10,3
0440 PRINT "Du har fået ";SUM;" rigtige svar af 10 mulige."
0450 CURSOR 10,8
0460 PRINT "Du kan vælge mellem tre muligheder:"
0470 CURSOR 10,12
0480 PRINT "1.   Ønsker du at forbedre dit resultat ved at begynde forfra?"
0490 CURSOR 10,14
0500 PRINT "2.   Ønsker du dit resultat sammenlignet med det rigtige "
0510 CURSOR 10,15
0520 PRINT "     Skrevet ud på printer?"
0530 CURSOR 10,17
0540 PRINT "3.   Ønsker du dit resultat sammenlignet med det rigtige"
0550 CURSOR 10,18
0560 PRINT "     Skrevet ud på skærmen?"
0570 PRINT 
0580 PRINT 
0590 CURSOR 10,21
0600 INPUT "Skriv det ønskede tal:  ":TALNR
0610 REPEAT 
0620 CURSOR 33,21
0630 IF TALNR=1 THEN 
0640 EXEC VALG
0650 CLEAR 
0660 PRINT 
0670 ELSE 
0680 IF TALNR=2 THEN 
0690 SPRING:=0
0700 EXEC PRINTERRES
0710 EXEC SKRIV
0720 SELECT OUTPUT "T"
0730 EXEC ELECTION
0740 ELSE 
0750 IF TALNR=3 THEN 
0760 SPRING:=1
0770 EXEC SKRIV
0780 EXEC ELECTION
0790 ENDIF 
0800 ENDIF 
0810 ENDIF 
0820 UNTIL TALNR=0 OR TALNR=1 OR TALNR=2
0830 ENDPROC VALG
0840 // ----------------------------------------------------------------
0850 PROC SKRIV
0860 IF SPRING=1 THEN CLEAR 
0868 PRINT 
0869 IF SPRING=1 THEN CURSOR 1,1
0870 PRINT "                *****************************************"
0880 PRINT "                *         ";TESTNAVN2$;"       *"
0890 PRINT "                *****************************************"
0900 PRINT "                *            ";NAVN$;TAB(57);"*"
0910 PRINT "                *****************************************"
0920 IF SPRING=1 THEN CURSOR 1,7
0930 PRINT 
0940 PRINT "Spørgsmål nr.";TAB(35);"Dit bud:";TAB(50);"Rigtige facit:"
0950 PRINT "----------------------------------------------------------------"
0960 PRINT 
0970 FOR A:=1 TO 10 DO 
0980 IF TRU$(A)<>F$(A) THEN 
0990 PRINT "Spørgsmål nr. ";A;TAB(38);TRU$(A);TAB(57);F$(A),"        ***"
1000 ELSE 
1010 PRINT "Spørgsmål nr. ";A;TAB(38);TRU$(A);TAB(57);F$(A)
1020 ENDIF 
1030 NEXT A
1040 PRINT 
1050 PRINT "----------------------------------------------------------------"
1060 PRINT 
1070 IF SPRING=1 THEN 
1080 CURSOR 67,24
1090 INPUT "Return! ":RETUR$
1100 ENDIF 
1110 ENDPROC SKRIV
1120 // --------------------------------------------------------------
1130 PROC FILLÆS
1140 OPEN TXTFIL$,R
1150 FOR I:=1 TO 10 DO 
1160 FOR J:=1 TO 4 DO 
1170 GET TXTFIL$:SPØR$((I-1)*4+J)
1180 NEXT J
1190 GET TXTFIL$:F$(I)
1200 NEXT I
1210 CLOSE TXTFIL$
1220 ENDPROC FILLÆS
1230 // ------------------------------------------------------------------
1240 PROC ELECTION
1250 REPEAT 
1260 CURSOR 1,22
1270 CLEAR 
1280 CURSOR 10,7
1290 PRINT "Du får nu mulighed for at vælge mellem følgende ting."
1300 PRINT 
1310 CURSOR 10,12
1320 PRINT "1.   Ønsker du at begynde forfra?"
1330 CURSOR 10,14
1340 PRINT "2.   Ønsker du at se alle spørgsmålene på printeren?"
1350 CURSOR 10,16
1360 PRINT "3.   Ønsker du at se alle spørgsmålene på skærmen?"
1370 CURSOR 10,18
1380 PRINT "4.   Ønsker du at slutte nu?"
1390 CURSOR 10,22
1400 INPUT "Skriv det ønskede nummer:   ":SV$
1410 CASE ORD(SV$(1)) OF 
1420 WHEN 49
1430 EXEC VALG
1440 WHEN 50
1450 EXEC PRINTER
1460 WHEN 51
1470 EXEC SKÆRM
1480 WHEN 52
1490 EXEC SLUT
1500 ENDCASE 
1510 UNTIL 0
1520 ENDPROC ELECTION
1530 // -----------------------------------------------------------
1540 PROC SLUT
1550 CURSOR 1,24
1560 PRINT "        Så går vi videre til næste afsnit."
1570 END 
1580 ENDPROC SLUT
1590 // ----------------------------------------------------------
1600 PROC SKÆRM
1610 SPRING:=1
1620 EXEC LÆS
1630 ENDPROC SKÆRM
1640 // -----------------------------------------------------------
1650 PROC LÆS
1660 FOR A:=1 TO 10 DO 
1670 IF SPRING=1 THEN CLEAR 
1680 K:=8
1690 FOR J:=1 TO 4 DO 
1700 IF SPRING=1 THEN CURSOR 12,K+J
1710 PRINT TAB(12);SPØR$((A-1)*4+J)
1720 IF J=1 THEN 
1730 K:=K+4
1740 ENDIF 
1750 NEXT J
1760 PRINT 
1770 IF SPRING=1 THEN 
1780 CURSOR 70,20
1790 INPUT "Return!":RETUR$
1800 ENDIF 
1810 NEXT A
1820 ENDPROC LÆS
1830 // --------------------------------------------------------------
1840 PROC PRINTERRES
1850 SELECT OUTPUT "P"
1860 IF STATUS("P")=1 THEN 
1870 CURSOR 1,23
1880 PRINT "<Z>Printeren er reserveret af anden bruger,"
1890 INPUT "<S>skal der ventes på at den bliver ledig?  (j/n) ":SV$
1900 IF SV$="J" OR SV$="j" THEN 
1910 CURSOR 1,23
1920 PRINT "<Z>"
1930 PRINT "<S>Der ventes på at printeren bliver ledig......."
1940 WHILE STATUS("P")=1 DO SELECT OUTPUT "P"
1950 ENDIF 
1960 ENDIF 
1970 ENDPROC PRINTERRES
1980 PROC PRINTER
1990 EXEC PRINTERRES
2000 SPRING:=0
2010 EXEC LÆS
2020 SELECT OUTPUT "T"
2030 ENDPROC PRINTER
2040 // -----------------------------------------------------------
2050 PROC FRÅGAN
2060 FOR A:=1 TO 10 DO 
2070 CLEAR 
2080 FOR J:=1 TO 4 DO 
2090 PRINT TAB(12);SPØR$((A-1)*4+J)
2100 CURSOR 12,J+4
2110 NEXT J
2120 EXEC RESTEN
2130 NEXT A
2140 ENDPROC FRÅGAN
2150 // -------------------------------------------------------------------
2160 PROC RESTEN
2170 CURSOR 12,16
2180 PRINT "Er det spørgsmål A,B eller C, der er rigtigt?"
2190 CURSOR 12,18
2200 INPUT "Tast A, B eller C:         ":TRU$(A)
2210 IF "a"<=TRU$(A) AND "å"=>TRU$(A) THEN 
2220 TRU$(A):=CHR$(ORD(TRU$(A))-32)
2230 ENDIF 
2240 IF TRU$(A)=F$(A) THEN PRINT CHR$(42)
2250 IF TRU$(A)=F$(A) THEN SUM:=SUM+1
2260 ENDPROC RESTEN
2270 // ---------------------------------------------------------------------
2280 // 
2290 // 
2300 // 
2310 PROC FORSIDEN
2320 CLEAR 
2330 CURSOR 5,2
2340 PRINT "<S>*"
2350 FOR X:=6 TO 74 DO 
2360 PRINT "<S>-"
2370 NEXT X
2380 PRINT "<S>*"
2390 CURSOR 10,5
2400 PRINT "<S>*"
2410 FOR X:=11 TO 69 DO 
2420 PRINT "<S>-"
2430 NEXT X
2440 PRINT "<S>*"
2450 CURSOR 5,15
2460 PRINT "<S>*"
2470 FOR X:=6 TO 74 DO 
2480 PRINT "<S>-"
2490 NEXT X
2500 PRINT "<S>*"
2510 CURSOR 10,12
2520 PRINT "<S>*"
2530 FOR X:=11 TO 69 DO 
2540 PRINT "<S>-"
2550 NEXT X
2560 PRINT "<S>*"
2570 FOR Y:=6 TO 11 DO 
2580 CURSOR 10,Y
2590 PRINT "!"
2600 NEXT Y
2610 FOR Y:=14 TO 3 STEP -1 DO 
2620 CURSOR 5,Y
2630 PRINT "!"
2640 NEXT Y
2650 FOR Y:=6 TO 11 DO 
2660 CURSOR 70,Y
2670 PRINT "!"
2680 NEXT Y
2690 FOR Y:=14 TO 3 STEP -1 DO 
2700 CURSOR 75,Y
2710 PRINT "!"
2720 NEXT Y
2730 CURSOR 25,9
2740 PRINT TESTNAVN1$
2750 CURSOR 5,20
2760 PRINT "På de næste sider vil du få 10 spørgsmål med tre svar."
2770 CURSOR 5,21
2780 PRINT "Kun et af svarene er rigtigt,så du skal enten indtaste A, B ";
2790 PRINT "eller C."
2800 CURSOR 70,23
2810 INPUT "Return!":SV$
2820 ENDPROC FORSIDEN