diff --git a/Best_of_Basicode_4/01_Inleiding.bc2 b/Best_of_Basicode_4/01_Inleiding.bc2 index db564b3..f6dc7c9 100644 --- a/Best_of_Basicode_4/01_Inleiding.bc2 +++ b/Best_of_Basicode_4/01_Inleiding.bc2 @@ -1,74 +1,75 @@ -1000 A=200:GOTO 20:REM INLEIDING B.o.B #4 -1010 GOSUB 100 -1020 PRINT "INLEIDING BEST OF BASICODE #4" -1030 PRINT "-----------------------------" -1040 PRINT :PRINT "Dit bandje bevat weer een verzameling" -1050 PRINT :PRINT "van voornamelijk edukatieve programma's" -1060 PRINT :PRINT "samengesteld uit ingezonden werkstukken" -1070 PRINT :PRINT "van Hobbyscoop luisteraars." -1080 PRINT :PRINT :PRINT "Deze programma's lopen op de meeste" -1090 PRINT :PRINT "computers, als ze met een Basicode-2" -1100 PRINT :PRINT "vertaalprogramma zijn ingelezen." -1110 PRINT :PRINT "Soms is echter een kleine aanpassing" -1120 PRINT :PRINT "nodig. Dit dient U zelf uit te voeren." -1130 GOSUB 20000 -1140 PRINT "Het kan zijn, dat uw computer een klei-" -1150 PRINT :PRINT "ner scherm heeft dan het standaard" -1160 PRINT :PRINT "Basicode scherm, dat 24 regels kent met" -1170 PRINT :PRINT "elk 40 tekens." -1180 PRINT :PRINT "Ook kan het zijn, dat de input wordt" -1190 PRINT :PRINT "gevraagd in kleine letters, terwijl u" -1200 PRINT :PRINT "liever hoofdletters zoudt gebruiken." -1210 PRINT :PRINT "Welnu: verander dat dan zelf in het" -1220 PRINT :PRINT "programma." -1230 GOSUB 20000 -1240 PRINT "Door veel in andermans programma's te" -1250 PRINT :PRINT "snuffelen vergaart men een hoop kennis," -1260 PRINT :PRINT "waarvan men gebruik kan maken bij het" -1270 PRINT :PRINT "zelf programmeren." -1280 GOSUB 20000 -1290 PRINT "Soms komt het voor, dat uw computer wel" -1300 PRINT :PRINT "heel anders reageert op een programma" -1310 PRINT :PRINT "dan de bedoeling is. Probeer dan zelf" -1320 PRINT :PRINT "de oorzaak daarvan op te sporen." -1330 PRINT :PRINT "Sommige computers stellen het op prijs," -1340 PRINT :PRINT "dat elke variabele voor het gebruik een" -1350 PRINT :PRINT "waarde wordt toegekend, eventueel '0'." -1360 PRINT :PRINT "Dat is trouwens een Basicode eis!" -1370 GOSUB 20000 -1380 PRINT "Wij controleren het programma ook wel" -1390 PRINT :PRINT "daarop, maar soms slipt er toch nog een" -1400 PRINT :PRINT "keertje zo'n ongedefinieerde variabele" -1410 PRINT :PRINT "door het vangnet. Dan zult u dat zelf" -1420 PRINT :PRINT "moeten ondervangen door aan het begin" -1430 PRINT :PRINT "van het programma de 'schuldige' de" -1440 PRINT :PRINT "waarde '0' toe te kennen." -1450 GOSUB 20000 -1460 PRINT "Bedenk wel: als alle programma's op dit" -1470 PRINT :PRINT "bandje 'ideaal' zouden moeten zijn, dan" -1480 PRINT :PRINT "zou het niet mogelijk zijn elk jaar en" -1490 PRINT :PRINT "voor zo'n lage prijs een bandje vol met" -1500 PRINT :PRINT "waardevolle programma's te leveren!" -1510 GOSUB 20000 -1520 PRINT "Tenslotte:" -1530 PRINT :PRINT "Als u zelf eens een aardig Basicode-2" -1540 PRINT :PRINT "programma heeft gemaakt en dat graag" -1550 PRINT :PRINT "aan anderen zoudt willen laten zien," -1560 PRINT :PRINT "zend het dan in aan:" -1570 PRINT :PRINT :PRINT "NOS - HOBBYSCOOP," -1580 PRINT "Postbus 1200" -1590 PRINT "1200 BE Hilversum." -1600 GOSUB 20000 -1610 PRINT "U behoudt altijd het recht met het pro-" -1620 PRINT :PRINT "gramma te doen, wat u zelf wilt." -1630 PRINT :PRINT "De mededeling 'COPYRIGHT NOS HILVERSUM'" -1640 PRINT :PRINT "dient alleen om misbruik door derden te" -1650 PRINT :PRINT "voorkomen!" -1660 PRINT :PRINT "Het tast op geen enkele wijze de rech-" -1670 PRINT :PRINT "ten van de auteur op zijn programma" -1680 PRINT :PRINT "aan!" + +1000 A=200:GOTO20:REM INLEIDING B.o.B #4 +1010 GOSUB100 +1020 PRINT"INLEIDING BEST OF BASICODE #4" +1030 PRINT"-----------------------------" +1040 PRINT:PRINT"Dit bandje bevat weer een verzameling" +1050 PRINT:PRINT"van voornamelijk edukatieve programma's" +1060 PRINT:PRINT"samengesteld uit ingezonden werkstukken" +1070 PRINT:PRINT"van Hobbyscoop luisteraars." +1080 PRINT:PRINT:PRINT"Deze programma's lopen op de meeste" +1090 PRINT:PRINT"computers, als ze met een Basicode-2" +1100 PRINT:PRINT"vertaalprogramma zijn ingelezen." +1110 PRINT:PRINT"Soms is echter een kleine aanpassing" +1120 PRINT:PRINT"nodig. Dit dient U zelf uit te voeren." +1130 GOSUB20000 +1140 PRINT"Het kan zijn, dat uw computer een klei-" +1150 PRINT:PRINT"ner scherm heeft dan het standaard" +1160 PRINT:PRINT"Basicode scherm, dat 24 regels kent met" +1170 PRINT:PRINT"elk 40 tekens." +1180 PRINT:PRINT"Ook kan het zijn, dat de input wordt" +1190 PRINT:PRINT"gevraagd in kleine letters, terwijl u" +1200 PRINT:PRINT"liever hoofdletters zoudt gebruiken." +1210 PRINT:PRINT"Welnu: verander dat dan zelf in het" +1220 PRINT:PRINT"programma." +1230 GOSUB20000 +1240 PRINT"Door veel in andermans programma's te" +1250 PRINT:PRINT"snuffelen vergaart men een hoop kennis," +1260 PRINT:PRINT"waarvan men gebruik kan maken bij het" +1270 PRINT:PRINT"zelf programmeren." +1280 GOSUB20000 +1290 PRINT"Soms komt het voor, dat uw computer wel" +1300 PRINT:PRINT"heel anders reageert op een programma" +1310 PRINT:PRINT"dan de bedoeling is. Probeer dan zelf" +1320 PRINT:PRINT"de oorzaak daarvan op te sporen." +1330 PRINT:PRINT"Sommige computers stellen het op prijs," +1340 PRINT:PRINT"dat elke variabele voor het gebruik een" +1350 PRINT:PRINT"waarde wordt toegekend, eventueel '0'." +1360 PRINT:PRINT"Dat is trouwens een Basicode eis!" +1370 GOSUB20000 +1380 PRINT"Wij controleren het programma ook wel" +1390 PRINT:PRINT"daarop, maar soms slipt er toch nog een" +1400 PRINT:PRINT"keertje zo'n ongedefinieerde variabele" +1410 PRINT:PRINT"door het vangnet. Dan zult u dat zelf" +1420 PRINT:PRINT"moeten ondervangen door aan het begin" +1430 PRINT:PRINT"van het programma de 'schuldige' de" +1440 PRINT:PRINT"waarde '0' toe te kennen." +1450 GOSUB20000 +1460 PRINT"Bedenk wel: als alle programma's op dit" +1470 PRINT:PRINT"bandje 'ideaal' zouden moeten zijn, dan" +1480 PRINT:PRINT"zou het niet mogelijk zijn elk jaar en" +1490 PRINT:PRINT"voor zo'n lage prijs een bandje vol met" +1500 PRINT:PRINT"waardevolle programma's te leveren!" +1510 GOSUB20000 +1520 PRINT"Tenslotte:" +1530 PRINT:PRINT"Als u zelf eens een aardig Basicode-2" +1540 PRINT:PRINT"programma heeft gemaakt en dat graag" +1550 PRINT:PRINT"aan anderen zoudt willen laten zien," +1560 PRINT:PRINT"zend het dan in aan:" +1570 PRINT:PRINT:PRINT"NOS - HOBBYSCOOP," +1580 PRINT"Postbus 1200" +1590 PRINT"1200 BE Hilversum." +1600 GOSUB20000 +1610 PRINT"U behoudt altijd het recht met het pro-" +1620 PRINT:PRINT"gramma te doen, wat u zelf wilt." +1630 PRINT:PRINT"De mededeling 'COPYRIGHT NOS HILVERSUM'" +1640 PRINT:PRINT"dient alleen om misbruik door derden te" +1650 PRINT:PRINT"voorkomen!" +1660 PRINT:PRINT"Het tast op geen enkele wijze de rech-" +1670 PRINT:PRINT"ten van de auteur op zijn programma" +1680 PRINT:PRINT"aan!" 10000 END -20000 VE=22:HO=0:GOSUB 110 -20010 PRINT "Druk op een toets..."; -20020 GOSUB 210:GOSUB 100:RETURN - \ No newline at end of file +20000 VE=22:HO=0:GOSUB110 +20010 PRINT"Druk op een toets..."; +20020 GOSUB210:GOSUB100:RETURN + diff --git a/Best_of_Basicode_4/02_Spreekwoorden.bc2 b/Best_of_Basicode_4/02_Spreekwoorden.bc2 index 61d4420..c285e8a 100644 --- a/Best_of_Basicode_4/02_Spreekwoorden.bc2 +++ b/Best_of_Basicode_4/02_Spreekwoorden.bc2 @@ -1,28 +1,29 @@ -1000 A=500:GOTO 20 + +1000 A=500:GOTO20 1010 REM SPREEKWOORDEN -1020 REM +1020 REM 1030 REM ****************** 1040 REM * HOOFDPROGRAMMA * 1050 REM ****************** -1060 REM -1070 GOSUB 4680:REM DIMENSIONEREN -1080 GOSUB 4610:REM INITIALISEREN -1090 GOSUB 4410:REM TITELBEELD -1100 GOSUB 3990:REM UITLEG -1110 GOSUB 3410:REM INTRO1 -1120 GOSUB 3740:REM INTRO2 -1130 GOSUB 3080:REM KADER TEKENEN -1140 GOSUB 3030:REM WILLEKEURIG BEGIN -1150 FOR N=1 TO AB -1160 FOR SP=1 TO 2 -1170 GOSUB 1600:REM ZIN PRINTEN -1180 GOSUB 1830:REM INVULLEN -1190 IF A$<>Z$ THEN GOSUB 2280:REM FOUT -1200 IF A$=Z$ THEN GOSUB 2540:REM GOED -1210 NEXT SP:NEXT N -1220 GOSUB 2660:REM EINDSTAND -1230 ON IN GOTO 1120,1080,1240 -1240 GOSUB 2940:REM EINDE +1060 REM +1070 GOSUB4680:REM DIMENSIONEREN +1080 GOSUB4610:REM INITIALISEREN +1090 GOSUB4410:REM TITELBEELD +1100 GOSUB3990:REM UITLEG +1110 GOSUB3410:REM INTRO1 +1120 GOSUB3740:REM INTRO2 +1130 GOSUB3080:REM KADER TEKENEN +1140 GOSUB3030:REM WILLEKEURIG BEGIN +1150 FORN=1 TOAB +1160 FORSP=1 TO2 +1170 GOSUB1600:REM ZIN PRINTEN +1180 GOSUB1830:REM INVULLEN +1190 IFA$<>Z$ THENGOSUB2280:REM FOUT +1200 IFA$=Z$ THENGOSUB2540:REM GOED +1210 NEXTSP:NEXTN +1220 GOSUB2660:REM EINDSTAND +1230 ONIN GOTO1120,1080,1240 +1240 GOSUB2940:REM EINDE 1250 END 1260 REM 1270 REM *************** @@ -30,334 +31,334 @@ 1290 REM *************** 1300 REM 1310 REM WIS1 -1320 HO=2:FOR VE=7 TO 14 -1330 IF (VE=9) OR(VE=11) THEN 1350 -1340 GOSUB 110:PRINT SP$ -1350 NEXT VE:RETURN +1320 HO=2:FORVE=7 TO14 +1330 IF(VE=9) OR(VE=11) THEN1350 +1340 GOSUB110:PRINTSP$ +1350 NEXTVE:RETURN 1360 REM WIS2 -1370 HO=2:FOR VE=16 TO 22 -1380 GOSUB 110:PRINT SP$ -1390 NEXT VE:RETURN +1370 HO=2:FORVE=16 TO22 +1380 GOSUB110:PRINTSP$ +1390 NEXTVE:RETURN 1400 REM INLEZEN 1410 Z$="" -1420 READ W$:Z$=Z$+W$ -1430 IF W$="*" THEN RESTORE :GOTO 1410 -1440 IF RIGHT$(W$,1)<>"." THEN 1420 +1420 READW$:Z$=Z$+W$ +1430 IFW$="*" THENRESTORE:GOTO1410 +1440 IFRIGHT$(W$,1)<>"." THEN1420 1450 RETURN 1460 REM SPATIEBALK -1470 HO=2:VE=22:GOSUB 110 -1480 PRINT "Druk op de spatiebalk..."; -1490 GOSUB 210:IF IN$<>" " THEN 1490 +1470 HO=2:VE=22:GOSUB110 +1480 PRINT"Druk op de spatiebalk..."; +1490 GOSUB210:IFIN$<>" " THEN1490 1500 RETURN 1510 REM ROEP SPELER -1520 IF SP=1 THEN N$=N1$:TS=S1 -1530 IF SP=2 THEN N$=N2$:TS=S2 -1540 HO=2:VE=17:GOSUB 110 -1550 PRINT N$;" is nu aan de beurt." -1560 VE=19:GOSUB 110 -1570 PRINT "Klaar voor de start?" +1520 IFSP=1 THENN$=N1$:TS=S1 +1530 IFSP=2 THENN$=N2$:TS=S2 +1540 HO=2:VE=17:GOSUB110 +1550 PRINTN$;" is nu aan de beurt." +1560 VE=19:GOSUB110 +1570 PRINT"Klaar voor de start?" 1580 RETURN 1590 REM ZIN INLEZEN+PRINTEN -1600 GOSUB 1320:GOSUB 1370:GOSUB 1410 +1600 GOSUB1320:GOSUB1370:GOSUB1410 1610 HO=LEN(TH$)+8:VE=11 -1620 GOSUB 110:PRINT N -1630 GOSUB 1520 +1620 GOSUB110:PRINTN +1630 GOSUB1520 1640 Z=LEN(Z$)-1:CD=INT(TS*Z)+30 1650 Z$=LEFT$(Z$,Z):V$="" -1660 FOR I=1 TO Z +1660 FORI=1 TOZ 1670 L$=MID$(Z$,I,2) -1680 IF (L$="IJ") OR(L$="ij") THEN I=I+1:GOTO 1770 +1680 IF(L$="IJ") OR(L$="ij") THENI=I+1:GOTO1770 1690 L$=MID$(Z$,I,1) -1700 IF (L$="A") OR(L$="a") THEN 1770 -1710 IF (L$="E") OR(L$="e") THEN 1770 -1720 IF (L$="I") OR(L$="i") THEN 1770 -1730 IF (L$="O") OR(L$="o") THEN 1770 -1740 IF (L$="U") OR(L$="u") THEN 1770 -1750 IF (L$="Y") OR(L$="y") THEN 1770 +1700 IF(L$="A") OR(L$="a") THEN1770 +1710 IF(L$="E") OR(L$="e") THEN1770 +1720 IF(L$="I") OR(L$="i") THEN1770 +1730 IF(L$="O") OR(L$="o") THEN1770 +1740 IF(L$="U") OR(L$="u") THEN1770 +1750 IF(L$="Y") OR(L$="y") THEN1770 1760 V$=V$+L$ -1770 NEXT I:GOSUB 270 -1780 GOSUB 1470:GOSUB 1370 -1785 HO=2:VE=13:GOSUB 110:PRINT "?"; +1770 NEXTI:GOSUB270 +1780 GOSUB1470:GOSUB1370 +1785 HO=2:VE=13:GOSUB110:PRINT"?"; 1790 HO=INT((39-LEN(V$))/2):VE=7 -1800 GOSUB 110:PRINT V$ +1800 GOSUB110:PRINTV$ 1810 RETURN 1820 REM INVULLEN 1830 A$="":PH=2:PV=13 -1840 FOR I=CD TO 0 STEP -1 -1850 HO=34:VE=3:GOSUB 110:PRINT " " -1860 SR=I:GOSUB 300:GOSUB 110:PRINT SR$ -1870 FOR J=1 TO 10:GOSUB 20100 -1880 HO=PH:VE=PV:GOSUB 110 -1890 GOSUB 200 -1900 IF IN$="" THEN 1990 -1910 IF IN$=BS$ THEN GOSUB 2070:GOTO 1990 -1920 IF IN$=CHR$(13) THEN J=10:GOTO 1990 -1930 PRINT IN$; +1840 FORI=CD TO0 STEP-1 +1850 HO=34:VE=3:GOSUB110:PRINT" " +1860 SR=I:GOSUB300:GOSUB110:PRINTSR$ +1870 FORJ=1 TO10:GOSUB20100 +1880 HO=PH:VE=PV:GOSUB110 +1890 GOSUB200 +1900 IFIN$="" THEN1990 +1910 IFIN$=BS$ THENGOSUB2070:GOTO1990 +1920 IFIN$=CHR$(13) THENJ=10:GOTO1990 +1930 PRINTIN$; 1940 A$=A$+IN$ -1950 GOSUB 20100 -1960 GOSUB 120:PRINT "?";:PH=HO:PV=VE -1970 GOSUB 20000 -1980 IF HO=38 THEN GOSUB 2170:REM WRAPAROUND -1990 NEXT J:GOSUB 20000 +1950 GOSUB20100 +1960 GOSUB120:PRINT"?";:PH=HO:PV=VE +1970 GOSUB20000 +1980 IFHO=38 THENGOSUB2170:REM WRAPAROUND +1990 NEXTJ:GOSUB20000 2000 SC=I -2010 IF IN$=CHR$(13) THEN I=0:GOSUB 110:PRINT " "; -2020 NEXT I:GOSUB 270 +2010 IFIN$=CHR$(13) THENI=0:GOSUB110:PRINT" "; +2020 NEXTI:GOSUB270 2030 HO=34:VE=3 -2040 GOSUB 110:PRINT " " +2040 GOSUB110:PRINT" " 2050 RETURN 2060 REM CORRECTIE 2070 HO=HO-1 -2080 IF (HO<2) AND(VE=13) THEN RETURN -2090 IF (HO<2) AND(VE=14) THEN HO=HE-1:VE=13 -2100 GOSUB 110:PRINT " ";:GOSUB 110:PRINT "?"; +2080 IF(HO<2) AND(VE=13) THENRETURN +2090 IF(HO<2) AND(VE=14) THENHO=HE-1:VE=13 +2100 GOSUB110:PRINT" ";:GOSUB110:PRINT"?"; 2110 PH=HO:PV=VE 2120 A=LEN(A$) -2130 IF A=1 THEN A$="":RETURN +2130 IFA=1 THENA$="":RETURN 2140 A$=LEFT$(A$,A-1) 2150 RETURN 2160 REM WRAPAROUND 2170 A=LEN(A$):B=A -2180 IF MID$(A$,B,1)<>" " THEN B=B-1:GOTO 2180 -2190 HO=HO-(A-B):GOSUB 110:HE=HO -2200 FOR K=1 TO A-B+1:PRINT " ";:NEXT K -2210 HO=2:VE=14:GOSUB 110 -2220 IF (B=A) THEN 2250 -2230 PRINT RIGHT$(A$,A-B); -2240 GOSUB 120 -2250 PH=HO:PV=VE:PRINT "?"; +2180 IFMID$(A$,B,1)<>" " THENB=B-1:GOTO2180 +2190 HO=HO-(A-B):GOSUB110:HE=HO +2200 FORK=1 TOA-B+1:PRINT" ";:NEXTK +2210 HO=2:VE=14:GOSUB110 +2220 IF(B=A) THEN2250 +2230 PRINTRIGHT$(A$,A-B); +2240 GOSUB120 +2250 PH=HO:PV=VE:PRINT"?"; 2260 RETURN 2270 REM FOUT -2280 IF SC<1 THEN 2410 +2280 IFSC<1 THEN2410 2290 V$="":W$="" -2300 FOR I=1 TO Z +2300 FORI=1 TOZ 2310 L$=MID$(Z$,I,1) -2320 IF (L$=" ") OR(L$=",") THEN 2340 +2320 IF(L$=" ") OR(L$=",") THEN2340 2330 V$=V$+L$ -2340 NEXT I -2350 FOR I=1 TO LEN(A$) +2340 NEXTI +2350 FORI=1 TOLEN(A$) 2360 L$=MID$(A$,I,1) -2370 IF (L$=" ") OR(L$=",") THEN 2390 +2370 IF(L$=" ") OR(L$=",") THEN2390 2380 W$=W$+L$ -2390 NEXT I -2400 IF V$=W$ THEN Z$=V$:A$=W$:RETURN -2410 HO=2:VE=17:GOSUB 110 -2420 IF SC<1 THEN PRINT "Je tijd is voorbij. Het was:" -2430 IF SC>0 THEN PRINT "Helaas niet goed. Het was:" -2440 VE=19:GOSUB 110 -2450 IF Z<36 THEN PRINT Z$:GOTO 2510 +2390 NEXTI +2400 IFV$=W$ THENZ$=V$:A$=W$:RETURN +2410 HO=2:VE=17:GOSUB110 +2420 IFSC<1 THENPRINT"Je tijd is voorbij. Het was:" +2430 IFSC>0 THENPRINT"Helaas niet goed. Het was:" +2440 VE=19:GOSUB110 +2450 IFZ<36 THENPRINTZ$:GOTO2510 2460 B=36 -2470 IF MID$(Z$,B,1)<>" " THEN B=B-1:GOTO 2470 -2480 PRINT LEFT$(Z$,B) -2490 VE=20:GOSUB 110 -2500 PRINT RIGHT$(Z$,Z-B) -2510 GOSUB 1470 +2470 IFMID$(Z$,B,1)<>" " THENB=B-1:GOTO2470 +2480 PRINTLEFT$(Z$,B) +2490 VE=20:GOSUB110 +2500 PRINTRIGHT$(Z$,Z-B) +2510 GOSUB1470 2520 RETURN 2530 REM GOED -2540 HO=2:VE=17:GOSUB 110 -2550 GOSUB 260:I=INT(RV*10) -2560 PRINT G$(I) -2570 VE=19:GOSUB 110 -2580 PRINT "Score in deze ronde: ";SC -2590 IF SP=1 THEN SA=SA+SC:VE=1:SC=SA -2600 IF SP=2 THEN SB=SB+SC:VE=3:SC=SB -2610 HO=LI+3:GOSUB 110 -2620 SR=SC:GOSUB 310:PRINT SR$ -2630 GOSUB 1470 +2540 HO=2:VE=17:GOSUB110 +2550 GOSUB260:I=INT(RV*10) +2560 PRINTG$(I) +2570 VE=19:GOSUB110 +2580 PRINT"Score in deze ronde: ";SC +2590 IFSP=1 THENSA=SA+SC:VE=1:SC=SA +2600 IFSP=2 THENSB=SB+SC:VE=3:SC=SB +2610 HO=LI+3:GOSUB110 +2620 SR=SC:GOSUB310:PRINTSR$ +2630 GOSUB1470 2640 RETURN 2650 REM EINDSTAND -2660 GOSUB 1320:GOSUB 1370 -2670 HO=2:VE=11:GOSUB 110 -2680 PRINT SP$ -2690 GOSUB 110:PRINT "EINDE VAN DIT SPEL." -2700 HO=2:VE=17:GOSUB 110 -2710 IF SA>SB THEN PRINT "Proficiat, ";N1$ -2720 IF (SB>SA) THEN PRINT "Proficiat, ";N2$ -2730 IF SA<>SB THEN VE=19:GOSUB 110 -2740 IF SA<>SB THEN PRINT "Je hebt gewonnen!" -2750 IF SA=SB THEN PRINT "Ongelooflijk. Een gelijkspel!" -2760 GOSUB 1470:GOSUB 1370 -2770 HO=0:FOR VE=0 TO 11 -2780 IF (VE>4) AND(VE<10) THEN 2800 -2790 GOSUB 110:PRINT " ";SP$; -2800 NEXT VE -2810 HO=2:VE=17:GOSUB 110 -2820 PRINT "1. Dezelfde spelers nog 'n keer." -2830 VE=19:GOSUB 110 -2840 PRINT "2. Nieuwe spelers in aantocht." -2850 VE=21:GOSUB 110 -2860 PRINT "3. Stoppen." -2870 VE=7:GOSUB 110 -2880 PRINT "WAT KIES JE? "; -2890 GOSUB 210:IN=VAL(IN$) -2900 IF (IN<1) OR(IN>3) THEN 2890 -2910 IF IN=1 THEN GOSUB 4610 +2660 GOSUB1320:GOSUB1370 +2670 HO=2:VE=11:GOSUB110 +2680 PRINTSP$ +2690 GOSUB110:PRINT"EINDE VAN DIT SPEL." +2700 HO=2:VE=17:GOSUB110 +2710 IFSA>SB THENPRINT"Proficiat, ";N1$ +2720 IF(SB>SA) THENPRINT"Proficiat, ";N2$ +2730 IFSA<>SB THENVE=19:GOSUB110 +2740 IFSA<>SB THENPRINT"Je hebt gewonnen!" +2750 IFSA=SB THENPRINT"Ongelooflijk. Een gelijkspel!" +2760 GOSUB1470:GOSUB1370 +2770 HO=0:FORVE=0 TO11 +2780 IF(VE>4) AND(VE<10) THEN2800 +2790 GOSUB110:PRINT" ";SP$; +2800 NEXTVE +2810 HO=2:VE=17:GOSUB110 +2820 PRINT"1. Dezelfde spelers nog 'n keer." +2830 VE=19:GOSUB110 +2840 PRINT"2. Nieuwe spelers in aantocht." +2850 VE=21:GOSUB110 +2860 PRINT"3. Stoppen." +2870 VE=7:GOSUB110 +2880 PRINT"WAT KIES JE? "; +2890 GOSUB210:IN=VAL(IN$) +2900 IF(IN<1) OR(IN>3) THEN2890 +2910 IFIN=1 THENGOSUB4610 2920 RETURN 2930 REM EINDE -2940 GOSUB 1320:HO=0:FOR VE=0 TO 23 -2950 IF (VE>4) AND(VE<10) THEN 2970 -2960 GOSUB 110:PRINT " ";SP$; -2970 NEXT VE:Z$="EIND GOED AL GOED" +2940 GOSUB1320:HO=0:FORVE=0 TO23 +2950 IF(VE>4) AND(VE<10) THEN2970 +2960 GOSUB110:PRINT" ";SP$; +2970 NEXTVE:Z$="EIND GOED AL GOED" 2980 VE=7:HO=INT((39-LEN(Z$))/2) -2990 GOSUB 110:PRINT Z$ -3000 VE=10:GOSUB 110 +2990 GOSUB110:PRINTZ$ +3000 VE=10:GOSUB110 3010 RETURN 3020 REM WILLEKEURIG BEGIN -3030 FOR I=1 TO LEN(N2$) -3040 GOSUB 1410 -3050 NEXT I +3030 FORI=1 TOLEN(N2$) +3040 GOSUB1410 +3050 NEXTI 3060 RETURN 3070 REM KADER TEKENEN -3080 GOSUB 100 -3090 HO=2:VE=1:GOSUB 110 -3100 PRINT N1$; -3110 HO=LI+2:GOSUB 110 -3120 PRINT ": 0 pt" -3130 HO=32:GOSUB 110:PRINT "TIJD:" -3140 HO=2:VE=3:GOSUB 110 -3150 PRINT N2$ -3160 HO=LI+2:GOSUB 110 -3170 PRINT ": 0 pt" -3180 HO=0:VE=5:GOSUB 110 -3190 PRINT "***************************************" -3200 FOR VE=6 TO 8:GOSUB 110 -3210 PRINT "* *" -3220 NEXT VE -3230 VE=9:GOSUB 110 -3240 PRINT "***************************************" -3250 HO=2:VE=11:GOSUB 110 -3260 PRINT TH$;" - NR. " -3270 HO=0:VE=15:GOSUB 110 -3280 PRINT "+-------------------------------------+" -3290 FOR VE=16 TO 22:GOSUB 110 -3300 PRINT "! !" -3310 NEXT VE -3320 VE=23:GOSUB 110 -3330 PRINT "+-------------------------------------+"; +3080 GOSUB100 +3090 HO=2:VE=1:GOSUB110 +3100 PRINTN1$; +3110 HO=LI+2:GOSUB110 +3120 PRINT": 0 pt" +3130 HO=32:GOSUB110:PRINT"TIJD:" +3140 HO=2:VE=3:GOSUB110 +3150 PRINTN2$ +3160 HO=LI+2:GOSUB110 +3170 PRINT": 0 pt" +3180 HO=0:VE=5:GOSUB110 +3190 PRINT"***************************************" +3200 FORVE=6 TO8:GOSUB110 +3210 PRINT"* *" +3220 NEXTVE +3230 VE=9:GOSUB110 +3240 PRINT"***************************************" +3250 HO=2:VE=11:GOSUB110 +3260 PRINTTH$;" - NR. " +3270 HO=0:VE=15:GOSUB110 +3280 PRINT"+-------------------------------------+" +3290 FORVE=16 TO22:GOSUB110 +3300 PRINT"! !" +3310 NEXTVE +3320 VE=23:GOSUB110 +3330 PRINT"+-------------------------------------+"; 3340 RETURN 3350 REM KOP -3360 GOSUB 100:PRINT L1$ -3370 HO=INT((39-LEN(TH$))/2):VE=1:GOSUB 110 -3380 PRINT TH$:PRINT L1$ +3360 GOSUB100:PRINTL1$ +3370 HO=INT((39-LEN(TH$))/2):VE=1:GOSUB110 +3380 PRINTTH$:PRINTL1$ 3390 RETURN 3400 REM INTRO1 -3410 GOSUB 3360 -3420 GOSUB 20100 -3430 PRINT :GOSUB 120:PRINT "Voornaam speler 1"; -3440 INPUT N1$ -3450 IF N1$="" THEN N1$="Speler 1" -3460 GOSUB 110:PRINT SP$;" " -3470 GOSUB 110:PRINT "Hallo ";N1$;"," -3480 GOSUB 3900 -3490 GOSUB 210:S1=VAL(IN$) -3500 IF (S1<1) OR(S1>3) THEN 3490 -3510 IF S1=2 THEN S1=1.5 -3520 IF S1=3 THEN S1=2 -3530 GOSUB 110:PRINT IN$ -3540 GOSUB 3360 -3550 PRINT :GOSUB 120:PRINT "Voornaam speler 2"; -3560 INPUT N2$ -3570 IF N2$="" THEN N2$="Speler 2" -3580 IF N1$=N2$ THEN N1$=N1$+" 1":N2$=N2$+" 2" +3410 GOSUB3360 +3420 GOSUB20100 +3430 PRINT:GOSUB120:PRINT"Voornaam speler 1"; +3440 INPUTN1$ +3450 IFN1$="" THENN1$="Speler 1" +3460 GOSUB110:PRINTSP$;" " +3470 GOSUB110:PRINT"Hallo ";N1$;"," +3480 GOSUB3900 +3490 GOSUB210:S1=VAL(IN$) +3500 IF(S1<1) OR(S1>3) THEN3490 +3510 IFS1=2 THENS1=1.5 +3520 IFS1=3 THENS1=2 +3530 GOSUB110:PRINTIN$ +3540 GOSUB3360 +3550 PRINT:GOSUB120:PRINT"Voornaam speler 2"; +3560 INPUTN2$ +3570 IFN2$="" THENN2$="Speler 2" +3580 IFN1$=N2$ THENN1$=N1$+" 1":N2$=N2$+" 2" 3590 I=LEN(N1$) -3600 IF I>15 THEN N1$=LEFT$(N1$,15):GOTO 3600 +3600 IFI>15 THENN1$=LEFT$(N1$,15):GOTO3600 3610 J=LEN(N2$) -3620 IF J>15 THEN N2$=LEFT$(N2$,15):GOTO 3620 -3630 LI=I:IF J>I THEN LI=J -3640 GOSUB 110:PRINT SP$;" " -3650 GOSUB 110:PRINT "Hallo ";N2$;"," -3660 GOSUB 3900 -3670 GOSUB 210:S2=VAL(IN$) -3680 IF (S2<1) OR(S2>3) THEN 3670 -3690 IF S2=2 THEN S2=1.5 -3700 IF S2=3 THEN S2=2 -3710 GOSUB 110:PRINT IN$ +3620 IFJ>15 THENN2$=LEFT$(N2$,15):GOTO3620 +3630 LI=I:IFJ>I THENLI=J +3640 GOSUB110:PRINTSP$;" " +3650 GOSUB110:PRINT"Hallo ";N2$;"," +3660 GOSUB3900 +3670 GOSUB210:S2=VAL(IN$) +3680 IF(S2<1) OR(S2>3) THEN3670 +3690 IFS2=2 THENS2=1.5 +3700 IFS2=3 THENS2=2 +3710 GOSUB110:PRINTIN$ 3720 RETURN 3730 REM INTRO2 -3740 GOSUB 3360 -3750 PRINT :PRINT -3760 PRINT :PRINT "Hoeveel ";TH$ -3770 PRINT :PRINT "wil elk van jullie raden?" -3780 PRINT :PRINT "(Minstens 5; hoogstens 45)" -3790 PRINT :PRINT "Aantal: ";:GOSUB 120:VE=VE-1 -3800 INPUT IN$:IN=VAL(IN$) -3810 IF (IN<5) OR(IN>45) THEN GOSUB 110:GOTO 3790 -3820 AB=IN:GOSUB 20000 -3830 HO=0:VE=22:GOSUB 110 -3840 PRINT "Nog iets verbeteren (J/N) ?"; -3850 GOSUB 210 -3860 IF (IN$="J") OR(IN$="j") THEN GOSUB 3410:GOTO 3740 -3870 IF (IN$<>"N") AND(IN$<>"n") THEN 3850 +3740 GOSUB3360 +3750 PRINT:PRINT +3760 PRINT:PRINT"Hoeveel ";TH$ +3770 PRINT:PRINT"wil elk van jullie raden?" +3780 PRINT:PRINT"(Minstens 5; hoogstens 45)" +3790 PRINT:PRINT"Aantal: ";:GOSUB120:VE=VE-1 +3800 INPUTIN$:IN=VAL(IN$) +3810 IF(IN<5) OR(IN>45) THENGOSUB110:GOTO3790 +3820 AB=IN:GOSUB20000 +3830 HO=0:VE=22:GOSUB110 +3840 PRINT"Nog iets verbeteren (J/N) ?"; +3850 GOSUB210 +3860 IF(IN$="J") OR(IN$="j") THENGOSUB3410:GOTO3740 +3870 IF(IN$<>"N") AND(IN$<>"n") THEN3850 3880 RETURN 3890 REM INTROTEKST -3900 PRINT :PRINT "Om beide spelers gelijke kansen te" -3910 PRINT :PRINT "geven, moeten we rekening houden met" -3920 PRINT :PRINT "je typvaardigheid, dus de snelheid" -3930 PRINT :PRINT "waarmee je op 't toetsenbord ratelt." -3940 PRINT :PRINT "Kies EERLIJK uit de 3 mogelijkheden." -3950 PRINT :PRINT "(1 = vlug 2 = gemiddeld 3 = langzaam)" -3960 PRINT :PRINT "Jouw typsnelheid is: "; +3900 PRINT:PRINT"Om beide spelers gelijke kansen te" +3910 PRINT:PRINT"geven, moeten we rekening houden met" +3920 PRINT:PRINT"je typvaardigheid, dus de snelheid" +3930 PRINT:PRINT"waarmee je op 't toetsenbord ratelt." +3940 PRINT:PRINT"Kies EERLIJK uit de 3 mogelijkheden." +3950 PRINT:PRINT"(1 = vlug 2 = gemiddeld 3 = langzaam)" +3960 PRINT:PRINT"Jouw typsnelheid is: "; 3970 RETURN 3980 REM UITLEG -3990 GOSUB 100 -4000 HO=9:VE=11:GOSUB 110 -4010 PRINT "Wil je uitleg (J/N) ?"; -4020 GOSUB 210 -4030 IF (IN$="N") OR(IN$="n") THEN RETURN -4040 IF (IN$<>"J") AND(IN$<>"j") THEN 4020 -4050 GOSUB 3360 -4060 PRINT :PRINT "Dit spel is bedoeld voor twee personen." -4070 PRINT :PRINT "(In noodgevallen mag je natuurlijk ook" -4080 PRINT :PRINT "tegen jezelf spelen.)" -4090 PRINT :PRINT "Je ziet zo dadelijk een stukje tekst" -4100 PRINT :PRINT "over 't thema: ";TH$;"." -4110 PRINT :PRINT "Uit de tekst zijn alle klinkers (a-e-i-" -4120 PRINT :PRINT "o-u-y) weggelaten, zodat je heel gekke" -4130 PRINT :PRINT "'woorden' krijgt." -4140 PRINT :PRINT L1$ -4150 GOSUB 1470 -4160 GOSUB 3360 -4170 PRINT :PRINT "Elke speler probeert de tekst zo snel" -4180 PRINT :PRINT "mogelijk te raden en in te tikken." -4190 PRINT :PRINT "Hoe langer de tekst is, hoe meer tijd" -4200 PRINT :PRINT "je krijgt." -4210 PRINT :PRINT "Je kunt verbeteren met de <-- toets." -4220 PRINT :PRINT "Controleer je antwoord en druk daarna," -4230 PRINT :PRINT "maar NIET EERDER op de invoertoets." -4240 PRINT :PRINT "(RETURN, ENTER of iets dergelijks.)" -4250 PRINT :PRINT L1$:GOSUB 1470 -4260 GOSUB 3360 -4270 PRINT :PRINT "De eerste letter van het antwoord en" -4280 PRINT :PRINT "eigennamen schrijf je met een hoofd-" -4290 PRINT :PRINT "letter, de rest met kleine letters." -4300 PRINT :PRINT L1$ -4310 PRINT :PRINT -4320 PRINT :PRINT " 1. Uitleg nog eens lezen." -4330 PRINT :PRINT " 2. Ga verder met 't spel." -4340 PRINT :PRINT -4350 PRINT :PRINT " WAT KIES JE: "; -4360 GOSUB 210:IN=VAL(IN$) -4370 IF (IN<1) OR(IN>2) THEN 4360 -4380 IF IN=1 THEN 4050 +3990 GOSUB100 +4000 HO=9:VE=11:GOSUB110 +4010 PRINT"Wil je uitleg (J/N) ?"; +4020 GOSUB210 +4030 IF(IN$="N") OR(IN$="n") THENRETURN +4040 IF(IN$<>"J") AND(IN$<>"j") THEN4020 +4050 GOSUB3360 +4060 PRINT:PRINT"Dit spel is bedoeld voor twee personen." +4070 PRINT:PRINT"(In noodgevallen mag je natuurlijk ook" +4080 PRINT:PRINT"tegen jezelf spelen.)" +4090 PRINT:PRINT"Je ziet zo dadelijk een stukje tekst" +4100 PRINT:PRINT"over 't thema: ";TH$;"." +4110 PRINT:PRINT"Uit de tekst zijn alle klinkers (a-e-i-" +4120 PRINT:PRINT"o-u-y) weggelaten, zodat je heel gekke" +4130 PRINT:PRINT"'woorden' krijgt." +4140 PRINT:PRINTL1$ +4150 GOSUB1470 +4160 GOSUB3360 +4170 PRINT:PRINT"Elke speler probeert de tekst zo snel" +4180 PRINT:PRINT"mogelijk te raden en in te tikken." +4190 PRINT:PRINT"Hoe langer de tekst is, hoe meer tijd" +4200 PRINT:PRINT"je krijgt." +4210 PRINT:PRINT"Je kunt verbeteren met de <-- toets." +4220 PRINT:PRINT"Controleer je antwoord en druk daarna," +4230 PRINT:PRINT"maar NIET EERDER op de invoertoets." +4240 PRINT:PRINT"(RETURN, ENTER of iets dergelijks.)" +4250 PRINT:PRINTL1$:GOSUB1470 +4260 GOSUB3360 +4270 PRINT:PRINT"De eerste letter van het antwoord en" +4280 PRINT:PRINT"eigennamen schrijf je met een hoofd-" +4290 PRINT:PRINT"letter, de rest met kleine letters." +4300 PRINT:PRINTL1$ +4310 PRINT:PRINT +4320 PRINT:PRINT" 1. Uitleg nog eens lezen." +4330 PRINT:PRINT" 2. Ga verder met 't spel." +4340 PRINT:PRINT +4350 PRINT:PRINT" WAT KIES JE: "; +4360 GOSUB210:IN=VAL(IN$) +4370 IF(IN<1) OR(IN>2) THEN4360 +4380 IFIN=1 THEN4050 4390 RETURN 4400 REM TITELBEELD -4410 GOSUB 100 -4420 HO=0:VE=7:GOSUB 110 -4430 PRINT " +-----------------------------+" -4440 PRINT " ! !" -4450 PRINT " ! S P R E E K W O O R D E N !" -4460 PRINT " ! !" -4470 PRINT " ! Een programma van !" -4480 PRINT " ! !" -4490 PRINT " ! Harry Engel !" -4500 PRINT " ! !" -4510 PRINT " +-----------------------------+" -4520 HO=36:VE=21:GOSUB 110 -4530 PRINT "=>"; -4540 FOR W=1 TO 100:NEXT W -4550 GOSUB 110:PRINT " "; -4560 FOR W=1 TO 100:NEXT W -4570 GOSUB 200 -4580 IF IN$="" THEN 4520 +4410 GOSUB100 +4420 HO=0:VE=7:GOSUB110 +4430 PRINT" +-----------------------------+" +4440 PRINT" ! !" +4450 PRINT" ! S P R E E K W O O R D E N !" +4460 PRINT" ! !" +4470 PRINT" ! Een programma van !" +4480 PRINT" ! !" +4490 PRINT" ! Harry Engel !" +4500 PRINT" ! !" +4510 PRINT" +-----------------------------+" +4520 HO=36:VE=21:GOSUB110 +4530 PRINT"=>"; +4540 FORW=1 TO100:NEXTW +4550 GOSUB110:PRINT" "; +4560 FORW=1 TO100:NEXTW +4570 GOSUB200 +4580 IFIN$="" THEN4520 4590 RETURN 4600 REM INITIALISEREN 4610 TH$="SPREEKWOORDEN" @@ -367,8 +368,8 @@ 4650 CT=4:CN=0 4660 RETURN 4670 REM DIMENSIONEREN -4680 DIM G$(9) -4690 GOSUB 20200:GOSUB 20000 +4680 DIMG$(9) +4690 GOSUB20200:GOSUB20000 4700 G$(0)="NIET TE GELOVEN!":G$(1)="BEREGOED!" 4710 G$(2)="GEWELDIG!":G$(3)="EENZAME KLASSE!" 4720 G$(4)="WOW!":G$(5)="TE GEK, HOOR!" @@ -377,142 +378,142 @@ 4750 RETURN 19980 REM CURSOR UIT 19990 REM VOOR COMPUTERS MET IRRITANTE CURSOR -20000 PRINT CHR$(2);:REM P2000T +20000 PRINTCHR$(2);:REM P2000T 20010 RETURN 20090 REM CURSOR AAN -20100 PRINT CHR$(1);:REM P2000T +20100 PRINTCHR$(1);:REM P2000T 20110 RETURN 20190 REM ASCII-WAARDE VOOR <-- TOETS -20200 BS$=CHR$(16):REM P2000T +20200 BS$=CHR$(16):REMP2000T 20210 RETURN -25000 DATA "Oost west thuis best." -25010 DATA "Wie een kuil graaft voor een" -25020 DATA " ander valt er zelf in." -25030 DATA "De aanhouder wint." -25040 DATA "Aken en Keulen zijn niet" -25050 DATA " op een dag gebouwd." -25060 DATA "Twaalf ambachten, dertien ongelukken." -25070 DATA "De appel valt niet ver van de boom." -25080 DATA "Na gedane arbeid is het goed rusten." -25090 DATA "Als het tij verloopt," -25100 DATA " verzet men de bakens." -25110 DATA "Wie kaatst moet de bal verwachten." -25120 DATA "Het zijn sterke benen, die" -25130 DATA " de weelde kunnen dragen." -25140 DATA "Een goed begin is het halve werk." -25150 DATA "Belofte maakt schuld." -25160 DATA "Beter benijd dan beklaagd." -25170 DATA "Nieuwe bezems vegen schoon." -25180 DATA "Bitter in de mond maakt" -25190 DATA " het hart gezond." -25200 DATA "Beter hard geblazen dan de mond verbrand." -25210 DATA "In het land der blinden is eenoog koning." -25220 DATA "Het bloed kruipt waar het niet gaan kan." -25230 DATA "Hoge bomen vangen veel wind." -25240 DATA "Boontje komt om zijn loontje." -25250 DATA "Wie boter op zijn hoofd heeft," -25260 DATA " moet uit de zon blijven." -25270 DATA "Wiens brood men eet, diens" -25280 DATA " woord men spreekt." -25290 DATA "Beter een goede buur dan een verre vriend." -25300 DATA "Al te goed is buurmans gek." -25310 DATA "De een zijn dood is de ander zijn brood." -25320 DATA "Een ezel stoot zich niet tweemaal" -25330 DATA " aan dezelfde steen." -25340 DATA "Het eerste gewin is kattegespin." -25350 DATA "Wie in een glazen huis woont," -25360 DATA " moet niet met stenen gooien." -25370 DATA "Gestolen goed gedijt niet." -25380 DATA "Goedkoop is duurkoop." -25390 DATA "Het is niet al goud wat er blinkt." -25400 DATA "Eigen haard is goud waard." -25410 DATA "Beter ten halve gekeerd," -25420 DATA " dan ten hele gedwaald." -25430 DATA "Vele handen maken licht werk." -25440 DATA "Waar het hart vol van is," -25450 DATA " loopt de mond van over." -25460 DATA "Zachte heelmeesters maken" -25470 DATA " stinkende wonden." -25480 DATA "Met grote heren is het kwaad" -25490 DATA " kersen eten." -25500 DATA "Het hemd is nader dan de rok." -25510 DATA "Blaffende honden bijten niet." -25520 DATA "Men moet geen slapende honden" -25530 DATA " wakker maken." -25540 DATA "Met onwillige honden is het" -25550 DATA " kwaad hazen vangen." -25560 DATA "Wie een hond wil slaan," -25570 DATA " vindt licht een stok." -25580 DATA "Honger maakt rauwe bonen zoet." -25590 DATA "Zoveel hoofden, zoveel zinnen." -25600 DATA "Hoogmoed komt voor de val." -25610 DATA "Van dik hout zaagt men planken." -25620 DATA "Men moet het ijzer smeden als het heet is." -25630 DATA "Als het kalf verdronken is," -25640 DATA " dempt men de put." -25650 DATA "Als de katten muizen," -25660 DATA " dan mauwen ze niet." -25670 DATA "Wie het kleine niet eert," -25680 DATA " is het grote niet weerd." -25690 DATA "Men noemt geen koe bont," -25700 DATA " of er is een vlekje aan." -25710 DATA "Het zijn niet allen koks," -25720 DATA " die lange messen dragen." -25730 DATA "Veel koks bederven de brij." -25740 DATA "Krakende wagens lopen het langst." -25750 DATA "De kruik gaat zo lang te water" -25760 DATA " tot ze barst." -25770 DATA "Wie het laatst lacht, lacht het best." -25780 DATA "Ledigheid is des duivels oorkussen." -25790 DATA "Lekker is maar een vinger lang." -25800 DATA "Al is de leugen nog zo snel," -25810 DATA " de waarheid achterhaalt haar wel." -25820 DATA "De laatste loodjes wegen het zwaarst." -25830 DATA "Bij het scheiden van de markt" -25840 DATA " leert men de kooplui kennen." -25850 DATA "De morgenstond heeft goud in de mond." -25860 DATA "Wie zijn neus schendt," -25870 DATA " schendt zijn aangezicht." -25880 DATA "Als niet komt tot iet," -25890 DATA " kent iet zich zelven niet." -25900 DATA "Het oog van de meester" -25910 DATA " maakt het paard vet." -25920 DATA "Zoals de ouden zongen, piepen de jongen." -25930 DATA "Een gegeven paard moet men niet" -25940 DATA " in de bek zien." -25950 DATA "Wie met pek omgaat, wordt ermee besmet." -25960 DATA "De pot verwijt de ketel" -25970 DATA " dat hij zwart ziet." -25980 DATA "Na regen komt zonneschijn." -25990 DATA "Het is goed riemen snijden" -26000 DATA " uit andermans leer." -26010 DATA "Als een schaap over de dam is," -26020 DATA " volgen er spoedig meer." -26030 DATA "Wie de schoen past, trekke hem aan." -26040 DATA "De soep wordt niet zo heet gegeten," -26050 DATA " als ze wordt opgediend." -26060 DATA "Haastige spoed is zelden goed." -26070 DATA "De beste stuurlui staan aan wal." -26080 DATA "Veel varkens maken de spoeling dun." -26090 DATA "Wat in het vat is, verzuurt niet." -26100 DATA "Holle vaten klinken het hardst." -26110 DATA "Beter een vogel in de hand" -26120 DATA " dan tien in de lucht." -26130 DATA "Voorzichtigheid is de moeder" -26140 DATA " van de porceleinkast." -26150 DATA "Een vos verliest wel zijn haren," -26160 DATA " maar niet zijn streken." -26170 DATA "Als de vos de passie preekt," -26180 DATA " boer pas op je kippen." -26190 DATA "Die niet waagt, die niet wint." -26200 DATA "Zoals de waard is, vertrouwt hij" -26210 DATA " zijn gasten." -26220 DATA "Stille waters hebben diepe gronden." -26230 DATA "Goede wijn behoeft geen krans." -26240 DATA "Wie wind zaait, zal storm oogsten." -26250 DATA "Gedane zaken nemen geen keer." -26260 DATA "Een zwaluw maakt nog geen zomer." -26270 DATA "*" +25000 DATA"Oost west thuis best." +25010 DATA"Wie een kuil graaft voor een" +25020 DATA" ander valt er zelf in." +25030 DATA"De aanhouder wint." +25040 DATA"Aken en Keulen zijn niet" +25050 DATA" op een dag gebouwd." +25060 DATA"Twaalf ambachten, dertien ongelukken." +25070 DATA"De appel valt niet ver van de boom." +25080 DATA"Na gedane arbeid is het goed rusten." +25090 DATA"Als het tij verloopt," +25100 DATA" verzet men de bakens." +25110 DATA"Wie kaatst moet de bal verwachten." +25120 DATA"Het zijn sterke benen, die" +25130 DATA" de weelde kunnen dragen." +25140 DATA"Een goed begin is het halve werk." +25150 DATA"Belofte maakt schuld." +25160 DATA"Beter benijd dan beklaagd." +25170 DATA"Nieuwe bezems vegen schoon." +25180 DATA"Bitter in de mond maakt" +25190 DATA" het hart gezond." +25200 DATA"Beter hard geblazen dan de mond verbrand." +25210 DATA"In het land der blinden is eenoog koning." +25220 DATA"Het bloed kruipt waar het niet gaan kan." +25230 DATA"Hoge bomen vangen veel wind." +25240 DATA"Boontje komt om zijn loontje." +25250 DATA"Wie boter op zijn hoofd heeft," +25260 DATA" moet uit de zon blijven." +25270 DATA"Wiens brood men eet, diens" +25280 DATA" woord men spreekt." +25290 DATA"Beter een goede buur dan een verre vriend." +25300 DATA"Al te goed is buurmans gek." +25310 DATA"De een zijn dood is de ander zijn brood." +25320 DATA"Een ezel stoot zich niet tweemaal" +25330 DATA" aan dezelfde steen." +25340 DATA"Het eerste gewin is kattegespin." +25350 DATA"Wie in een glazen huis woont," +25360 DATA" moet niet met stenen gooien." +25370 DATA"Gestolen goed gedijt niet." +25380 DATA"Goedkoop is duurkoop." +25390 DATA"Het is niet al goud wat er blinkt." +25400 DATA"Eigen haard is goud waard." +25410 DATA"Beter ten halve gekeerd," +25420 DATA" dan ten hele gedwaald." +25430 DATA"Vele handen maken licht werk." +25440 DATA"Waar het hart vol van is," +25450 DATA" loopt de mond van over." +25460 DATA"Zachte heelmeesters maken" +25470 DATA" stinkende wonden." +25480 DATA"Met grote heren is het kwaad" +25490 DATA" kersen eten." +25500 DATA"Het hemd is nader dan de rok." +25510 DATA"Blaffende honden bijten niet." +25520 DATA"Men moet geen slapende honden" +25530 DATA" wakker maken." +25540 DATA"Met onwillige honden is het" +25550 DATA" kwaad hazen vangen." +25560 DATA"Wie een hond wil slaan," +25570 DATA" vindt licht een stok." +25580 DATA"Honger maakt rauwe bonen zoet." +25590 DATA"Zoveel hoofden, zoveel zinnen." +25600 DATA"Hoogmoed komt voor de val." +25610 DATA"Van dik hout zaagt men planken." +25620 DATA"Men moet het ijzer smeden als het heet is." +25630 DATA"Als het kalf verdronken is," +25640 DATA" dempt men de put." +25650 DATA"Als de katten muizen," +25660 DATA" dan mauwen ze niet." +25670 DATA"Wie het kleine niet eert," +25680 DATA" is het grote niet weerd." +25690 DATA"Men noemt geen koe bont," +25700 DATA" of er is een vlekje aan." +25710 DATA"Het zijn niet allen koks," +25720 DATA" die lange messen dragen." +25730 DATA"Veel koks bederven de brij." +25740 DATA"Krakende wagens lopen het langst." +25750 DATA"De kruik gaat zo lang te water" +25760 DATA" tot ze barst." +25770 DATA"Wie het laatst lacht, lacht het best." +25780 DATA"Ledigheid is des duivels oorkussen." +25790 DATA"Lekker is maar een vinger lang." +25800 DATA"Al is de leugen nog zo snel," +25810 DATA" de waarheid achterhaalt haar wel." +25820 DATA"De laatste loodjes wegen het zwaarst." +25830 DATA"Bij het scheiden van de markt" +25840 DATA" leert men de kooplui kennen." +25850 DATA"De morgenstond heeft goud in de mond." +25860 DATA"Wie zijn neus schendt," +25870 DATA" schendt zijn aangezicht." +25880 DATA"Als niet komt tot iet," +25890 DATA" kent iet zich zelven niet." +25900 DATA"Het oog van de meester" +25910 DATA" maakt het paard vet." +25920 DATA"Zoals de ouden zongen, piepen de jongen." +25930 DATA"Een gegeven paard moet men niet" +25940 DATA" in de bek zien." +25950 DATA"Wie met pek omgaat, wordt ermee besmet." +25960 DATA"De pot verwijt de ketel" +25970 DATA" dat hij zwart ziet." +25980 DATA"Na regen komt zonneschijn." +25990 DATA"Het is goed riemen snijden" +26000 DATA" uit andermans leer." +26010 DATA"Als een schaap over de dam is," +26020 DATA" volgen er spoedig meer." +26030 DATA"Wie de schoen past, trekke hem aan." +26040 DATA"De soep wordt niet zo heet gegeten," +26050 DATA" als ze wordt opgediend." +26060 DATA"Haastige spoed is zelden goed." +26070 DATA"De beste stuurlui staan aan wal." +26080 DATA"Veel varkens maken de spoeling dun." +26090 DATA"Wat in het vat is, verzuurt niet." +26100 DATA"Holle vaten klinken het hardst." +26110 DATA"Beter een vogel in de hand" +26120 DATA" dan tien in de lucht." +26130 DATA"Voorzichtigheid is de moeder" +26140 DATA" van de porceleinkast." +26150 DATA"Een vos verliest wel zijn haren," +26160 DATA" maar niet zijn streken." +26170 DATA"Als de vos de passie preekt," +26180 DATA" boer pas op je kippen." +26190 DATA"Die niet waagt, die niet wint." +26200 DATA"Zoals de waard is, vertrouwt hij" +26210 DATA" zijn gasten." +26220 DATA"Stille waters hebben diepe gronden." +26230 DATA"Goede wijn behoeft geen krans." +26240 DATA"Wie wind zaait, zal storm oogsten." +26250 DATA"Gedane zaken nemen geen keer." +26260 DATA"Een zwaluw maakt nog geen zomer." +26270 DATA"*" 30000 REM Het thema van dit spel kan eenvoudig 30010 REM veranderd worden door de dataregels 30020 REM vanaf 25000 aan het nieuwe onderwerp @@ -540,4 +541,3 @@ 30240 REM 20100 en 20200 30250 REM 30260 REM COPYRIGHT (C) NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/03_Bekende_Nederlanders.bc2 b/Best_of_Basicode_4/03_Bekende_Nederlanders.bc2 index 5021e31..d1ea37e 100644 --- a/Best_of_Basicode_4/03_Bekende_Nederlanders.bc2 +++ b/Best_of_Basicode_4/03_Bekende_Nederlanders.bc2 @@ -1,28 +1,29 @@ -1000 A=500:GOTO 20 + +1000 A=500:GOTO20 1010 REM BEKENDE NEDERLANDERS 1020 REM 1030 REM ****************** 1040 REM * HOOFDPROGRAMMA * 1050 REM ****************** 1060 REM -1070 GOSUB 4680:REM DIMENSIONEREN -1080 GOSUB 4610:REM INITIALISEREN -1090 GOSUB 4410:REM TITELBEELD -1100 GOSUB 3990:REM UITLEG -1110 GOSUB 3410:REM INTRO1 -1120 GOSUB 3740:REM INTRO2 -1130 GOSUB 3080:REM KADER TEKENEN -1140 GOSUB 3030:REM WILLEKEURIG BEGIN -1150 FOR N=1 TO AB -1160 FOR SP=1 TO 2 -1170 GOSUB 1600:REM ZIN PRINTEN -1180 GOSUB 1830:REM INVULLEN -1190 IF A$<>Z$ THEN GOSUB 2280:REM FOUT -1200 IF A$=Z$ THEN GOSUB 2540:REM GOED -1210 NEXT SP:NEXT N -1220 GOSUB 2660:REM EINDSTAND -1230 ON IN GOTO 1120,1080,1240 -1240 GOSUB 2940:REM EINDE +1070 GOSUB4680:REM DIMENSIONEREN +1080 GOSUB4610:REM INITIALISEREN +1090 GOSUB4410:REM TITELBEELD +1100 GOSUB3990:REM UITLEG +1110 GOSUB3410:REM INTRO1 +1120 GOSUB3740:REM INTRO2 +1130 GOSUB3080:REM KADER TEKENEN +1140 GOSUB3030:REM WILLEKEURIG BEGIN +1150 FORN=1 TOAB +1160 FORSP=1 TO2 +1170 GOSUB1600:REM ZIN PRINTEN +1180 GOSUB1830:REM INVULLEN +1190 IFA$<>Z$ THENGOSUB2280:REM FOUT +1200 IFA$=Z$ THENGOSUB2540:REM GOED +1210 NEXTSP:NEXTN +1220 GOSUB2660:REM EINDSTAND +1230 ONIN GOTO1120,1080,1240 +1240 GOSUB2940:REM EINDE 1250 END 1260 REM 1270 REM *************** @@ -30,334 +31,334 @@ 1290 REM *************** 1300 REM 1310 REM WIS1 -1320 HO=2:FOR VE=7 TO 14 -1330 IF (VE=9) OR(VE=11) THEN 1350 -1340 GOSUB 110:PRINT SP$ -1350 NEXT VE:RETURN +1320 HO=2:FORVE=7 TO14 +1330 IF(VE=9) OR(VE=11) THEN1350 +1340 GOSUB110:PRINTSP$ +1350 NEXTVE:RETURN 1360 REM WIS2 -1370 HO=2:FOR VE=16 TO 22 -1380 GOSUB 110:PRINT SP$ -1390 NEXT VE:RETURN +1370 HO=2:FORVE=16 TO22 +1380 GOSUB110:PRINTSP$ +1390 NEXTVE:RETURN 1400 REM INLEZEN 1410 Z$="" -1420 READ W$:Z$=Z$+W$ -1430 IF W$="*" THEN RESTORE :GOTO 1410 -1440 IF RIGHT$(W$,1)<>"." THEN 1420 +1420 READW$:Z$=Z$+W$ +1430 IFW$="*" THENRESTORE:GOTO1410 +1440 IFRIGHT$(W$,1)<>"." THEN1420 1450 RETURN 1460 REM SPATIEBALK -1470 HO=2:VE=22:GOSUB 110 -1480 PRINT "Druk op de spatiebalk..."; -1490 GOSUB 210:IF IN$<>" " THEN 1490 +1470 HO=2:VE=22:GOSUB110 +1480 PRINT"Druk op de spatiebalk..."; +1490 GOSUB210:IFIN$<>" " THEN1490 1500 RETURN 1510 REM ROEP SPELER -1520 IF SP=1 THEN N$=N1$:TS=S1 -1530 IF SP=2 THEN N$=N2$:TS=S2 -1540 HO=2:VE=17:GOSUB 110 -1550 PRINT N$;" is nu aan de beurt." -1560 VE=19:GOSUB 110 -1570 PRINT "Klaar voor de start?" +1520 IFSP=1 THENN$=N1$:TS=S1 +1530 IFSP=2 THENN$=N2$:TS=S2 +1540 HO=2:VE=17:GOSUB110 +1550 PRINTN$;" is nu aan de beurt." +1560 VE=19:GOSUB110 +1570 PRINT"Klaar voor de start?" 1580 RETURN 1590 REM ZIN INLEZEN+PRINTEN -1600 GOSUB 1320:GOSUB 1370:GOSUB 1410 +1600 GOSUB1320:GOSUB1370:GOSUB1410 1610 HO=LEN(TH$)+8:VE=11 -1620 GOSUB 110:PRINT N -1630 GOSUB 1520 +1620 GOSUB110:PRINTN +1630 GOSUB1520 1640 Z=LEN(Z$)-1:CD=INT(TS*Z)+30 1650 Z$=LEFT$(Z$,Z):V$="" -1660 FOR I=1 TO Z +1660 FORI=1 TOZ 1670 L$=MID$(Z$,I,2) -1680 IF (L$="IJ") OR(L$="ij") THEN I=I+1:GOTO 1770 +1680 IF(L$="IJ") OR(L$="ij") THENI=I+1:GOTO1770 1690 L$=MID$(Z$,I,1) -1700 IF (L$="A") OR(L$="a") THEN 1770 -1710 IF (L$="E") OR(L$="e") THEN 1770 -1720 IF (L$="I") OR(L$="i") THEN 1770 -1730 IF (L$="O") OR(L$="o") THEN 1770 -1740 IF (L$="U") OR(L$="u") THEN 1770 -1750 IF (L$="Y") OR(L$="y") THEN 1770 +1700 IF(L$="A") OR(L$="a") THEN1770 +1710 IF(L$="E") OR(L$="e") THEN1770 +1720 IF(L$="I") OR(L$="i") THEN1770 +1730 IF(L$="O") OR(L$="o") THEN1770 +1740 IF(L$="U") OR(L$="u") THEN1770 +1750 IF(L$="Y") OR(L$="y") THEN1770 1760 V$=V$+L$ -1770 NEXT I:GOSUB 270 -1780 GOSUB 1470:GOSUB 1370 -1785 HO=2:VE=13:GOSUB 110:PRINT "?"; +1770 NEXTI:GOSUB270 +1780 GOSUB1470:GOSUB1370 +1785 HO=2:VE=13:GOSUB110:PRINT"?"; 1790 HO=INT((39-LEN(V$))/2):VE=7 -1800 GOSUB 110:PRINT V$ +1800 GOSUB110:PRINTV$ 1810 RETURN 1820 REM INVULLEN 1830 A$="":PH=2:PV=13 -1840 FOR I=CD TO 0 STEP -1 -1850 HO=34:VE=3:GOSUB 110:PRINT " " -1860 SR=I:GOSUB 300:GOSUB 110:PRINT SR$ -1870 FOR J=1 TO 10:GOSUB 20100 -1880 HO=PH:VE=PV:GOSUB 110 -1890 GOSUB 200 -1900 IF IN$="" THEN 1990 -1910 IF IN$=BS$ THEN GOSUB 2070:GOTO 1990 -1920 IF IN$=CHR$(13) THEN J=10:GOTO 1990 -1930 PRINT IN$; +1840 FORI=CD TO0 STEP-1 +1850 HO=34:VE=3:GOSUB110:PRINT" " +1860 SR=I:GOSUB300:GOSUB110:PRINTSR$ +1870 FORJ=1 TO10:GOSUB20100 +1880 HO=PH:VE=PV:GOSUB110 +1890 GOSUB200 +1900 IFIN$="" THEN1990 +1910 IFIN$=BS$ THENGOSUB2070:GOTO1990 +1920 IFIN$=CHR$(13) THENJ=10:GOTO1990 +1930 PRINTIN$; 1940 A$=A$+IN$ -1950 GOSUB 20100 -1960 GOSUB 120:PRINT "?";:PH=HO:PV=VE -1970 GOSUB 20000 -1980 IF HO=38 THEN GOSUB 2170:REM WRAPAROUND -1990 NEXT J:GOSUB 20000 +1950 GOSUB20100 +1960 GOSUB120:PRINT"?";:PH=HO:PV=VE +1970 GOSUB20000 +1980 IFHO=38 THENGOSUB2170:REM WRAPAROUND +1990 NEXTJ:GOSUB20000 2000 SC=I -2010 IF IN$=CHR$(13) THEN I=0:GOSUB 110:PRINT " "; -2020 NEXT I:GOSUB 270 +2010 IFIN$=CHR$(13) THENI=0:GOSUB110:PRINT" "; +2020 NEXTI:GOSUB270 2030 HO=34:VE=3 -2040 GOSUB 110:PRINT " " +2040 GOSUB110:PRINT" " 2050 RETURN 2060 REM CORRECTIE 2070 HO=HO-1 -2080 IF (HO<2) AND(VE=13) THEN RETURN -2090 IF (HO<2) AND(VE=14) THEN HO=HE-1:VE=13 -2100 GOSUB 110:PRINT " ";:GOSUB 110:PRINT "?"; +2080 IF(HO<2) AND(VE=13) THENRETURN +2090 IF(HO<2) AND(VE=14) THENHO=HE-1:VE=13 +2100 GOSUB110:PRINT" ";:GOSUB110:PRINT"?"; 2110 PH=HO:PV=VE 2120 A=LEN(A$) -2130 IF A=1 THEN A$="":RETURN +2130 IFA=1 THENA$="":RETURN 2140 A$=LEFT$(A$,A-1) 2150 RETURN 2160 REM WRAPAROUND 2170 A=LEN(A$):B=A -2180 IF MID$(A$,B,1)<>" " THEN B=B-1:GOTO 2180 -2190 HO=HO-(A-B):GOSUB 110:HE=HO -2200 FOR K=1 TO A-B+1:PRINT " ";:NEXT K -2210 HO=2:VE=14:GOSUB 110 -2220 IF (B=A) THEN 2250 -2230 PRINT RIGHT$(A$,A-B); -2240 GOSUB 120 -2250 PH=HO:PV=VE:PRINT "?"; +2180 IFMID$(A$,B,1)<>" " THENB=B-1:GOTO2180 +2190 HO=HO-(A-B):GOSUB110:HE=HO +2200 FORK=1 TOA-B+1:PRINT" ";:NEXTK +2210 HO=2:VE=14:GOSUB110 +2220 IF(B=A) THEN2250 +2230 PRINTRIGHT$(A$,A-B); +2240 GOSUB120 +2250 PH=HO:PV=VE:PRINT"?"; 2260 RETURN 2270 REM FOUT -2280 IF SC<1 THEN 2410 +2280 IFSC<1 THEN2410 2290 V$="":W$="" -2300 FOR I=1 TO Z +2300 FORI=1 TOZ 2310 L$=MID$(Z$,I,1) -2320 IF (L$=" ") OR(L$=",") THEN 2340 +2320 IF(L$=" ") OR(L$=",") THEN2340 2330 V$=V$+L$ -2340 NEXT I -2350 FOR I=1 TO LEN(A$) +2340 NEXTI +2350 FORI=1 TOLEN(A$) 2360 L$=MID$(A$,I,1) -2370 IF (L$=" ") OR(L$=",") THEN 2390 +2370 IF(L$=" ") OR(L$=",") THEN2390 2380 W$=W$+L$ -2390 NEXT I -2400 IF V$=W$ THEN Z$=V$:A$=W$:RETURN -2410 HO=2:VE=17:GOSUB 110 -2420 IF SC<1 THEN PRINT "Je tijd is voorbij. Het was:" -2430 IF SC>0 THEN PRINT "Helaas niet goed. Het was:" -2440 VE=19:GOSUB 110 -2450 IF Z<36 THEN PRINT Z$:GOTO 2510 +2390 NEXTI +2400 IFV$=W$ THENZ$=V$:A$=W$:RETURN +2410 HO=2:VE=17:GOSUB110 +2420 IFSC<1 THENPRINT"Je tijd is voorbij. Het was:" +2430 IFSC>0 THENPRINT"Helaas niet goed. Het was:" +2440 VE=19:GOSUB110 +2450 IFZ<36 THENPRINTZ$:GOTO2510 2460 B=36 -2470 IF MID$(Z$,B,1)<>" " THEN B=B-1:GOTO 2470 -2480 PRINT LEFT$(Z$,B) -2490 VE=20:GOSUB 110 -2500 PRINT RIGHT$(Z$,Z-B) -2510 GOSUB 1470 +2470 IFMID$(Z$,B,1)<>" " THENB=B-1:GOTO2470 +2480 PRINTLEFT$(Z$,B) +2490 VE=20:GOSUB110 +2500 PRINTRIGHT$(Z$,Z-B) +2510 GOSUB1470 2520 RETURN 2530 REM GOED -2540 HO=2:VE=17:GOSUB 110 -2550 GOSUB 260:I=INT(RV*10) -2560 PRINT G$(I) -2570 VE=19:GOSUB 110 -2580 PRINT "Score in deze ronde: ";SC -2590 IF SP=1 THEN SA=SA+SC:VE=1:SC=SA -2600 IF SP=2 THEN SB=SB+SC:VE=3:SC=SB -2610 HO=LI+3:GOSUB 110 -2620 SR=SC:GOSUB 310:PRINT SR$ -2630 GOSUB 1470 +2540 HO=2:VE=17:GOSUB110 +2550 GOSUB260:I=INT(RV*10) +2560 PRINTG$(I) +2570 VE=19:GOSUB110 +2580 PRINT"Score in deze ronde: ";SC +2590 IFSP=1 THENSA=SA+SC:VE=1:SC=SA +2600 IFSP=2 THENSB=SB+SC:VE=3:SC=SB +2610 HO=LI+3:GOSUB110 +2620 SR=SC:GOSUB310:PRINTSR$ +2630 GOSUB1470 2640 RETURN 2650 REM EINDSTAND -2660 GOSUB 1320:GOSUB 1370 -2670 HO=2:VE=11:GOSUB 110 -2680 PRINT SP$ -2690 GOSUB 110:PRINT "EINDE VAN DIT SPEL." -2700 HO=2:VE=17:GOSUB 110 -2710 IF SA>SB THEN PRINT "Proficiat, ";N1$ -2720 IF (SB>SA) THEN PRINT "Proficiat, ";N2$ -2730 IF SA<>SB THEN VE=19:GOSUB 110 -2740 IF SA<>SB THEN PRINT "Je hebt gewonnen!" -2750 IF SA=SB THEN PRINT "Ongelooflijk. Een gelijkspel!" -2760 GOSUB 1470:GOSUB 1370 -2770 HO=0:FOR VE=0 TO 11 -2780 IF (VE>4) AND(VE<10) THEN 2800 -2790 GOSUB 110:PRINT " ";SP$; -2800 NEXT VE -2810 HO=2:VE=17:GOSUB 110 -2820 PRINT "1. Dezelfde spelers nog 'n keer." -2830 VE=19:GOSUB 110 -2840 PRINT "2. Nieuwe spelers in aantocht." -2850 VE=21:GOSUB 110 -2860 PRINT "3. Stoppen." -2870 VE=7:GOSUB 110 -2880 PRINT "WAT KIES JE? "; -2890 GOSUB 210:IN=VAL(IN$) -2900 IF (IN<1) OR(IN>3) THEN 2890 -2910 IF IN=1 THEN GOSUB 4610 +2660 GOSUB1320:GOSUB1370 +2670 HO=2:VE=11:GOSUB110 +2680 PRINTSP$ +2690 GOSUB110:PRINT"EINDE VAN DIT SPEL." +2700 HO=2:VE=17:GOSUB110 +2710 IFSA>SB THENPRINT"Proficiat, ";N1$ +2720 IF(SB>SA) THENPRINT"Proficiat, ";N2$ +2730 IFSA<>SB THENVE=19:GOSUB110 +2740 IFSA<>SB THENPRINT"Je hebt gewonnen!" +2750 IFSA=SB THENPRINT"Ongelooflijk. Een gelijkspel!" +2760 GOSUB1470:GOSUB1370 +2770 HO=0:FORVE=0 TO11 +2780 IF(VE>4) AND(VE<10) THEN2800 +2790 GOSUB110:PRINT" ";SP$; +2800 NEXTVE +2810 HO=2:VE=17:GOSUB110 +2820 PRINT"1. Dezelfde spelers nog 'n keer." +2830 VE=19:GOSUB110 +2840 PRINT"2. Nieuwe spelers in aantocht." +2850 VE=21:GOSUB110 +2860 PRINT"3. Stoppen." +2870 VE=7:GOSUB110 +2880 PRINT"WAT KIES JE? "; +2890 GOSUB210:IN=VAL(IN$) +2900 IF(IN<1) OR(IN>3) THEN2890 +2910 IFIN=1 THENGOSUB4610 2920 RETURN 2930 REM EINDE -2940 GOSUB 1320:HO=0:FOR VE=0 TO 23 -2950 IF (VE>4) AND(VE<10) THEN 2970 -2960 GOSUB 110:PRINT " ";SP$; -2970 NEXT VE:Z$="EIND GOED AL GOED" +2940 GOSUB1320:HO=0:FORVE=0 TO23 +2950 IF(VE>4) AND(VE<10) THEN2970 +2960 GOSUB110:PRINT" ";SP$; +2970 NEXTVE:Z$="EIND GOED AL GOED" 2980 VE=7:HO=INT((39-LEN(Z$))/2) -2990 GOSUB 110:PRINT Z$ -3000 VE=10:GOSUB 110 +2990 GOSUB110:PRINTZ$ +3000 VE=10:GOSUB110 3010 RETURN 3020 REM WILLEKEURIG BEGIN -3030 FOR I=1 TO LEN(N2$) -3040 GOSUB 1410 -3050 NEXT I +3030 FORI=1 TOLEN(N2$) +3040 GOSUB1410 +3050 NEXTI 3060 RETURN 3070 REM KADER TEKENEN -3080 GOSUB 100 -3090 HO=2:VE=1:GOSUB 110 -3100 PRINT N1$; -3110 HO=LI+2:GOSUB 110 -3120 PRINT ": 0 pt" -3130 HO=32:GOSUB 110:PRINT "TIJD:" -3140 HO=2:VE=3:GOSUB 110 -3150 PRINT N2$ -3160 HO=LI+2:GOSUB 110 -3170 PRINT ": 0 pt" -3180 HO=0:VE=5:GOSUB 110 -3190 PRINT "***************************************" -3200 FOR VE=6 TO 8:GOSUB 110 -3210 PRINT "* *" -3220 NEXT VE -3230 VE=9:GOSUB 110 -3240 PRINT "***************************************" -3250 HO=2:VE=11:GOSUB 110 -3260 PRINT TH$;" - NR. " -3270 HO=0:VE=15:GOSUB 110 -3280 PRINT "+-------------------------------------+" -3290 FOR VE=16 TO 22:GOSUB 110 -3300 PRINT "! !" -3310 NEXT VE -3320 VE=23:GOSUB 110 -3330 PRINT "+-------------------------------------+"; +3080 GOSUB100 +3090 HO=2:VE=1:GOSUB110 +3100 PRINTN1$; +3110 HO=LI+2:GOSUB110 +3120 PRINT": 0 pt" +3130 HO=32:GOSUB110:PRINT"TIJD:" +3140 HO=2:VE=3:GOSUB110 +3150 PRINTN2$ +3160 HO=LI+2:GOSUB110 +3170 PRINT": 0 pt" +3180 HO=0:VE=5:GOSUB110 +3190 PRINT"***************************************" +3200 FORVE=6 TO8:GOSUB110 +3210 PRINT"* *" +3220 NEXTVE +3230 VE=9:GOSUB110 +3240 PRINT"***************************************" +3250 HO=2:VE=11:GOSUB110 +3260 PRINTTH$;" - NR. " +3270 HO=0:VE=15:GOSUB110 +3280 PRINT"+-------------------------------------+" +3290 FORVE=16 TO22:GOSUB110 +3300 PRINT"! !" +3310 NEXTVE +3320 VE=23:GOSUB110 +3330 PRINT"+-------------------------------------+"; 3340 RETURN 3350 REM KOP -3360 GOSUB 100:PRINT L1$ -3370 HO=INT((39-LEN(TH$))/2):VE=1:GOSUB 110 -3380 PRINT TH$:PRINT L1$ +3360 GOSUB100:PRINTL1$ +3370 HO=INT((39-LEN(TH$))/2):VE=1:GOSUB110 +3380 PRINTTH$:PRINTL1$ 3390 RETURN 3400 REM INTRO1 -3410 GOSUB 3360 -3420 GOSUB 20100 -3430 PRINT :GOSUB 120:PRINT "Voornaam speler 1"; -3440 INPUT N1$ -3450 IF N1$="" THEN N1$="Speler 1" -3460 GOSUB 110:PRINT SP$;" " -3470 GOSUB 110:PRINT "Hallo ";N1$;"," -3480 GOSUB 3900 -3490 GOSUB 210:S1=VAL(IN$) -3500 IF (S1<1) OR(S1>3) THEN 3490 -3510 IF S1=2 THEN S1=1.5 -3520 IF S1=3 THEN S1=2 -3530 GOSUB 110:PRINT IN$ -3540 GOSUB 3360 -3550 PRINT :GOSUB 120:PRINT "Voornaam speler 2"; -3560 INPUT N2$ -3570 IF N2$="" THEN N2$="Speler 2" -3580 IF N1$=N2$ THEN N1$=N1$+" 1":N2$=N2$+" 2" +3410 GOSUB3360 +3420 GOSUB20100 +3430 PRINT:GOSUB120:PRINT"Voornaam speler 1"; +3440 INPUTN1$ +3450 IFN1$="" THENN1$="Speler 1" +3460 GOSUB110:PRINTSP$;" " +3470 GOSUB110:PRINT"Hallo ";N1$;"," +3480 GOSUB3900 +3490 GOSUB210:S1=VAL(IN$) +3500 IF(S1<1) OR(S1>3) THEN3490 +3510 IFS1=2 THENS1=1.5 +3520 IFS1=3 THENS1=2 +3530 GOSUB110:PRINTIN$ +3540 GOSUB3360 +3550 PRINT:GOSUB120:PRINT"Voornaam speler 2"; +3560 INPUTN2$ +3570 IFN2$="" THENN2$="Speler 2" +3580 IFN1$=N2$ THENN1$=N1$+" 1":N2$=N2$+" 2" 3590 I=LEN(N1$) -3600 IF I>15 THEN N1$=LEFT$(N1$,15):GOTO 3600 +3600 IFI>15 THENN1$=LEFT$(N1$,15):GOTO3600 3610 J=LEN(N2$) -3620 IF J>15 THEN N2$=LEFT$(N2$,15):GOTO 3620 -3630 LI=I:IF J>I THEN LI=J -3640 GOSUB 110:PRINT SP$;" " -3650 GOSUB 110:PRINT "Hallo ";N2$;"," -3660 GOSUB 3900 -3670 GOSUB 210:S2=VAL(IN$) -3680 IF (S2<1) OR(S2>3) THEN 3670 -3690 IF S2=2 THEN S2=1.5 -3700 IF S2=3 THEN S2=2 -3710 GOSUB 110:PRINT IN$ +3620 IFJ>15 THENN2$=LEFT$(N2$,15):GOTO3620 +3630 LI=I:IFJ>I THENLI=J +3640 GOSUB110:PRINTSP$;" " +3650 GOSUB110:PRINT"Hallo ";N2$;"," +3660 GOSUB3900 +3670 GOSUB210:S2=VAL(IN$) +3680 IF(S2<1) OR(S2>3) THEN3670 +3690 IFS2=2 THENS2=1.5 +3700 IFS2=3 THENS2=2 +3710 GOSUB110:PRINTIN$ 3720 RETURN 3730 REM INTRO2 -3740 GOSUB 3360 -3750 PRINT :PRINT -3760 PRINT :PRINT "Hoeveel ";TH$ -3770 PRINT :PRINT "wil elk van jullie raden?" -3780 PRINT :PRINT "(Minstens 5; hoogstens 45)" -3790 PRINT :PRINT "Aantal: ";:GOSUB 120:VE=VE-1 -3800 INPUT IN$:IN=VAL(IN$) -3810 IF (IN<5) OR(IN>45) THEN GOSUB 110:GOTO 3790 -3820 AB=IN:GOSUB 20000 -3830 HO=0:VE=22:GOSUB 110 -3840 PRINT "Nog iets verbeteren (J/N) ?"; -3850 GOSUB 210 -3860 IF (IN$="J") OR(IN$="j") THEN GOSUB 3410:GOTO 3740 -3870 IF (IN$<>"N") AND(IN$<>"n") THEN 3850 +3740 GOSUB3360 +3750 PRINT:PRINT +3760 PRINT:PRINT"Hoeveel ";TH$ +3770 PRINT:PRINT"wil elk van jullie raden?" +3780 PRINT:PRINT"(Minstens 5; hoogstens 45)" +3790 PRINT:PRINT"Aantal: ";:GOSUB120:VE=VE-1 +3800 INPUTIN$:IN=VAL(IN$) +3810 IF(IN<5) OR(IN>45) THENGOSUB110:GOTO3790 +3820 AB=IN:GOSUB20000 +3830 HO=0:VE=22:GOSUB110 +3840 PRINT"Nog iets verbeteren (J/N) ?"; +3850 GOSUB210 +3860 IF(IN$="J") OR(IN$="j") THENGOSUB3410:GOTO3740 +3870 IF(IN$<>"N") AND(IN$<>"n") THEN3850 3880 RETURN 3890 REM INTROTEKST -3900 PRINT :PRINT "Om beide spelers gelijke kansen te" -3910 PRINT :PRINT "geven, moeten we rekening houden met" -3920 PRINT :PRINT "je typvaardigheid, dus de snelheid" -3930 PRINT :PRINT "waarmee je op 't toetsenbord ratelt." -3940 PRINT :PRINT "Kies EERLIJK uit de 3 mogelijkheden." -3950 PRINT :PRINT "(1 = vlug 2 = gemiddeld 3 = langzaam)" -3960 PRINT :PRINT "Jouw typsnelheid is: "; +3900 PRINT:PRINT"Om beide spelers gelijke kansen te" +3910 PRINT:PRINT"geven, moeten we rekening houden met" +3920 PRINT:PRINT"je typvaardigheid, dus de snelheid" +3930 PRINT:PRINT"waarmee je op 't toetsenbord ratelt." +3940 PRINT:PRINT"Kies EERLIJK uit de 3 mogelijkheden." +3950 PRINT:PRINT"(1 = vlug 2 = gemiddeld 3 = langzaam)" +3960 PRINT:PRINT"Jouw typsnelheid is: "; 3970 RETURN 3980 REM UITLEG -3990 GOSUB 100 -4000 HO=9:VE=11:GOSUB 110 -4010 PRINT "Wil je uitleg (J/N) ?"; -4020 GOSUB 210 -4030 IF (IN$="N") OR(IN$="n") THEN RETURN -4040 IF (IN$<>"J") AND(IN$<>"j") THEN 4020 -4050 GOSUB 3360 -4060 PRINT :PRINT "Dit spel is bedoeld voor twee personen." -4070 PRINT :PRINT "(In noodgevallen mag je natuurlijk ook" -4080 PRINT :PRINT "tegen jezelf spelen.)" -4090 PRINT :PRINT "Je ziet zo dadelijk een stukje tekst" -4100 PRINT :PRINT "over 't thema: ";TH$;"." -4110 PRINT :PRINT "Uit de tekst zijn alle klinkers (a-e-i-" -4120 PRINT :PRINT "o-u-y) weggelaten, zodat je heel gekke" -4130 PRINT :PRINT "'woorden' krijgt." -4140 PRINT :PRINT L1$ -4150 GOSUB 1470 -4160 GOSUB 3360 -4170 PRINT :PRINT "Elke speler probeert de tekst zo snel" -4180 PRINT :PRINT "mogelijk te raden en in te tikken." -4190 PRINT :PRINT "Hoe langer de tekst is, hoe meer tijd" -4200 PRINT :PRINT "je krijgt." -4210 PRINT :PRINT "Je kunt verbeteren met de <-- toets." -4220 PRINT :PRINT "Controleer je antwoord en druk daarna," -4230 PRINT :PRINT "maar NIET EERDER op de invoertoets." -4240 PRINT :PRINT "(RETURN, ENTER of iets dergelijks.)" -4250 PRINT :PRINT L1$:GOSUB 1470 -4260 GOSUB 3360 -4270 PRINT :PRINT "De eerste letter van het antwoord en" -4280 PRINT :PRINT "eigennamen schrijf je met een hoofd-" -4290 PRINT :PRINT "letter, de rest met kleine letters." -4300 PRINT :PRINT L1$ -4310 PRINT :PRINT -4320 PRINT :PRINT " 1. Uitleg nog eens lezen." -4330 PRINT :PRINT " 2. Ga verder met 't spel." -4340 PRINT :PRINT -4350 PRINT :PRINT " WAT KIES JE: "; -4360 GOSUB 210:IN=VAL(IN$) -4370 IF (IN<1) OR(IN>2) THEN 4360 -4380 IF IN=1 THEN 4050 +3990 GOSUB100 +4000 HO=9:VE=11:GOSUB110 +4010 PRINT"Wil je uitleg (J/N) ?"; +4020 GOSUB210 +4030 IF(IN$="N") OR(IN$="n") THENRETURN +4040 IF(IN$<>"J") AND(IN$<>"j") THEN4020 +4050 GOSUB3360 +4060 PRINT:PRINT"Dit spel is bedoeld voor twee personen." +4070 PRINT:PRINT"(In noodgevallen mag je natuurlijk ook" +4080 PRINT:PRINT"tegen jezelf spelen.)" +4090 PRINT:PRINT"Je ziet zo dadelijk een stukje tekst" +4100 PRINT:PRINT"over 't thema: ";TH$;"." +4110 PRINT:PRINT"Uit de tekst zijn alle klinkers (a-e-i-" +4120 PRINT:PRINT"o-u-y) weggelaten, zodat je heel gekke" +4130 PRINT:PRINT"'woorden' krijgt." +4140 PRINT:PRINTL1$ +4150 GOSUB1470 +4160 GOSUB3360 +4170 PRINT:PRINT"Elke speler probeert de tekst zo snel" +4180 PRINT:PRINT"mogelijk te raden en in te tikken." +4190 PRINT:PRINT"Hoe langer de tekst is, hoe meer tijd" +4200 PRINT:PRINT"je krijgt." +4210 PRINT:PRINT"Je kunt verbeteren met de <-- toets." +4220 PRINT:PRINT"Controleer je antwoord en druk daarna," +4230 PRINT:PRINT"maar NIET EERDER op de invoertoets." +4240 PRINT:PRINT"(RETURN, ENTER of iets dergelijks.)" +4250 PRINT:PRINTL1$:GOSUB1470 +4260 GOSUB3360 +4270 PRINT:PRINT"De eerste letter van het antwoord en" +4280 PRINT:PRINT"eigennamen schrijf je met een hoofd-" +4290 PRINT:PRINT"letter, de rest met kleine letters." +4300 PRINT:PRINTL1$ +4310 PRINT:PRINT +4320 PRINT:PRINT" 1. Uitleg nog eens lezen." +4330 PRINT:PRINT" 2. Ga verder met 't spel." +4340 PRINT:PRINT +4350 PRINT:PRINT" WAT KIES JE: "; +4360 GOSUB210:IN=VAL(IN$) +4370 IF(IN<1) OR(IN>2) THEN4360 +4380 IFIN=1 THEN4050 4390 RETURN 4400 REM TITELBEELD -4410 GOSUB 100 -4420 HO=0:VE=7:GOSUB 110 -4430 PRINT " +-----------------------------+" -4440 PRINT " ! !" -4450 PRINT " ! BEKENDE NEDERLANDERS !" -4460 PRINT " ! !" -4470 PRINT " ! Een programma van !" -4480 PRINT " ! !" -4490 PRINT " ! Harry Engel !" -4500 PRINT " ! !" -4510 PRINT " +-----------------------------+" -4520 HO=36:VE=21:GOSUB 110 -4530 PRINT "=>"; -4540 FOR W=1 TO 100:NEXT W -4550 GOSUB 110:PRINT " "; -4560 FOR W=1 TO 100:NEXT W -4570 GOSUB 200 -4580 IF IN$="" THEN 4520 +4410 GOSUB100 +4420 HO=0:VE=7:GOSUB110 +4430 PRINT" +-----------------------------+" +4440 PRINT" ! !" +4450 PRINT" ! BEKENDE NEDERLANDERS !" +4460 PRINT" ! !" +4470 PRINT" ! Een programma van !" +4480 PRINT" ! !" +4490 PRINT" ! Harry Engel !" +4500 PRINT" ! !" +4510 PRINT" +-----------------------------+" +4520 HO=36:VE=21:GOSUB110 +4530 PRINT"=>"; +4540 FORW=1 TO100:NEXTW +4550 GOSUB110:PRINT" "; +4560 FORW=1 TO100:NEXTW +4570 GOSUB200 +4580 IFIN$="" THEN4520 4590 RETURN 4600 REM INITIALISEREN 4610 TH$="BEKENDE NEDERLANDERS" @@ -367,8 +368,8 @@ 4650 CT=4:CN=0 4660 RETURN 4670 REM DIMENSIONEREN -4680 DIM G$(9) -4690 GOSUB 20200:GOSUB 20000 +4680 DIMG$(9) +4690 GOSUB20200:GOSUB20000 4700 G$(0)="NIET TE GELOVEN!":G$(1)="BEREGOED!" 4710 G$(2)="GEWELDIG!":G$(3)="EENZAME KLASSE!" 4720 G$(4)="WOW!":G$(5)="TE GEK, HOOR!" @@ -377,62 +378,62 @@ 4750 RETURN 19980 REM CURSOR UIT 19990 REM VOOR COMPUTERS MET IRRITANTE CURSOR -20000 PRINT CHR$(2);:REM P2000T +20000 PRINTCHR$(2);:REM P2000T 20010 RETURN 20090 REM CURSOR AAN -20100 PRINT CHR$(1);:REM P2000T +20100 PRINTCHR$(1);:REM P2000T 20110 RETURN 20190 REM ASCII-WAARDE VOOR <-- TOETS 20200 BS$=CHR$(16):REM P2000T 20210 RETURN 24980 REM Met excuses aan de niet genoemde 24990 REM bekende Nederlanders. -25000 DATA "Joop den Uyl.","Bert de Vries." -25010 DATA "Joop Zoetemelk.","Jan Raas." -25020 DATA "Ruud Gullit.","Marco van Basten." -25030 DATA "Jan Lenferink.","Jos Brink." -25040 DATA "Ruud Lubbers.","Wim Kok." -25050 DATA "Hein Vergeer.","Gerard Kemkers." -25060 DATA "Andre van Duin.","Kees van Kooten." -25070 DATA "Koningin Beatrix.","Prins Claus." -25080 DATA "Mies Bouwman.","Felix Meurders." -25090 DATA "Wim van Hanegem.","Johan Cruyff." -25100 DATA "Toon Hermans.","Freek de Jonge." -25110 DATA "Adelheid Roosen.","Sonja Barend." -25120 DATA "Yvonne Keuls.","Jan Wolkers." -25130 DATA "Lee Towers.","Anita Meyer." -25140 DATA "Chriet Titulaer.","Wubbo Ockels." -25150 DATA "Rijk de Gooyer.","Johnny Kraaykamp." -25160 DATA "Mart Smeets.","Jan Pelleboer." -25170 DATA "Kees Brusse.","Jeroen Krabbe." -25180 DATA "Annemarie Verstappen.","Petra van Staveren." -25190 DATA "Hans Wiegel.","Dries van Agt." -25200 DATA "Vader Abraham.","Sandra Reemer." -25210 DATA "Ted de Braak.","Ron Brandsteder." -25220 DATA "Karin Bloemen.","Pim Jacobs." -25230 DATA "Joop van Zijl.","Fred Emmer." -25240 DATA "Noortje van Oostveen.","Maartje van Weegen." -25250 DATA "Ria Beckers.","Andree van Es." -25260 DATA "Jan Timman.","Hans Ree." -25270 DATA "Jannes van der Wal.","Harm Wiersma." -25280 DATA "Ivo Niehe.","Karel van de Graaf." -25290 DATA "Bram Peper.","Ed van Thijn." -25300 DATA "Marco Bakker.","Christine Deutekom." -25310 DATA "Ties Kruize.","Tom van 't Hek." -25320 DATA "Koos Postema.","Jaap van Meekren." -25330 DATA "Patricia Paay.","Ciska Peeters." -25340 DATA "Andre Hazes.","Koos Alberts." -25350 DATA "Carry Tefsen.","Manfred de Graaf." -25360 DATA "Adam Curry.","Tom Mulder." -25370 DATA "Karel Appel.","Berdien Stenberg." -25380 DATA "Tonny Eyk.","Albert Mol." -25390 DATA "Lous Haasdijk.","Henny Huisman." -25400 DATA "Tineke de Nooij.","Linda de Mol." -25410 DATA "Arnold Vanderlijde.","Anton Geesink." -25420 DATA "Hennie Kuiper.","Gerrie Kneteman." -25430 DATA "Ria Bremer.","Elles Berger." -25440 DATA "Robert Long.","Wim de Bie." -25450 DATA "*" +25000 DATA"Joop den Uyl.","Bert de Vries." +25010 DATA"Joop Zoetemelk.","Jan Raas." +25020 DATA"Ruud Gullit.","Marco van Basten." +25030 DATA"Jan Lenferink.","Jos Brink." +25040 DATA"Ruud Lubbers.","Wim Kok." +25050 DATA"Hein Vergeer.","Gerard Kemkers." +25060 DATA"Andre van Duin.","Kees van Kooten." +25070 DATA"Koningin Beatrix.","Prins Claus." +25080 DATA"Mies Bouwman.","Felix Meurders." +25090 DATA"Wim van Hanegem.","Johan Cruyff." +25100 DATA"Toon Hermans.","Freek de Jonge." +25110 DATA"Adelheid Roosen.","Sonja Barend." +25120 DATA"Yvonne Keuls.","Jan Wolkers." +25130 DATA"Lee Towers.","Anita Meyer." +25140 DATA"Chriet Titulaer.","Wubbo Ockels." +25150 DATA"Rijk de Gooyer.","Johnny Kraaykamp." +25160 DATA"Mart Smeets.","Jan Pelleboer." +25170 DATA"Kees Brusse.","Jeroen Krabbe." +25180 DATA"Annemarie Verstappen.","Petra van Staveren." +25190 DATA"Hans Wiegel.","Dries van Agt." +25200 DATA"Vader Abraham.","Sandra Reemer." +25210 DATA"Ted de Braak.","Ron Brandsteder." +25220 DATA"Karin Bloemen.","Pim Jacobs." +25230 DATA"Joop van Zijl.","Fred Emmer." +25240 DATA"Noortje van Oostveen.","Maartje van Weegen." +25250 DATA"Ria Beckers.","Andree van Es." +25260 DATA"Jan Timman.","Hans Ree." +25270 DATA"Jannes van der Wal.","Harm Wiersma." +25280 DATA"Ivo Niehe.","Karel van de Graaf." +25290 DATA"Bram Peper.","Ed van Thijn." +25300 DATA"Marco Bakker.","Christine Deutekom." +25310 DATA"Ties Kruize.","Tom van 't Hek." +25320 DATA"Koos Postema.","Jaap van Meekren." +25330 DATA"Patricia Paay.","Ciska Peeters." +25340 DATA"Andre Hazes.","Koos Alberts." +25350 DATA"Carry Tefsen.","Manfred de Graaf." +25360 DATA"Adam Curry.","Tom Mulder." +25370 DATA"Karel Appel.","Berdien Stenberg." +25380 DATA"Tonny Eyk.","Albert Mol." +25390 DATA"Lous Haasdijk.","Henny Huisman." +25400 DATA"Tineke de Nooij.","Linda de Mol." +25410 DATA"Arnold Vanderlijde.","Anton Geesink." +25420 DATA"Hennie Kuiper.","Gerrie Kneteman." +25430 DATA"Ria Bremer.","Elles Berger." +25440 DATA"Robert Long.","Wim de Bie." +25450 DATA"*" 30000 REM Het thema van dit spel kan eenvoudig 30010 REM veranderd worden door de dataregels 30020 REM vanaf 25000 aan het nieuwe onderwerp @@ -460,4 +461,3 @@ 30240 REM 20100 en 20200 30250 REM 30260 REM COPYRIGHT (C) NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/04_Zinsontleding.bc2 b/Best_of_Basicode_4/04_Zinsontleding.bc2 index 7fb8979..f46eda8 100644 --- a/Best_of_Basicode_4/04_Zinsontleding.bc2 +++ b/Best_of_Basicode_4/04_Zinsontleding.bc2 @@ -1,259 +1,260 @@ -1000 A=500:GOTO 20:REM ONTLEDEN + +1000 A=500:GOTO20:REM ONTLEDEN 1010 REM 1020 REM ****************** 1030 REM * HOOFDPROGRAMMA * 1040 REM ****************** 1050 REM 1055 F=0 -1060 GOSUB 3700:REM DIMENSIONEREN -1070 GOSUB 4000:REM TITELBEELD -1080 IF (IN$="J") OR(IN$="j") THEN GOSUB 4600:REM UITLEG -1090 GOSUB 5500:REM MENU -1100 GOSUB 3800:REM INITIALISEREN -1110 GOSUB 6200:REM WILLEKEURIG BEGIN -1120 GOSUB 6400:REM ZIN INLEZEN -1130 GOSUB 6700:REM ZIN PRINTEN -1140 GOSUB 7000:REM VRAAG PRINTEN -1150 IF KE=1 THEN 1170 -1160 IF (F=1) OR(F=2) THEN GOSUB 7600 -1170 GOSUB 7100:REM ANTWOORD PRINTEN -1180 IF (IN$="S") OR(IN$="s") THEN 1360 -1190 IF (IN$="T") OR(IN$="t") THEN GOSUB 1450:GOTO 1170 -1200 GOSUB 7700:REM CONTROLE ANTWOORD -1210 IF G=1 THEN 1280 +1060 GOSUB3700:REM DIMENSIONEREN +1070 GOSUB4000:REM TITELBEELD +1080 IF(IN$="J") OR(IN$="j") THENGOSUB4600:REM UITLEG +1090 GOSUB5500:REM MENU +1100 GOSUB3800:REM INITIALISEREN +1110 GOSUB6200:REM WILLEKEURIG BEGIN +1120 GOSUB6400:REM ZIN INLEZEN +1130 GOSUB6700:REM ZIN PRINTEN +1140 GOSUB7000:REM VRAAG PRINTEN +1150 IFKE=1 THEN1170 +1160 IF(F=1) OR(F=2) THENGOSUB7600 +1170 GOSUB7100:REM ANTWOORD PRINTEN +1180 IF(IN$="S") OR(IN$="s") THEN1360 +1190 IF(IN$="T") OR(IN$="t") THENGOSUB1450:GOTO1170 +1200 GOSUB7700:REM CONTROLE ANTWOORD +1210 IFG=1 THEN1280 1220 F=F+1:G(AR)=0 -1230 IF F=2 THEN GOSUB 3500:GOTO 1290 -1240 GOSUB 1500:REM VRAAG OM HULP -1250 IF (IN$<>"J") AND(IN$<>"j") THEN 1270 -1260 ON AR GOSUB 1600,2100,2400,2600,2900,3200,3200,3200 -1270 IF F=1 THEN 1130 -1280 IF NV=AR THEN G(NV)=G(NV)+1 +1230 IFF=2 THENGOSUB3500:GOTO1290 +1240 GOSUB1500:REM VRAAG OM HULP +1250 IF(IN$<>"J") AND(IN$<>"j") THEN1270 +1260 ONAR GOSUB1600,2100,2400,2600,2900,3200,3200,3200 +1270 IFF=1 THEN1130 +1280 IFNV=AR THENG(NV)=G(NV)+1 1290 F=0:AR=AR+1 -1300 IF AR<=NV THEN 1170 -1310 FOR W=1 TO 1000:NEXT W +1300 IFAR<=NV THEN1170 +1310 FORW=1 TO1000:NEXTW 1320 AZ=AZ+1 -1330 IF KE=1 THEN 1120 -1340 IF (G(NV)>4) AND(NV<8) THEN GOSUB 8000:REM NIVEAU HOGER -1350 GOTO 1120 -1360 GOSUB 8200:REM OVERZICHT EN SCORE -1370 GOTO 1090 +1330 IFKE=1 THEN1120 +1340 IF(G(NV)>4) AND(NV<8) THENGOSUB8000:REM NIVEAU HOGER +1350 GOTO1120 +1360 GOSUB8200:REM OVERZICHT EN SCORE +1370 GOTO1090 1400 REM 1410 REM *************** 1420 REM * SUBROUTINES * 1430 REM *************** 1440 REM 1450 REM TUSSENSTAND -1460 GOSUB 8200 -1470 GOSUB 6700 -1480 GOSUB 7000:GOSUB 7600 +1460 GOSUB8200 +1470 GOSUB6700 +1480 GOSUB7000:GOSUB7600 1490 RETURN 1500 REM VRAAG OM HULP -1510 GOSUB 100 -1520 HO=0:VE=5:GOSUB 110 -1525 NR=AR:IF AR>6 THEN NR=6 -1530 PRINT :PRINT "Bij het onderdeel ";ZD$(NR) -1540 PRINT :PRINT "een foutje." -1550 PRINT :PRINT "Misschien alleen een vergissing." -1560 PRINT :PRINT "Je krijgt aanstonds de kans" -1570 PRINT :PRINT "om de schade te herstellen." -1575 PRINT :PRINT -1580 PRINT :PRINT "Wil je eerst nog uitleg? (J/N) "; -1590 GOSUB 210:RETURN +1510 GOSUB100 +1520 HO=0:VE=5:GOSUB110 +1525 NR=AR:IFAR>6 THENNR=6 +1530 PRINT:PRINT"Bij het onderdeel ";ZD$(NR) +1540 PRINT:PRINT"een foutje." +1550 PRINT:PRINT"Misschien alleen een vergissing." +1560 PRINT:PRINT"Je krijgt aanstonds de kans" +1570 PRINT:PRINT"om de schade te herstellen." +1575 PRINT:PRINT +1580 PRINT:PRINT"Wil je eerst nog uitleg? (J/N) "; +1590 GOSUB210:RETURN 1600 REM PERSOONSVORM -1610 GOSUB 100 -1620 HO=0:VE=4:GOSUB 110 -1630 PRINT :PRINT "PERSOONSVORM FOUT" -1640 PRINT :PRINT -1650 PRINT :PRINT "Er zijn drie verschillende manieren" -1660 PRINT :PRINT "om de persoonsvorm in een zin te vinden." -1670 GOSUB 3400 -1680 PRINT :PRINT "EERSTE MANIER: VRAGEND MAKEN" -1690 PRINT -1700 PRINT :PRINT "Het woord dat vooraan in de zin komt te" -1710 PRINT :PRINT "staan, is de persoonsvorm.(Je mag geen" -1720 PRINT :PRINT "woorden toevoegen, alleen verschuiven.)" -1730 PRINT -1740 PRINT :PRINT "VOORBEELD:" -1750 PRINT -1760 PRINT :PRINT "Ik HEB de man een fiets gegeven. ---->" -1770 PRINT :PRINT "HEB ik de man een fiets gegeven? ---->" -1780 PRINT :PRINT "HEB is dus de persoonsvorm." -1790 PRINT "---" -1800 GOSUB 3400 -1810 PRINT "TWEEDE MANIER: VAN TIJD VERANDEREN" -1820 PRINT -1830 PRINT :PRINT "Verander de zin van TIJD; het werkwoord" -1840 PRINT :PRINT "dat verandert, is de persoonsvorm." -1850 PRINT -1860 PRINT :PRINT "VOORBEELD:" -1870 PRINT -1880 PRINT :PRINT "De man LOOPT op straat. ---->" -1890 PRINT :PRINT "De man LIEP op straat. ---->" -1900 PRINT :PRINT "LOOPT is dus de persoonsvorm." -1910 PRINT "-----" -1920 GOSUB 3400 -1930 PRINT "DERDE MANIER: VAN GETAL VERANDEREN" -1940 PRINT -1950 PRINT :PRINT "Dit betekent: van het enkelvoud in het" -1960 PRINT :PRINT "meervoud zetten of omgekeerd." -1970 PRINT :PRINT "Het werkwoord dat dan verandert," -1980 PRINT :PRINT "is de persoonsvorm." -1990 PRINT -2000 PRINT :PRINT "VOORBEELD:" -2010 PRINT :PRINT "Jij LEEST een boek. ---->" -2020 PRINT :PRINT "Jullie LEZEN een boek. ---->" -2030 PRINT :PRINT "LEEST is dus de persoonsvorm." -2040 PRINT "-----" -2050 GOSUB 3400 +1610 GOSUB100 +1620 HO=0:VE=4:GOSUB110 +1630 PRINT:PRINT"PERSOONSVORM FOUT" +1640 PRINT:PRINT +1650 PRINT:PRINT"Er zijn drie verschillende manieren" +1660 PRINT:PRINT"om de persoonsvorm in een zin te vinden." +1670 GOSUB3400 +1680 PRINT:PRINT"EERSTE MANIER: VRAGEND MAKEN" +1690 PRINT +1700 PRINT:PRINT"Het woord dat vooraan in de zin komt te" +1710 PRINT:PRINT"staan, is de persoonsvorm.(Je mag geen" +1720 PRINT:PRINT"woorden toevoegen, alleen verschuiven.)" +1730 PRINT +1740 PRINT:PRINT"VOORBEELD:" +1750 PRINT +1760 PRINT:PRINT"Ik HEB de man een fiets gegeven. ---->" +1770 PRINT:PRINT"HEB ik de man een fiets gegeven? ---->" +1780 PRINT:PRINT"HEB is dus de persoonsvorm." +1790 PRINT"---" +1800 GOSUB3400 +1810 PRINT"TWEEDE MANIER: VAN TIJD VERANDEREN" +1820 PRINT +1830 PRINT:PRINT"Verander de zin van TIJD; het werkwoord" +1840 PRINT:PRINT"dat verandert, is de persoonsvorm." +1850 PRINT +1860 PRINT:PRINT"VOORBEELD:" +1870 PRINT +1880 PRINT:PRINT"De man LOOPT op straat. ---->" +1890 PRINT:PRINT"De man LIEP op straat. ---->" +1900 PRINT:PRINT"LOOPT is dus de persoonsvorm." +1910 PRINT"-----" +1920 GOSUB3400 +1930 PRINT"DERDE MANIER: VAN GETAL VERANDEREN" +1940 PRINT +1950 PRINT:PRINT"Dit betekent: van het enkelvoud in het" +1960 PRINT:PRINT"meervoud zetten of omgekeerd." +1970 PRINT:PRINT"Het werkwoord dat dan verandert," +1980 PRINT:PRINT"is de persoonsvorm." +1990 PRINT +2000 PRINT:PRINT"VOORBEELD:" +2010 PRINT:PRINT"Jij LEEST een boek. ---->" +2020 PRINT:PRINT"Jullie LEZEN een boek. ---->" +2030 PRINT:PRINT"LEEST is dus de persoonsvorm." +2040 PRINT"-----" +2050 GOSUB3400 2060 RETURN 2100 REM GEZEGDE -2110 GOSUB 100 -2120 PRINT "GEZEGDE FOUT" -2130 PRINT :PRINT -2140 PRINT :PRINT "Er zijn twee soorten gezegdes:" -2150 PRINT :PRINT "WERKWOORDELIJK en NAAMWOORDELIJK" -2160 PRINT :PRINT "gezegde. Dit laatste zullen we" -2170 PRINT :PRINT "voorlopig maar even vergeten." -2180 PRINT :PRINT "Het werkwoordelijk gezegde bestaat" -2190 PRINT :PRINT "uit de persoonsvorm EN alle andere" -2200 PRINT :PRINT "werkwoorden van de zin." -2210 GOSUB 3400 -2220 PRINT :PRINT "Het gezegde kan uit verschillende" -2230 PRINT :PRINT "werkwoorden bestaan, kijk maar:" -2240 PRINT :PRINT -2250 PRINT :PRINT "Ik zou dat nooit hebben laten doen." -2260 PRINT :PRINT "zou ----> Persoonsvorm" -2270 PRINT "zou hebben laten doen ----> Gezegde" -2280 PRINT -2290 PRINT :PRINT "Hij heeft haar geen kusje durven geven" -2300 PRINT :PRINT "heeft ----> Persoonsvorm" -2310 PRINT "heeft durven geven ----> Gezegde" -2320 GOSUB 3400 +2110 GOSUB100 +2120 PRINT"GEZEGDE FOUT" +2130 PRINT:PRINT +2140 PRINT:PRINT"Er zijn twee soorten gezegdes:" +2150 PRINT:PRINT"WERKWOORDELIJK en NAAMWOORDELIJK" +2160 PRINT:PRINT"gezegde. Dit laatste zullen we" +2170 PRINT:PRINT"voorlopig maar even vergeten." +2180 PRINT:PRINT"Het werkwoordelijk gezegde bestaat" +2190 PRINT:PRINT"uit de persoonsvorm EN alle andere" +2200 PRINT:PRINT"werkwoorden van de zin." +2210 GOSUB3400 +2220 PRINT:PRINT"Het gezegde kan uit verschillende" +2230 PRINT:PRINT"werkwoorden bestaan, kijk maar:" +2240 PRINT:PRINT +2250 PRINT:PRINT"Ik zou dat nooit hebben laten doen." +2260 PRINT:PRINT"zou ----> Persoonsvorm" +2270 PRINT"zou hebben laten doen ----> Gezegde" +2280 PRINT +2290 PRINT:PRINT"Hij heeft haar geen kusje durven geven" +2300 PRINT:PRINT"heeft ----> Persoonsvorm" +2310 PRINT"heeft durven geven ----> Gezegde" +2320 GOSUB3400 2330 RETURN 2400 REM ONDERWERP -2410 GOSUB 100 -2420 PRINT :PRINT "ONDERWERP FOUT" -2430 PRINT -2440 PRINT :PRINT "Om het onderwerp van een zin te " -2450 PRINT :PRINT "kunnen vinden, moet je de zin van getal" -2460 PRINT :PRINT "veranderen. (Dit foefje heb je al" -2470 PRINT :PRINT "geleerd bij het zoeken van de" -2480 PRINT :PRINT "persoonsvorm.) Het woord dat met de" -2490 PRINT :PRINT "persoonsvorm meeverandert, is het" -2500 PRINT :PRINT "onderwerp." -2510 GOSUB 3400 -2520 PRINT :PRINT -2530 PRINT :PRINT "VOORBEELD:" -2540 PRINT -2550 PRINT :PRINT "HET MEISJE VOELT zich niet lekker." -2560 PRINT :PRINT "DE MEISJES VOELEN zich niet lekker." -2570 PRINT -2580 PRINT :PRINT "Dus 'HET MEISJE' is onderwerp." -2590 GOSUB 3400:RETURN +2410 GOSUB100 +2420 PRINT:PRINT"ONDERWERP FOUT" +2430 PRINT +2440 PRINT:PRINT"Om het onderwerp van een zin te " +2450 PRINT:PRINT"kunnen vinden, moet je de zin van getal" +2460 PRINT:PRINT"veranderen. (Dit foefje heb je al" +2470 PRINT:PRINT"geleerd bij het zoeken van de" +2480 PRINT:PRINT"persoonsvorm.) Het woord dat met de" +2490 PRINT:PRINT"persoonsvorm meeverandert, is het" +2500 PRINT:PRINT"onderwerp." +2510 GOSUB3400 +2520 PRINT:PRINT +2530 PRINT:PRINT"VOORBEELD:" +2540 PRINT +2550 PRINT:PRINT"HET MEISJE VOELT zich niet lekker." +2560 PRINT:PRINT"DE MEISJES VOELEN zich niet lekker." +2570 PRINT +2580 PRINT:PRINT"Dus 'HET MEISJE' is onderwerp." +2590 GOSUB3400:RETURN 2600 REM LIJD.VOORWERP -2610 GOSUB 100:PRINT -2620 PRINT :PRINT "LIJDEND VOORWERP FOUT" -2630 PRINT -2640 PRINT :PRINT "Om het lijdend voorwerp te kunnen" -2650 PRINT :PRINT "vinden, stellen we steeds de vraag:" -2660 PRINT :PRINT -2670 PRINT :PRINT "***************************************" -2680 PRINT -2690 PRINT :PRINT "Wie/Wat + PV + Onderwerp + Gezegde + ?" -2700 PRINT -2710 PRINT :PRINT "***************************************" -2720 GOSUB 3400 -2730 PRINT -2740 PRINT :PRINT "VOORBEELD:" -2750 PRINT -2760 PRINT :PRINT "Hij brengt zijn vriend naar de trein." -2770 PRINT "-------------------------------------" -2780 PRINT -2790 PRINT :PRINT "Stel nu de vraag:" -2800 PRINT -2810 PRINT :PRINT "Wie/Wat + brengt + hij + ?" -2820 PRINT -2830 PRINT :PRINT "Het antwoord is: 'zijn vriend'." -2840 PRINT -2850 PRINT :PRINT "'zijn vriend' is dus lijdend voorwerp." -2860 GOSUB 3400 +2610 GOSUB100:PRINT +2620 PRINT:PRINT"LIJDEND VOORWERP FOUT" +2630 PRINT +2640 PRINT:PRINT"Om het lijdend voorwerp te kunnen" +2650 PRINT:PRINT"vinden, stellen we steeds de vraag:" +2660 PRINT:PRINT +2670 PRINT:PRINT"***************************************" +2680 PRINT +2690 PRINT:PRINT"Wie/Wat + PV + Onderwerp + Gezegde + ?" +2700 PRINT +2710 PRINT:PRINT"***************************************" +2720 GOSUB3400 +2730 PRINT +2740 PRINT:PRINT"VOORBEELD:" +2750 PRINT +2760 PRINT:PRINT"Hij brengt zijn vriend naar de trein." +2770 PRINT"-------------------------------------" +2780 PRINT +2790 PRINT:PRINT"Stel nu de vraag:" +2800 PRINT +2810 PRINT:PRINT"Wie/Wat + brengt + hij + ?" +2820 PRINT +2830 PRINT:PRINT"Het antwoord is: 'zijn vriend'." +2840 PRINT +2850 PRINT:PRINT"'zijn vriend' is dus lijdend voorwerp." +2860 GOSUB3400 2870 RETURN 2900 REM MEEW.VOORWERP -2910 GOSUB 100:PRINT -2920 PRINT :PRINT "MEEWERKEND VOORWERP FOUT" -2930 PRINT :PRINT -2940 PRINT :PRINT "Het meewerkend voorwerp is een" -2950 PRINT :PRINT "zinsdeel waar je 'aan' of 'voor'" -2960 PRINT :PRINT "voor moet kunnen denken of weg" -2970 PRINT "---- ---" -2980 PRINT "moet kunnen laten. Kijk maar:" -2990 GOSUB 3400 -3000 PRINT -3010 PRINT :PRINT "Wij geven jou een zure appel. ---->" -3020 PRINT :PRINT "Wij geven aan jou een zure appel. ---->" -3030 PRINT -3040 PRINT :PRINT "'jou' is meewerkend voorwerp." -3050 PRINT -3060 PRINT :PRINT "Ik koop voor mijn zus iets moois. ---->" -3070 PRINT :PRINT "Ik koop mijn zus iets moois. ---->" -3080 PRINT -3090 PRINT :PRINT "'voor mijn zus' is meewerkend voorwerp." -3100 GOSUB 3400:RETURN +2910 GOSUB100:PRINT +2920 PRINT:PRINT"MEEWERKEND VOORWERP FOUT" +2930 PRINT:PRINT +2940 PRINT:PRINT"Het meewerkend voorwerp is een" +2950 PRINT:PRINT"zinsdeel waar je 'aan' of 'voor'" +2960 PRINT:PRINT"voor moet kunnen denken of weg" +2970 PRINT"---- ---" +2980 PRINT"moet kunnen laten. Kijk maar:" +2990 GOSUB3400 +3000 PRINT +3010 PRINT:PRINT"Wij geven jou een zure appel. ---->" +3020 PRINT:PRINT"Wij geven aan jou een zure appel. ---->" +3030 PRINT +3040 PRINT:PRINT"'jou' is meewerkend voorwerp." +3050 PRINT +3060 PRINT:PRINT"Ik koop voor mijn zus iets moois. ---->" +3070 PRINT:PRINT"Ik koop mijn zus iets moois. ---->" +3080 PRINT +3090 PRINT:PRINT"'voor mijn zus' is meewerkend voorwerp." +3100 GOSUB3400:RETURN 3200 REM BIJW.BEPALING -3210 GOSUB 100:PRINT -3220 PRINT :PRINT "BIJWOORDELIJKE BEPALING FOUT" -3230 PRINT -3240 PRINT :PRINT "De bijwoordelijke bepaling kun je" -3250 PRINT :PRINT "vinden door te vragen WAAR, WANNEER" -3260 PRINT :PRINT "of HOE iets gebeurt.(Er zijn nog meer" -3270 PRINT :PRINT "bijwoordelijke bepalingen, maar die" -3280 PRINT :PRINT "komen in dit programma niet voor.)" -3290 PRINT -3300 PRINT :PRINT "Van elk van bovenstaande mogelijkheden" -3310 PRINT :PRINT "volgt nu een voorbeeld:" -3320 GOSUB 3400:PRINT :PRINT -3330 PRINT :PRINT "De tuinman werkt in de tuin." -3340 PRINT :PRINT "'in de tuin' is bijwoordelijke bepaling." -3350 PRINT :PRINT "Ik zie je om elf uur." -3360 PRINT :PRINT "'om elf uur' is bijwoordelijke bepaling." -3370 PRINT :PRINT "De leerlingen werken hard." -3380 PRINT :PRINT "'hard' is bijwoordelijke bepaling." -3390 GOSUB 3400:RETURN +3210 GOSUB100:PRINT +3220 PRINT:PRINT"BIJWOORDELIJKE BEPALING FOUT" +3230 PRINT +3240 PRINT:PRINT"De bijwoordelijke bepaling kun je" +3250 PRINT:PRINT"vinden door te vragen WAAR, WANNEER" +3260 PRINT:PRINT"of HOE iets gebeurt.(Er zijn nog meer" +3270 PRINT:PRINT"bijwoordelijke bepalingen, maar die" +3280 PRINT:PRINT"komen in dit programma niet voor.)" +3290 PRINT +3300 PRINT:PRINT"Van elk van bovenstaande mogelijkheden" +3310 PRINT:PRINT"volgt nu een voorbeeld:" +3320 GOSUB3400:PRINT:PRINT +3330 PRINT:PRINT"De tuinman werkt in de tuin." +3340 PRINT:PRINT"'in de tuin' is bijwoordelijke bepaling." +3350 PRINT:PRINT"Ik zie je om elf uur." +3360 PRINT:PRINT"'om elf uur' is bijwoordelijke bepaling." +3370 PRINT:PRINT"De leerlingen werken hard." +3380 PRINT:PRINT"'hard' is bijwoordelijke bepaling." +3390 GOSUB3400:RETURN 3400 REM DRUK OP SPATIEBALK -3410 HO=0:VE=21:GOSUB 110 -3420 PRINT "=======================================" -3430 PRINT "Druk op de spatiebalk..."; -3440 GOSUB 210 -3450 IF IN$<>" " THEN 3440 -3460 GOSUB 100 +3410 HO=0:VE=21:GOSUB110 +3420 PRINT"=======================================" +3430 PRINT"Druk op de spatiebalk..."; +3440 GOSUB210 +3450 IFIN$<>" " THEN3440 +3460 GOSUB100 3470 RETURN 3500 REM WEER FOUT -3510 GOSUB 100 -3520 HO=0:VE=9:GOSUB 110 -3530 PRINT "Je antwoord is helaas weer niet goed." +3510 GOSUB100 +3520 HO=0:VE=9:GOSUB110 +3530 PRINT"Je antwoord is helaas weer niet goed." 3540 F(AR)=F(AR)+1 -3550 GOSUB 3400:GOSUB 6700 -3560 GOSUB 7000:GOSUB 7600 -3570 HO=15:VE=7+2*AR:GOSUB 110 -3580 PRINT G$(AR) +3550 GOSUB3400:GOSUB6700 +3560 GOSUB7000:GOSUB7600 +3570 HO=15:VE=7+2*AR:GOSUB110 +3580 PRINTG$(AR) 3590 RETURN 3600 REM BEPAAL GEZEGDE 3610 GZ$=G$(1) -3620 IF VC(2)>1 THEN GZ$=GZ$+" "+G$(2) -3630 IF VC(2)>3 THEN GZ$=GZ$+" "+G$(9) +3620 IFVC(2)>1 THENGZ$=GZ$+" "+G$(2) +3630 IFVC(2)>3 THENGZ$=GZ$+" "+G$(9) 3640 G$(2)=GZ$ 3650 RETURN 3700 REM DIMENSIONEREN -3710 DIM ZD$(6),G$(9) -3720 DIM WO$(9),WL(9),C(9) -3730 DIM VR$(8),A$(9),VC(9) -3740 DIM F(8),G(8) -3750 GOSUB 20000 +3710 DIMZD$(6),G$(9) +3720 DIMWO$(9),WL(9),C(9) +3730 DIMVR$(8),A$(9),VC(9) +3740 DIMF(8),G(8) +3750 GOSUB20000 3760 RETURN 3800 REM INITIALISEREN -3810 FOR I=0 TO 8 +3810 FORI=0 TO8 3820 F(I)=0:G(I)=0 -3830 NEXT I +3830 NEXTI 3840 VR$(1)="Persoonsvorm = " 3850 VR$(2)="Gezegde = " 3860 VR$(3)="Onderwerp = " @@ -264,410 +265,410 @@ 3910 VR$(8)="Bijw. bep. 3 = " 3920 RETURN 4000 REM TITELBEELD -4010 GOSUB 100 +4010 GOSUB100 4020 ZD$(1)="PERSOONSVORM" 4030 ZD$(2)="GEZEGDE" 4040 ZD$(3)="ONDERWERP" 4050 ZD$(4)="LIJD.VOORWERP" 4060 ZD$(5)="MEEW.VOORWERP" 4070 ZD$(6)="BIJW.BEPALING" -4080 GOSUB 20100:REM CURSOR UIT -4090 FOR I=0 TO 38:PRINT "*"; -4100 FOR W=1 TO 20:NEXT W:NEXT I -4110 HO=39:FOR VE=0 TO 22:GOSUB 110 -4120 PRINT "*";:NEXT VE -4130 VE=22:FOR HO=38 TO 1 STEP -1 -4140 GOSUB 110:PRINT "*";:NEXT HO -4150 HO=0:FOR VE=22 TO 1 STEP -1 -4160 GOSUB 110:PRINT "*";:NEXT VE -4170 FOR J=1 TO 6 -4180 GOSUB 260 +4080 GOSUB20100:REM CURSOR UIT +4090 FORI=0 TO38:PRINT"*"; +4100 FORW=1 TO20:NEXTW:NEXTI +4110 HO=39:FORVE=0 TO22:GOSUB110 +4120 PRINT"*";:NEXTVE +4130 VE=22:FORHO=38 TO1 STEP-1 +4140 GOSUB110:PRINT"*";:NEXTHO +4150 HO=0:FORVE=22 TO1 STEP-1 +4160 GOSUB110:PRINT"*";:NEXTVE +4170 FORJ=1 TO6 +4180 GOSUB260 4190 X=INT(RV*16+2) -4200 GOSUB 260 +4200 GOSUB260 4210 Y=INT(RV*19+2) -4220 HO=X:VE=Y:GOSUB 110 -4230 PRINT "??? ";ZD$(J);" ???" -4240 FOR W=1 TO 750:NEXT W -4250 GOSUB 110 -4260 PRINT " ":REM 21 SPATIES -4270 NEXT J -4280 GOSUB 100 -4290 FOR I=1 TO 3 -4300 FOR J=0 TO 39 -4310 PRINT "*"; -4320 NEXT J:NEXT I -4330 HO=0:VE=20:GOSUB 110 -4340 FOR I=1 TO 3 -4350 FOR J=0 TO 39 -4360 PRINT "*"; -4370 NEXT J:NEXT I -4380 HO=0:FOR VE=3 TO 19 -4390 GOSUB 110:PRINT "****" -4400 NEXT VE -4410 HO=36:FOR VE=3 TO 19 -4420 GOSUB 110:PRINT "****" -4430 NEXT VE -4440 HO=10:VE=9:GOSUB 110 -4450 PRINT "********************" -4460 FOR I=1 TO 3 -4470 VE=9+I:GOSUB 110 -4480 PRINT "* *" -4490 NEXT I -4500 VE=13:GOSUB 110 -4510 PRINT "********************" -4520 HO=16:VE=11:GOSUB 110 -4530 PRINT "ONTLEDEN" -4540 HO=10:VE=16:GOSUB 110 -4550 PRINT "Wil je weten hoe het" -4560 HO=9:VE=18:GOSUB 110 -4570 PRINT "programma werkt? (J/N) "; -4580 GOSUB 210 +4220 HO=X:VE=Y:GOSUB110 +4230 PRINT"??? ";ZD$(J);" ???" +4240 FORW=1 TO750:NEXTW +4250 GOSUB110 +4260 PRINT" ":REM 21 SPATIES +4270 NEXTJ +4280 GOSUB100 +4290 FORI=1 TO3 +4300 FORJ=0 TO39 +4310 PRINT"*"; +4320 NEXTJ:NEXTI +4330 HO=0:VE=20:GOSUB110 +4340 FORI=1 TO3 +4350 FORJ=0 TO39 +4360 PRINT"*"; +4370 NEXTJ:NEXTI +4380 HO=0:FORVE=3 TO19 +4390 GOSUB110:PRINT"****" +4400 NEXTVE +4410 HO=36:FORVE=3 TO19 +4420 GOSUB110:PRINT"****" +4430 NEXTVE +4440 HO=10:VE=9:GOSUB110 +4450 PRINT"********************" +4460 FORI=1 TO3 +4470 VE=9+I:GOSUB110 +4480 PRINT"* *" +4490 NEXTI +4500 VE=13:GOSUB110 +4510 PRINT"********************" +4520 HO=16:VE=11:GOSUB110 +4530 PRINT"ONTLEDEN" +4540 HO=10:VE=16:GOSUB110 +4550 PRINT"Wil je weten hoe het" +4560 HO=9:VE=18:GOSUB110 +4570 PRINT"programma werkt? (J/N) "; +4580 GOSUB210 4590 RETURN 4600 REM UITLEG -4610 GOSUB 100:PRINT -4620 PRINT :PRINT "De uitleg die nu volgt moet je " -4630 PRINT :PRINT "zeer zorgvuldig en langzaam lezen." -4640 PRINT :PRINT "Dit geldt trouwens voor elke uitleg" -4650 PRINT :PRINT "in de loop van dit programma." -4660 PRINT :PRINT :PRINT -4670 PRINT :PRINT "Bij het programma ONTLEDEN kun je" -4680 PRINT :PRINT "kiezen uit 3 mogelijkheden." -4690 GOSUB 3400 -4700 PRINT :PRINT "1. Je kunt een bepaald onderdeel" -4710 PRINT :PRINT " van het ontleden oefenen." -4720 PRINT :PRINT " (B.v. alleen het gezegde zoeken)." -4730 PRINT -4740 PRINT :PRINT "2. Je kunt beginnen vanaf niveau 1." -4750 PRINT :PRINT " (Aanbevolen voor beginnelingen)." -4760 PRINT :PRINT " Straks krijg je hierover uitleg." -4770 PRINT -4780 PRINT :PRINT "3. Je kunt zelf 't beginniveau bepalen." -4790 PRINT :PRINT " (Bij hernieuwd gebruik)." -4800 GOSUB 3400 -4810 PRINT :PRINT :PRINT -4820 PRINT :PRINT "Na het lezen van de verdere uitleg zie" -4830 PRINT :PRINT "je op het scherm een zin verschijnen." -4840 PRINT :PRINT "De verschillende zinsdelen van deze zin" -4850 PRINT :PRINT "zijn onderstreept." -4860 PRINT :PRINT "Onder elke lijn zie je 'n cijfer staan." -4870 PRINT :PRINT "Dit cijfer is erg belangrijk." -4880 GOSUB 3400 -4890 PRINT :PRINT :PRINT -4900 PRINT :PRINT "Wordt straks b.v. gevraagd wat het" -4910 PRINT :PRINT "gezegde is in een bepaalde zin, dan" -4920 PRINT :PRINT "hoef je als antwoord alleen maar een" -4930 PRINT :PRINT "cijfer in te typen en geen woorden." -4940 PRINT :PRINT "Tik je per ongeluk het verkeerde cijfer" -4950 PRINT :PRINT "in, dan kun je dit verbeteren met de" -4960 PRINT :PRINT "<-- toets. (PIJLTJE naar LINKS)" -4970 GOSUB 3400 -4980 PRINT :PRINT :PRINT -4990 PRINT :PRINT "Eerst krijg je de opdracht om uit een" -5000 PRINT :PRINT "aantal zinnen de persoonsvorm te" -5010 PRINT :PRINT "zoeken." -5020 PRINT :PRINT "Maak je hierbij een fout, dan krijg " -5030 PRINT :PRINT "je nog een herkansing." -5040 PRINT :PRINT "Voor deze herkansing kun je de computer" -5050 PRINT :PRINT "om uitleg vragen over het fout-gemaakte" -5060 PRINT :PRINT "onderdeel." -5070 GOSUB 3400 -5080 PRINT :PRINT :PRINT -5090 PRINT :PRINT "Is je antwoord daarna weer fout, dan" -5100 PRINT :PRINT "gaat er helaas een punt van je" -5110 PRINT :PRINT "totaal-score af." -5120 PRINT :PRINT "Zit 'n bepaald zinsdeel niet in de zin," -5130 PRINT :PRINT "dan druk je gewoon op de invoertoets." -5140 GOSUB 3400 -5150 PRINT :PRINT :PRINT -5160 PRINT :PRINT "Heb je vijf keer achter elkaar een goed" -5170 PRINT :PRINT "antwoord gegeven, dan ga je over naar" -5180 PRINT :PRINT "een hoger niveau." -5190 PRINT :PRINT "Uit de zinnen die dan volgen moet je" -5200 PRINT :PRINT "niet alleen de persoonsvorm zoeken," -5210 PRINT :PRINT "maar ook het gezegde." -5220 GOSUB 3400 -5230 PRINT :PRINT :PRINT -5240 PRINT :PRINT "Doe je 5x achter elkaar alles goed, dan" -5250 PRINT :PRINT "ga je over naar niveau 3. Dan moet je" -5260 PRINT :PRINT "uit elke zin de persoonsvorm, het" -5270 PRINT :PRINT "gezegde en het onderwerp zoeken." -5280 PRINT :PRINT "Dus: hoe hoger je niveau is, hoe meer" -5290 PRINT :PRINT "zinsdelen je moet benoemen." -5300 PRINT :PRINT "Het hoogste niveau is 6." -5310 GOSUB 3400 -5320 PRINT :PRINT :PRINT -5330 PRINT :PRINT "Wil je tijdens het programma stoppen," -5340 PRINT :PRINT "druk dan op de letter 's' of 'S'" -5350 PRINT :PRINT "in plaats van op een antwoordcijfer." -5360 PRINT :PRINT "Daarna volgt een foutenoverzicht en" -5370 PRINT :PRINT "een waarderingscijfer." -5380 PRINT :PRINT "Wil je tijdens het programma de" -5390 PRINT :PRINT "tussenstand weten, druk dan op" -5400 PRINT :PRINT "de letter 't' of 'T'." -5410 GOSUB 3400 -5420 PRINT :PRINT :PRINT -5430 PRINT :PRINT "We hopen dat dit programma je kan" -5440 PRINT :PRINT "helpen om het ontleden van een zin" -5450 PRINT :PRINT "beter onder de knie te krijgen." -5460 PRINT :PRINT :PRINT -5470 PRINT :PRINT "We wensen je veel succes." -5480 GOSUB 3400 +4610 GOSUB100:PRINT +4620 PRINT:PRINT"De uitleg die nu volgt moet je " +4630 PRINT:PRINT"zeer zorgvuldig en langzaam lezen." +4640 PRINT:PRINT"Dit geldt trouwens voor elke uitleg" +4650 PRINT:PRINT"in de loop van dit programma." +4660 PRINT:PRINT:PRINT +4670 PRINT:PRINT"Bij het programma ONTLEDEN kun je" +4680 PRINT:PRINT"kiezen uit 3 mogelijkheden." +4690 GOSUB3400 +4700 PRINT:PRINT"1. Je kunt een bepaald onderdeel" +4710 PRINT:PRINT" van het ontleden oefenen." +4720 PRINT:PRINT" (B.v. alleen het gezegde zoeken)." +4730 PRINT +4740 PRINT:PRINT"2. Je kunt beginnen vanaf niveau 1." +4750 PRINT:PRINT" (Aanbevolen voor beginnelingen)." +4760 PRINT:PRINT" Straks krijg je hierover uitleg." +4770 PRINT +4780 PRINT:PRINT"3. Je kunt zelf 't beginniveau bepalen." +4790 PRINT:PRINT" (Bij hernieuwd gebruik)." +4800 GOSUB3400 +4810 PRINT:PRINT:PRINT +4820 PRINT:PRINT"Na het lezen van de verdere uitleg zie" +4830 PRINT:PRINT"je op het scherm een zin verschijnen." +4840 PRINT:PRINT"De verschillende zinsdelen van deze zin" +4850 PRINT:PRINT"zijn onderstreept." +4860 PRINT:PRINT"Onder elke lijn zie je 'n cijfer staan." +4870 PRINT:PRINT"Dit cijfer is erg belangrijk." +4880 GOSUB3400 +4890 PRINT:PRINT:PRINT +4900 PRINT:PRINT"Wordt straks b.v. gevraagd wat het" +4910 PRINT:PRINT"gezegde is in een bepaalde zin, dan" +4920 PRINT:PRINT"hoef je als antwoord alleen maar een" +4930 PRINT:PRINT"cijfer in te typen en geen woorden." +4940 PRINT:PRINT"Tik je per ongeluk het verkeerde cijfer" +4950 PRINT:PRINT"in, dan kun je dit verbeteren met de" +4960 PRINT:PRINT"<-- toets. (PIJLTJE naar LINKS)" +4970 GOSUB3400 +4980 PRINT:PRINT:PRINT +4990 PRINT:PRINT"Eerst krijg je de opdracht om uit een" +5000 PRINT:PRINT"aantal zinnen de persoonsvorm te" +5010 PRINT:PRINT"zoeken." +5020 PRINT:PRINT"Maak je hierbij een fout, dan krijg " +5030 PRINT:PRINT"je nog een herkansing." +5040 PRINT:PRINT"Voor deze herkansing kun je de computer" +5050 PRINT:PRINT"om uitleg vragen over het fout-gemaakte" +5060 PRINT:PRINT"onderdeel." +5070 GOSUB3400 +5080 PRINT:PRINT:PRINT +5090 PRINT:PRINT"Is je antwoord daarna weer fout, dan" +5100 PRINT:PRINT"gaat er helaas een punt van je" +5110 PRINT:PRINT"totaal-score af." +5120 PRINT:PRINT"Zit 'n bepaald zinsdeel niet in de zin," +5130 PRINT:PRINT"dan druk je gewoon op de invoertoets." +5140 GOSUB3400 +5150 PRINT:PRINT:PRINT +5160 PRINT:PRINT"Heb je vijf keer achter elkaar een goed" +5170 PRINT:PRINT"antwoord gegeven, dan ga je over naar" +5180 PRINT:PRINT"een hoger niveau." +5190 PRINT:PRINT"Uit de zinnen die dan volgen moet je" +5200 PRINT:PRINT"niet alleen de persoonsvorm zoeken," +5210 PRINT:PRINT"maar ook het gezegde." +5220 GOSUB3400 +5230 PRINT:PRINT:PRINT +5240 PRINT:PRINT"Doe je 5x achter elkaar alles goed, dan" +5250 PRINT:PRINT"ga je over naar niveau 3. Dan moet je" +5260 PRINT:PRINT"uit elke zin de persoonsvorm, het" +5270 PRINT:PRINT"gezegde en het onderwerp zoeken." +5280 PRINT:PRINT"Dus: hoe hoger je niveau is, hoe meer" +5290 PRINT:PRINT"zinsdelen je moet benoemen." +5300 PRINT:PRINT"Het hoogste niveau is 6." +5310 GOSUB3400 +5320 PRINT:PRINT:PRINT +5330 PRINT:PRINT"Wil je tijdens het programma stoppen," +5340 PRINT:PRINT"druk dan op de letter 's' of 'S'" +5350 PRINT:PRINT"in plaats van op een antwoordcijfer." +5360 PRINT:PRINT"Daarna volgt een foutenoverzicht en" +5370 PRINT:PRINT"een waarderingscijfer." +5380 PRINT:PRINT"Wil je tijdens het programma de" +5390 PRINT:PRINT"tussenstand weten, druk dan op" +5400 PRINT:PRINT"de letter 't' of 'T'." +5410 GOSUB3400 +5420 PRINT:PRINT:PRINT +5430 PRINT:PRINT"We hopen dat dit programma je kan" +5440 PRINT:PRINT"helpen om het ontleden van een zin" +5450 PRINT:PRINT"beter onder de knie te krijgen." +5460 PRINT:PRINT:PRINT +5470 PRINT:PRINT"We wensen je veel succes." +5480 GOSUB3400 5490 RETURN 5500 REM MENU -5510 GOSUB 100 -5520 PRINT " H O O F D M E N U" -5530 PRINT "=======================================" -5540 PRINT :PRINT "1. Een bepaald onderdeel oefenen." -5550 PRINT :PRINT " (Bijv. alleen 't gezegde zoeken.)" -5560 PRINT -5570 PRINT :PRINT "2. Vanaf niveau 1 beginnen." -5580 PRINT :PRINT " (Aanbevolen voor nieuwelingen!!!)" -5590 PRINT -5600 PRINT :PRINT "3. Zelf het beginniveau bepalen." -5610 PRINT :PRINT " (Bij hernieuwd gebruik.)" -5620 PRINT -5630 PRINT :PRINT "4. Stoppen." -5640 PRINT :PRINT -5650 PRINT "=======================================" -5660 PRINT :PRINT "WAT KIES JE ? "; -5670 GOSUB 210:KE=VAL(IN$) -5680 IF (KE<1) OR(KE>4) THEN 5670 -5690 IF KE=4 THEN GOSUB 100:END -5700 IF KE=2 THEN NV=1:KO=1:RETURN -5710 IF KE=1 THEN 5900 -5720 GOSUB 100 -5730 PRINT " K I E S B E G I N N I V E A U" -5740 PRINT "=======================================" -5750 PRINT :PRINT :PRINT -5760 PRINT :PRINT "1. Terug naar hoofdmenu." -5770 PRINT :PRINT "2. Niveau 2 (pv en gezegde)" -5780 PRINT :PRINT "3. Niveau 3 (pv, gezegde en onderwerp)" -5790 PRINT :PRINT "4. Niveau 4 (pv, gez., ond., lijd.vw.)" -5800 PRINT :PRINT "5. Niveau 5 (pv, gez., ond., lv., mv.)" -5810 PRINT :PRINT "6. Niveau 6 (alle onderdelen)" -5820 PRINT :PRINT :PRINT -5830 PRINT "=======================================" -5840 PRINT :PRINT "WAT KIES JE ? "; -5850 GOSUB 210:KB=VAL(IN$) -5860 IF (KB<1) OR(KB>6) THEN 5850 -5870 IF KB=1 THEN 5510 -5880 NV=KB:IF KB=6 THEN NV=8 +5510 GOSUB100 +5520 PRINT" H O O F D M E N U" +5530 PRINT"=======================================" +5540 PRINT:PRINT"1. Een bepaald onderdeel oefenen." +5550 PRINT:PRINT" (Bijv. alleen 't gezegde zoeken.)" +5560 PRINT +5570 PRINT:PRINT"2. Vanaf niveau 1 beginnen." +5580 PRINT:PRINT" (Aanbevolen voor nieuwelingen!!!)" +5590 PRINT +5600 PRINT:PRINT"3. Zelf het beginniveau bepalen." +5610 PRINT:PRINT" (Bij hernieuwd gebruik.)" +5620 PRINT +5630 PRINT:PRINT"4. Stoppen." +5640 PRINT:PRINT +5650 PRINT"=======================================" +5660 PRINT:PRINT"WAT KIES JE ? "; +5670 GOSUB210:KE=VAL(IN$) +5680 IF(KE<1) OR(KE>4) THEN5670 +5690 IFKE=4 THENGOSUB100:END +5700 IFKE=2 THENNV=1:KO=1:RETURN +5710 IFKE=1 THEN5900 +5720 GOSUB100 +5730 PRINT" K I E S B E G I N N I V E A U" +5740 PRINT"=======================================" +5750 PRINT:PRINT:PRINT +5760 PRINT:PRINT"1. Terug naar hoofdmenu." +5770 PRINT:PRINT"2. Niveau 2 (pv en gezegde)" +5780 PRINT:PRINT"3. Niveau 3 (pv, gezegde en onderwerp)" +5790 PRINT:PRINT"4. Niveau 4 (pv, gez., ond., lijd.vw.)" +5800 PRINT:PRINT"5. Niveau 5 (pv, gez., ond., lv., mv.)" +5810 PRINT:PRINT"6. Niveau 6 (alle onderdelen)" +5820 PRINT:PRINT:PRINT +5830 PRINT"=======================================" +5840 PRINT:PRINT"WAT KIES JE ? "; +5850 GOSUB210:KB=VAL(IN$) +5860 IF(KB<1) OR(KB>6) THEN5850 +5870 IFKB=1 THEN5510 +5880 NV=KB:IFKB=6 THENNV=8 5890 KO=1:RETURN -5900 GOSUB 100 -5910 PRINT " K I E S O N D E R D E E L" -5920 PRINT "=======================================" -5930 PRINT :PRINT -5940 PRINT :PRINT "1. Alleen oefenen met persoonsvorm." -5950 PRINT :PRINT "2. Alleen oefenen met gezegde." -5960 PRINT :PRINT "3. Alleen oefenen met onderwerp." -5970 PRINT :PRINT "4. Alleen oefenen met lijd. voorwerp." -5980 PRINT :PRINT "5. Alleen oefenen met meew. voorwerp." -5990 PRINT :PRINT "6. Alleen oefenen met bijw. bepaling." -6000 PRINT :PRINT "7. Terug naar hoofdmenu." -6010 PRINT :PRINT :PRINT -6020 PRINT "=======================================" -6030 PRINT :PRINT "WAT KIES JE ? "; -6040 GOSUB 210:KO=VAL(IN$) -6050 IF (KO<1) OR(KO>7) THEN 6040 -6060 IF KO=7 THEN 5510 -6070 NV=KO:IF KO=6 THEN NV=8 +5900 GOSUB100 +5910 PRINT" K I E S O N D E R D E E L" +5920 PRINT"=======================================" +5930 PRINT:PRINT +5940 PRINT:PRINT"1. Alleen oefenen met persoonsvorm." +5950 PRINT:PRINT"2. Alleen oefenen met gezegde." +5960 PRINT:PRINT"3. Alleen oefenen met onderwerp." +5970 PRINT:PRINT"4. Alleen oefenen met lijd. voorwerp." +5980 PRINT:PRINT"5. Alleen oefenen met meew. voorwerp." +5990 PRINT:PRINT"6. Alleen oefenen met bijw. bepaling." +6000 PRINT:PRINT"7. Terug naar hoofdmenu." +6010 PRINT:PRINT:PRINT +6020 PRINT"=======================================" +6030 PRINT:PRINT"WAT KIES JE ? "; +6040 GOSUB210:KO=VAL(IN$) +6050 IF(KO<1) OR(KO>7) THEN6040 +6060 IFKO=7 THEN5510 +6070 NV=KO:IFKO=6 THENNV=8 6080 RETURN 6200 REM WILLEKEURIG BEGIN -6210 GOSUB 100 -6220 HO=12:VE=11:GOSUB 110 -6230 PRINT "Even geduld ....." -6240 GOSUB 260 +6210 GOSUB100 +6220 HO=12:VE=11:GOSUB110 +6230 PRINT"Even geduld ....." +6240 GOSUB260 6250 I=INT(RV*50) -6260 FOR J=1 TO I -6270 READ AW -6280 IF AW=0 THEN RESTORE :GOTO 6240 -6290 FOR K=1 TO AW -6300 READ WO$(K) -6310 NEXT K:NEXT J +6260 FORJ=1 TOI +6270 READAW +6280 IFAW=0 THENRESTORE:GOTO6240 +6290 FORK=1 TOAW +6300 READWO$(K) +6310 NEXTK:NEXTJ 6320 AZ=0:REM AANTAL ZINNEN 6330 RETURN 6400 REM ZIN INLEZEN 6410 AR=1:REM ANTWOORDTELLER -6420 READ AW:REM AANTAL WOORDEN -6430 IF AW=0 THEN RESTORE :GOTO 6420 -6440 FOR I=1 TO 9 +6420 READAW:REM AANTAL WOORDEN +6430 IFAW=0 THENRESTORE:GOTO6420 +6440 FORI=1 TO9 6450 WO$(I)="":G$(I)="" -6460 NEXT I -6470 FOR I=1 TO AW -6480 READ WO$(I) +6460 NEXTI +6470 FORI=1 TOAW +6480 READWO$(I) 6490 WL(I)=LEN(WO$(I)):REM WOORDLENGTE 6500 C(I)=VAL(RIGHT$(WO$(I),1)):REM WOORDCODE 6510 G$(C(I))=LEFT$(WO$(I),WL(I)-1) -6520 NEXT I +6520 NEXTI 6530 REM VRAAGCODE BEPALEN -6540 FOR I=1 TO 9 -6550 FOR J=1 TO AW +6540 FORI=1 TO9 +6550 FORJ=1 TOAW 6560 VC(I)=0 -6570 IF C(J)=I THEN VC(I)=I:J=AW -6580 NEXT J:NEXT I +6570 IFC(J)=I THENVC(I)=I:J=AW +6580 NEXTJ:NEXTI 6590 VC(2)=VC(1)+VC(2)+VC(9) -6600 GOSUB 3600:REM BEPAAL GEZEGDE -6610 FOR I=1 TO 9 +6600 GOSUB3600:REM BEPAAL GEZEGDE +6610 FORI=1 TO9 6620 C(I)=0 -6630 NEXT I +6630 NEXTI 6640 RETURN 6700 REM ZIN OP SCHERM -6710 GOSUB 20100:REM CURSOR UIT -6720 GOSUB 100:ZL=0:REM ZINSLENGTE -6730 FOR I=1 TO AW +6710 GOSUB20100:REM CURSOR UIT +6720 GOSUB100:ZL=0:REM ZINSLENGTE +6730 FORI=1 TOAW 6740 ZL=ZL+WL(I) -6750 IF ZL>39 THEN ZL=WL(I):HO=0:VE=4:GOSUB 110 -6760 PRINT LEFT$(WO$(I),WL(I)-1);" "; -6770 NEXT I +6750 IFZL>39 THENZL=WL(I):HO=0:VE=4:GOSUB110 +6760 PRINTLEFT$(WO$(I),WL(I)-1);" "; +6770 NEXTI 6780 REM ONDERSTREPEN -6790 HO=0:VE=1:GOSUB 110:ZL=0 -6800 FOR I=1 TO AW +6790 HO=0:VE=1:GOSUB110:ZL=0 +6800 FORI=1 TOAW 6810 ZL=ZL+WL(I) -6820 IF ZL>39 THEN ZL=WL(I):HO=0:VE=5:GOSUB 110 -6830 FOR J=1 TO WL(I)-1 -6840 PRINT "-";:NEXT J -6850 PRINT " ";:NEXT I +6820 IFZL>39 THENZL=WL(I):HO=0:VE=5:GOSUB110 +6830 FORJ=1 TOWL(I)-1 +6840 PRINT"-";:NEXTJ +6850 PRINT" ";:NEXTI 6860 REM GETAL PRINTEN 6870 VE=2:ZL=0 -6880 FOR I=1 TO AW +6880 FORI=1 TOAW 6890 ZL=ZL+WL(I) -6900 IF ZL>39 THEN ZL=WL(I):VE=6 -6910 HO=ZL-INT(WL(I)/2+.5)-1:GOSUB 110 -6920 SR=I:GOSUB 300:PRINT SR$; -6930 NEXT I +6900 IFZL>39 THENZL=WL(I):VE=6 +6910 HO=ZL-INT(WL(I)/2+.5)-1:GOSUB110 +6920 SR=I:GOSUB300:PRINTSR$; +6930 NEXTI 6940 RETURN 7000 REM VRAAG PRINTEN 7010 VR$(8)="Bijw. bep. 3 = " -7020 FOR I=KO TO NV -7030 HO=0:VE=7+2*I:GOSUB 110 -7040 PRINT VR$(I); -7050 NEXT I -7060 IF KE=1 THEN AR=KO +7020 FORI=KO TONV +7030 HO=0:VE=7+2*I:GOSUB110 +7040 PRINTVR$(I); +7050 NEXTI +7060 IFKE=1 THENAR=KO 7070 RETURN 7100 REM ANTWOORD PRINTEN -7110 GOSUB 20200:REM CURSOR AAN +7110 GOSUB20200:REM CURSOR AAN 7120 A$(AR)="":AL=0:REM ANTWOORDLENGTE 7130 A1=0:A2=0:A3=0 7140 C1=0:C2=0:C3=0 -7150 HO=15:VE=7+2*AR:GOSUB 110 -7160 GOSUB 210 -7170 IF (IN$="S") OR(IN$="s") THEN 7420 -7180 IF (IN$="T") OR(IN$="t") THEN 7420 -7190 IF IN$=CHR$(A) THEN 7440 -7200 IF IN$=CHR$(13) THEN 7260 +7150 HO=15:VE=7+2*AR:GOSUB110 +7160 GOSUB210 +7170 IF(IN$="S") OR(IN$="s") THEN7420 +7180 IF(IN$="T") OR(IN$="t") THEN7420 +7190 IFIN$=CHR$(A) THEN7440 +7200 IFIN$=CHR$(13) THEN7260 7210 IN=VAL(IN$) -7220 IF (IN<1) OR(IN>AW) THEN 7160 -7230 PRINT IN$;" "; +7220 IF(IN<1) OR(IN>AW) THEN7160 +7230 PRINTIN$;" "; 7240 A$(AR)=A$(AR)+IN$ -7250 GOTO 7160 -7260 HO=15:GOSUB 110:PRINT " "; -7270 IF A$(AR)="" THEN 7400 +7250 GOTO7160 +7260 HO=15:GOSUB110:PRINT" "; +7270 IFA$(AR)="" THEN7400 7280 AL=LEN(A$(AR)) 7290 A1=VAL(LEFT$(A$(AR),1)) -7300 IF (AL=2) OR(AL=3) THEN A2=VAL(MID$(A$(AR),2,1)) -7310 IF AL=3 THEN A3=VAL(RIGHT$(A$(AR),1)) -7320 GOSUB 110 -7330 PRINT LEFT$(WO$(A1),WL(A1)-1); -7340 IF (AL=2) OR(AL=3) THEN PRINT " ";LEFT$(WO$(A2),WL(A2)-1); -7350 IF AL=3 THEN PRINT " ";LEFT$(WO$(A3),WL(A3)-1); +7300 IF(AL=2) OR(AL=3) THENA2=VAL(MID$(A$(AR),2,1)) +7310 IFAL=3 THENA3=VAL(RIGHT$(A$(AR),1)) +7320 GOSUB110 +7330 PRINTLEFT$(WO$(A1),WL(A1)-1); +7340 IF(AL=2) OR(AL=3) THENPRINT" ";LEFT$(WO$(A2),WL(A2)-1); +7350 IFAL=3 THENPRINT" ";LEFT$(WO$(A3),WL(A3)-1); 7360 REM ANTWOORDCODE 7370 C1=VAL(RIGHT$(WO$(A1),1)) -7380 IF (AL=2) OR(AL=3) THEN C2=VAL(RIGHT$(WO$(A2),1)) -7390 IF AL=3 THEN C3=VAL(RIGHT$(WO$(A3),1)) +7380 IF(AL=2) OR(AL=3) THENC2=VAL(RIGHT$(WO$(A2),1)) +7390 IFAL=3 THENC3=VAL(RIGHT$(WO$(A3),1)) 7400 C(AR)=C1+C2+C3 -7410 GOSUB 20100:REM CURSOR UIT +7410 GOSUB20100:REM CURSOR UIT 7420 RETURN 7430 REM CORRECTIE -7440 GOSUB 120 -7450 HO=HO-2:IF HO<=15 THEN HO=15 -7460 GOSUB 110:PRINT " "; -7470 GOSUB 110 +7440 GOSUB120 +7450 HO=HO-2:IFHO<=15 THENHO=15 +7460 GOSUB110:PRINT" "; +7470 GOSUB110 7480 AL=LEN(A$(AR)) -7490 IF AL<2 THEN A$(AR)="":GOTO 7160 -7500 A$(AR)=LEFT$(A$(AR),AL-1):GOTO 7160 +7490 IFAL<2 THENA$(AR)="":GOTO7160 +7500 A$(AR)=LEFT$(A$(AR),AL-1):GOTO7160 7600 REM ANTWOORD OPNIEUW PRINTEN 7610 J=1 -7620 IF KE=1 THEN J=AR -7630 IF (KE=1) AND(KO=6) THEN J=KO -7640 FOR I=J TO AR-1 -7650 HO=15:VE=7+2*I:GOSUB 110 -7660 IF AR=1 THEN 7680 -7670 PRINT G$(I) -7680 NEXT I +7620 IFKE=1 THENJ=AR +7630 IF(KE=1) AND(KO=6) THENJ=KO +7640 FORI=J TOAR-1 +7650 HO=15:VE=7+2*I:GOSUB110 +7660 IFAR=1 THEN7680 +7670 PRINTG$(I) +7680 NEXTI 7690 RETURN 7700 REM CONTROLE ANTWOORD -7710 IF (C(AR)>5) AND(C(AR)<9) AND(VC(AR)>5) THEN 7760 -7720 IF C(AR)<>VC(AR) THEN 7750 -7730 IF (VC(2)=3) AND(AR=2) AND(AL<>2) THEN 7750 +7710 IF(C(AR)>5) AND(C(AR)<9) AND(VC(AR)>5) THEN7760 +7720 IFC(AR)<>VC(AR) THEN7750 +7730 IF(VC(2)=3) AND(AR=2) AND(AL<>2) THEN7750 7740 G=1:RETURN 7750 G=0:RETURN 7760 REM CONTROLE BIJW.BEPALING -7770 IF VC(7)+VC(8)=0 THEN 7800 -7780 IF VC(8)=0 THEN 7830 -7790 GOTO 7890 +7770 IFVC(7)+VC(8)=0 THEN7800 +7780 IFVC(8)=0 THEN7830 +7790 GOTO7890 7800 REM 1 BIJW.BEPALING -7810 IF C(AR)<>VC(6) THEN 7750 -7820 GOTO 7740 +7810 IFC(AR)<>VC(6) THEN7750 +7820 GOTO7740 7830 REM 2 BIJW.BEPALINGEN -7840 IF C(AR)=C(AR-1) THEN 7750 -7850 IF C(AR)=VC(AR) THEN 7740 +7840 IFC(AR)=C(AR-1) THEN7750 +7850 IFC(AR)=VC(AR) THEN7740 7860 W=VC(AR+1):VC(AR+1)=VC(AR):VC(AR)=W 7870 W$=G$(AR+1):G$(AR+1)=G$(AR):G$(AR)=W$ -7880 GOTO 7740 +7880 GOTO7740 7890 REM 3 BIJW.BEPALINGEN -7900 IF (C(AR)=C(AR-1)) OR(C(AR)=C(AR-2)) THEN 7750 -7910 IF C(AR)=VC(AR) THEN 7740 -7920 IF C(AR)=VC(AR+1) THEN 7860 +7900 IF(C(AR)=C(AR-1)) OR(C(AR)=C(AR-2)) THEN7750 +7910 IFC(AR)=VC(AR) THEN7740 +7920 IFC(AR)=VC(AR+1) THEN7860 7930 W=VC(AR+2):VC(AR+2)=VC(AR):VC(AR)=W 7940 W$=G$(AR+2):G$(AR+2)=G$(AR):G$(AR)=W$ -7950 GOTO 7740 +7950 GOTO7740 8000 REM NIVEAU HOGER 8010 NV=NV+1:NI=NV -8020 IF NV>5 THEN NV=8:NI=6 -8030 GOSUB 100 -8040 PRINT " N I V E A U H O G E R" -8050 PRINT "=======================================" -8060 HO=0:VE=6:GOSUB 110 -8070 PRINT "Goed zo!" -8080 PRINT :PRINT "Het onderdeel ";ZD$(NI-1) -8090 PRINT :PRINT "heb je onder de knie." -8100 PRINT :PRINT "We gaan nu een stap verder," -8110 PRINT :PRINT "dus naar niveau ";NI;"." -8120 PRINT :PRINT "Het hoogste niveau is 6." -8130 GOSUB 3400 +8020 IFNV>5 THENNV=8:NI=6 +8030 GOSUB100 +8040 PRINT" N I V E A U H O G E R" +8050 PRINT"=======================================" +8060 HO=0:VE=6:GOSUB110 +8070 PRINT"Goed zo!" +8080 PRINT:PRINT"Het onderdeel ";ZD$(NI-1) +8090 PRINT:PRINT"heb je onder de knie." +8100 PRINT:PRINT"We gaan nu een stap verder," +8110 PRINT:PRINT"dus naar niveau ";NI;"." +8120 PRINT:PRINT"Het hoogste niveau is 6." +8130 GOSUB3400 8140 RETURN 8200 REM OVERZICHT EN SCORE -8210 GOSUB 20100:REM CURSOR UIT -8220 GOSUB 100 -8230 PRINT " F O U T E N O V E R Z I C H T" -8240 PRINT "=======================================" -8250 PRINT :PRINT "Aantal zinnen:"; +8210 GOSUB20100:REM CURSOR UIT +8220 GOSUB100 +8230 PRINT" F O U T E N O V E R Z I C H T" +8240 PRINT"=======================================" +8250 PRINT:PRINT"Aantal zinnen:"; 8260 CT=3:CN=0 -8270 SR=AZ:GOSUB 310:PRINT SR$ -8280 IF AZ=0 THEN 8510 -8290 PRINT "Niveau :"; -8300 NI=NV:IF NV>6 THEN NI=6 -8310 SR=NI:GOSUB 310:PRINT SR$; -8320 PRINT " Cijfer:"; +8270 SR=AZ:GOSUB310:PRINTSR$ +8280 IFAZ=0 THEN8510 +8290 PRINT"Niveau :"; +8300 NI=NV:IFNV>6 THENNI=6 +8310 SR=NI:GOSUB310:PRINTSR$; +8320 PRINT" Cijfer:"; 8330 F=0:CT=4:CN=1 -8340 FOR I=1 TO 8 +8340 FORI=1 TO8 8350 F=F+F(I) -8360 NEXT I -8370 SR=INT((AZ-F)/AZ*100)/10:GOSUB 310 -8380 IF SR<0 THEN SR=0:GOSUB 310 -8390 PRINT SR$:PRINT -8400 PRINT "---------------------------------------" -8410 PRINT -8420 FOR I=1 TO NV -8430 IF I=6 THEN I=8 +8360 NEXTI +8370 SR=INT((AZ-F)/AZ*100)/10:GOSUB310 +8380 IFSR<0 THENSR=0:GOSUB310 +8390 PRINTSR$:PRINT +8400 PRINT"---------------------------------------" +8410 PRINT +8420 FORI=1 TONV +8430 IFI=6 THENI=8 8440 VR$(8)="Bijw. bep. = " -8450 PRINT VR$(I); -8460 SR=F(I):GOSUB 300 -8470 IF I>5 THEN SR=F(6)+F(7)+F(8):GOSUB 300 -8480 PRINT SR$;" x FOUT" -8490 PRINT -8500 NEXT I -8510 GOSUB 3400 +8450 PRINTVR$(I); +8460 SR=F(I):GOSUB300 +8470 IFI>5 THENSR=F(6)+F(7)+F(8):GOSUB300 +8480 PRINTSR$;" x FOUT" +8490 PRINT +8500 NEXTI +8510 GOSUB3400 8520 RETURN 20000 REM PAS REGEL 20060 AAN 20010 REM VOOR UW COMPUTER. @@ -679,111 +680,111 @@ 20070 RETURN 20100 REM CURSOR UIT 20110 REM VOOR COMPUTERS MET IRRITANTE CURSOR -20120 PRINT CHR$(2);:REM P2000T +20120 PRINTCHR$(2);:REM P2000T 20130 RETURN 20200 REM CURSOR AAN 20210 REM VOOR COMPUTERS MET IRRITANTE CURSOR -20220 PRINT CHR$(1);:REM P2000T +20220 PRINTCHR$(1);:REM P2000T 20230 RETURN 25000 REM DATA ZINNEN -25010 DATA 6,"Om elf uur6","heeft1","vader3","de tuinman5" -25020 DATA "een kop koffie4","gebracht.2" -25030 DATA 4,"Vanmiddag6","gaat1","de vierde klas3" -25040 DATA "naar de film.7" -25050 DATA 4,"Leen1","jij3","Marjolijn5","dat mooie boek?4" -25060 DATA 5,"Bij de ingang6","gaf1","de portier3" -25070 DATA "alle mensen5","een folder.4" -25080 DATA 4,"Hier6","sluiten1","alle winkels3" -25090 DATA "om zes uur.7" -25100 DATA 4,"Gaven1","de inwoners3" -25110 DATA "de jarige burgemeester5","een cadeau?4" -25120 DATA 5,"In de winter6","geeft1","de boswachter3" -25130 DATA "de dieren5","extra voedsel.4" -25140 DATA 6,"Donderdag6","zullen1","twee leerlingen3" -25150 DATA "oud papier4","gaan2","ophalen.9" -25160 DATA 4,"Vader en moeder3","schreven1","oom5" -25170 DATA "een lange brief.4" -25180 DATA 5,"Ik3","stuur1","Annie5","elke week6" -25190 DATA "een brief4" -25200 DATA 4,"In grote steden6","staan1","aan de rand7" -25210 DATA "torenhoge flats.3" -25220 DATA 4,"Dode vissen3","verontreinigden1" -25230 DATA "het water4","nog meer.6" -25240 DATA 6,"Wie3","helpt1","mij5","mijn leren bal4" -25250 DATA "straks6","zoeken?2" -25260 DATA 5,"Al bijna een maand6","is1","die straat3" -25270 DATA "nu7","opgebroken.2" -25280 DATA 5,"Wij3","zagen1","de helikopter4" -25290 DATA "op het grasveld6","landen.2" -25300 DATA 5,"Opa en oma3","hebben1","voor alle kinderen5" -25310 DATA "een boek4","gekocht.2" -25320 DATA 4,"Zal1","de burgemeester3","die tentoonstelling4" -25330 DATA "openen?2" -25340 DATA 6,"De treinmachinist3","liet1","ons5" -25350 DATA "alle knopjes4","in de stuurcabine6","zien.2" -25360 DATA 5,"'s Middags6","maakt1","hij3" -25370 DATA "direct7","zijn huiswerk.4" -25380 DATA 4,"Vanuit de lucht6","volgde1","de helikopter3" -25390 DATA "de wielrenners.4" -25400 DATA 6,"'s Winters6","hang1","ik3","elke week7" -25410 DATA "vetbollen4","in de boom.8" -25420 DATA 5,"De bijenhouder3","liet1","zijn bezoekers5" -25430 DATA "de zelfgemaakte korven4","zien.2" -25440 DATA 4,"Mijn ouders3","zagen1","in de etalage6" -25450 DATA "een mooie bank.4" -25460 DATA 6,"Heeft1","moeder3","vandaag6" -25470 DATA "boodschappen4","uit de stad7","gehaald?2" -25480 DATA 4,"De badmeester3","overhandigt1" -25490 DATA "de zwemmers5","het behaalde diploma.4" -25500 DATA 5,"Ik3","heb1","mijn spreekbeurt4" -25510 DATA "heel goed6","voorbereid.2" -25520 DATA 5,"Kom1","jij3","in de vakantie6" -25530 DATA "bij ons7","logeren?2" -25540 DATA 4,"Vader3","timmert1","een mooi duivenhok4" -25550 DATA "voor ons.5" -25560 DATA 4,"De bijen3","brengen1" -25570 DATA "de honing4","naar de korf.6" -25580 DATA 4,"Mijn oom en tante3","geven1" -25590 DATA "op mijn verjaardag6","leuke cadeaus.4" -25600 DATA 6,"Heeft1","jullie bovenbuurman3","jullie5" -25610 DATA "toen6","een boze brief4","geschreven?2" -25620 DATA 4,"Wij3","zagen1","in het Lauwersmeer6" -25630 DATA "grauwe ganzen.4" -25640 DATA 5,"De vorige week6","is1","mijn oom3" -25650 DATA "naar de stad7","verhuisd.2" -25660 DATA 4,"De marktkoopman3","verkocht1" -25670 DATA "moeder5","een nieuwe schaar.4" -25680 DATA 5,"Dit jaar6","houdt1","men3" -25690 DATA "de feestweek4","in de zomervakantie.7" -25700 DATA 5,"Gaf1","de politie3","na het ongeluk6" -25710 DATA "de bestuurder5","een zware boete?4" -25720 DATA 4,"De jongens3","halen1","vanavond6" -25730 DATA "hun fietsen.4" -25740 DATA 6,"Heb1","ik3","dat4","nu6" -25750 DATA "zo slecht7","gedaan?2" -25760 DATA 5,"Onze overburen3","geven1","ons5" -25770 DATA "vanavond6","een appel.4" -25780 DATA 5,"De gemeente3","zal1","deze week6" -25790 DATA "de straat4","asfalteren.2" -25800 DATA 4,"Moeder3","brengt1" -25810 DATA "Marjolijn5","een glas melk.4" -25820 DATA 4,"Jan3","maait1","deze week6","het gras.4" -25830 DATA 5,"Ze3","geven1","mijn broer5" -25840 DATA "in het weekend6","extra geld.4" -25850 DATA 4,"Wij3","kopen1","op de markt6" -25860 DATA "een grote wekker.4" -25870 DATA 4,"Peter3","schrijft1" -25880 DATA "zijn vriend5","een brief.4" -25890 DATA 5,"Zal1","ik3","mijn huiswerk4" -25900 DATA "nu meteen6","maken?2" -25910 DATA 5,"De vorige week6","stuurde1","oom Piet3" -25920 DATA "mij5","een mooie kaart.4" -25930 DATA 4,"Moeder3","helpt1","vader4","in de tuin.6" -25940 DATA 4,"De politieagent3","gaf1" -25950 DATA "de verkeersovertreder5","een bon.4" -25960 DATA 4,"De gemeente3","plaatst1" -25970 DATA "op de hoek6","een verkeerslicht.4" -25980 DATA 0 +25010 DATA6,"Om elf uur6","heeft1","vader3","de tuinman5" +25020 DATA"een kop koffie4","gebracht.2" +25030 DATA4,"Vanmiddag6","gaat1","de vierde klas3" +25040 DATA"naar de film.7" +25050 DATA4,"Leen1","jij3","Marjolijn5","dat mooie boek?4" +25060 DATA5,"Bij de ingang6","gaf1","de portier3" +25070 DATA"alle mensen5","een folder.4" +25080 DATA4,"Hier6","sluiten1","alle winkels3" +25090 DATA"om zes uur.7" +25100 DATA4,"Gaven1","de inwoners3" +25110 DATA"de jarige burgemeester5","een cadeau?4" +25120 DATA5,"In de winter6","geeft1","de boswachter3" +25130 DATA"de dieren5","extra voedsel.4" +25140 DATA6,"Donderdag6","zullen1","twee leerlingen3" +25150 DATA"oud papier4","gaan2","ophalen.9" +25160 DATA4,"Vader en moeder3","schreven1","oom5" +25170 DATA"een lange brief.4" +25180 DATA5,"Ik3","stuur1","Annie5","elke week6" +25190 DATA"een brief4" +25200 DATA4,"In grote steden6","staan1","aan de rand7" +25210 DATA"torenhoge flats.3" +25220 DATA4,"Dode vissen3","verontreinigden1" +25230 DATA"het water4","nog meer.6" +25240 DATA6,"Wie3","helpt1","mij5","mijn leren bal4" +25250 DATA"straks6","zoeken?2" +25260 DATA5,"Al bijna een maand6","is1","die straat3" +25270 DATA"nu7","opgebroken.2" +25280 DATA5,"Wij3","zagen1","de helikopter4" +25290 DATA"op het grasveld6","landen.2" +25300 DATA5,"Opa en oma3","hebben1","voor alle kinderen5" +25310 DATA"een boek4","gekocht.2" +25320 DATA4,"Zal1","de burgemeester3","die tentoonstelling4" +25330 DATA"openen?2" +25340 DATA6,"De treinmachinist3","liet1","ons5" +25350 DATA"alle knopjes4","in de stuurcabine6","zien.2" +25360 DATA5,"'s Middags6","maakt1","hij3" +25370 DATA"direct7","zijn huiswerk.4" +25380 DATA4,"Vanuit de lucht6","volgde1","de helikopter3" +25390 DATA"de wielrenners.4" +25400 DATA6,"'s Winters6","hang1","ik3","elke week7" +25410 DATA"vetbollen4","in de boom.8" +25420 DATA5,"De bijenhouder3","liet1","zijn bezoekers5" +25430 DATA"de zelfgemaakte korven4","zien.2" +25440 DATA4,"Mijn ouders3","zagen1","in de etalage6" +25450 DATA"een mooie bank.4" +25460 DATA6,"Heeft1","moeder3","vandaag6" +25470 DATA"boodschappen4","uit de stad7","gehaald?2" +25480 DATA4,"De badmeester3","overhandigt1" +25490 DATA"de zwemmers5","het behaalde diploma.4" +25500 DATA5,"Ik3","heb1","mijn spreekbeurt4" +25510 DATA"heel goed6","voorbereid.2" +25520 DATA5,"Kom1","jij3","in de vakantie6" +25530 DATA"bij ons7","logeren?2" +25540 DATA4,"Vader3","timmert1","een mooi duivenhok4" +25550 DATA"voor ons.5" +25560 DATA4,"De bijen3","brengen1" +25570 DATA"de honing4","naar de korf.6" +25580 DATA4,"Mijn oom en tante3","geven1" +25590 DATA"op mijn verjaardag6","leuke cadeaus.4" +25600 DATA6,"Heeft1","jullie bovenbuurman3","jullie5" +25610 DATA"toen6","een boze brief4","geschreven?2" +25620 DATA4,"Wij3","zagen1","in het Lauwersmeer6" +25630 DATA"grauwe ganzen.4" +25640 DATA5,"De vorige week6","is1","mijn oom3" +25650 DATA"naar de stad7","verhuisd.2" +25660 DATA4,"De marktkoopman3","verkocht1" +25670 DATA"moeder5","een nieuwe schaar.4" +25680 DATA5,"Dit jaar6","houdt1","men3" +25690 DATA"de feestweek4","in de zomervakantie.7" +25700 DATA5,"Gaf1","de politie3","na het ongeluk6" +25710 DATA"de bestuurder5","een zware boete?4" +25720 DATA4,"De jongens3","halen1","vanavond6" +25730 DATA"hun fietsen.4" +25740 DATA6,"Heb1","ik3","dat4","nu6" +25750 DATA"zo slecht7","gedaan?2" +25760 DATA5,"Onze overburen3","geven1","ons5" +25770 DATA"vanavond6","een appel.4" +25780 DATA5,"De gemeente3","zal1","deze week6" +25790 DATA"de straat4","asfalteren.2" +25800 DATA4,"Moeder3","brengt1" +25810 DATA"Marjolijn5","een glas melk.4" +25820 DATA4,"Jan3","maait1","deze week6","het gras.4" +25830 DATA5,"Ze3","geven1","mijn broer5" +25840 DATA"in het weekend6","extra geld.4" +25850 DATA4,"Wij3","kopen1","op de markt6" +25860 DATA"een grote wekker.4" +25870 DATA4,"Peter3","schrijft1" +25880 DATA"zijn vriend5","een brief.4" +25890 DATA5,"Zal1","ik3","mijn huiswerk4" +25900 DATA"nu meteen6","maken?2" +25910 DATA5,"De vorige week6","stuurde1","oom Piet3" +25920 DATA"mij5","een mooie kaart.4" +25930 DATA4,"Moeder3","helpt1","vader4","in de tuin.6" +25940 DATA4,"De politieagent3","gaf1" +25950 DATA"de verkeersovertreder5","een bon.4" +25960 DATA4,"De gemeente3","plaatst1" +25970 DATA"op de hoek6","een verkeerslicht.4" +25980 DATA0 30000 REM ********************** 30010 REM * Harry Engel * 30020 REM * Sg. Eysenhegge * @@ -801,4 +802,3 @@ 30140 REM Verander zonodig regels 20060, 20120 en 20220 30150 REM 30160 REM COPYRIGHT (C) NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/05_Woordbenoeming.bc2 b/Best_of_Basicode_4/05_Woordbenoeming.bc2 index 42a8dd2..e57183d 100644 --- a/Best_of_Basicode_4/05_Woordbenoeming.bc2 +++ b/Best_of_Basicode_4/05_Woordbenoeming.bc2 @@ -1,782 +1,783 @@ -1000 A=500:GOTO 20 + +1000 A=500:GOTO20 1010 REM WOORDBENOEMING 1020 REM 1030 REM HOOFDPROGRAMMA 1040 REM -1050 GOSUB 10250:REM DIMENSIONEREN -1060 GOSUB 10010:REM INITIALISEREN -1070 GOSUB 9610:REM TITELBEELD -1080 GOSUB 8370:REM HOOFDMENU -1090 IF NV=0 THEN GOSUB 8600 -1100 GOSUB 9250:REM WILLEKEURIG BEGIN -1110 GOSUB 6350:REM KADER TEKENEN -1120 GOSUB 6430:REM ZIN INLEZEN -1130 GOSUB 6530:REM ZIN OP SCHERM -1140 FOR N=1 TO AW +1050 GOSUB10250:REM DIMENSIONEREN +1060 GOSUB10010:REM INITIALISEREN +1070 GOSUB9610:REM TITELBEELD +1080 GOSUB8370:REM HOOFDMENU +1090 IFNV=0 THENGOSUB8600 +1100 GOSUB9250:REM WILLEKEURIG BEGIN +1110 GOSUB6350:REM KADER TEKENEN +1120 GOSUB6430:REM ZIN INLEZEN +1130 GOSUB6530:REM ZIN OP SCHERM +1140 FORN=1 TOAW 1150 C1=VAL(LEFT$(WC$(N),1)) -1160 IF WS$(C1)="" THEN 1320 +1160 IFWS$(C1)="" THEN1320 1170 C2=VAL(MID$(WC$(N),2,1)) 1180 C3=VAL(RIGHT$(WC$(N),1)) -1190 ON NV GOSUB 1450,1530,270 -1200 IF C1=0 THEN 1320 -1210 GOSUB 1940 -1220 IF S=1 THEN 1320 -1230 GOSUB 1890:REM WISSEN -1240 IF C2=0 THEN 1320 -1250 ON C1 GOSUB 2420,2510,2600,2690,2790,3070,2980 -1260 IF S=1 THEN 1320 -1270 GOSUB 1890 -1280 IF C3=0 THEN 1320 -1290 ON C1-2 GOSUB 3180,3280,3390 -1300 IF S=1 THEN 1320 -1310 GOSUB 1890 -1320 NEXT N -1330 IF S=1 THEN GOSUB 6700:GOSUB 10110:GOTO 1080 -1340 GOTO 1110 +1190 ONNV GOSUB1450,1530,270 +1200 IFC1=0 THEN1320 +1210 GOSUB1940 +1220 IFS=1 THEN1320 +1230 GOSUB1890:REM WISSEN +1240 IFC2=0 THEN1320 +1250 ONC1 GOSUB2420,2510,2600,2690,2790,3070,2980 +1260 IFS=1 THEN1320 +1270 GOSUB1890 +1280 IFC3=0 THEN1320 +1290 ONC1-2 GOSUB3180,3280,3390 +1300 IFS=1 THEN1320 +1310 GOSUB1890 +1320 NEXTN +1330 IFS=1 THENGOSUB6700:GOSUB10110:GOTO1080 +1340 GOTO1110 1350 REM 1360 REM SUBROUTINES 1370 REM 1380 REM VERHOOG INVOER -1390 FOR I=1 TO B -1400 IF WS$(I)="" THEN IN=IN+1 -1410 IF IN=I THEN I=B -1420 NEXT I +1390 FORI=1 TOB +1400 IFWS$(I)="" THENIN=IN+1 +1410 IFIN=I THENI=B +1420 NEXTI 1430 RETURN 1440 REM NIVEAU 1 -1450 IF C1=1 THEN C2=0 -1460 IF C1=3 THEN C2=0 -1470 IF C1=4 THEN C2=0 -1480 IF (C1=5) AND(C2>3) THEN C1=0 -1490 IF (C1=5) AND(C2<>1) THEN C3=0 -1500 IF C1=7 THEN C2=0 +1450 IFC1=1 THENC2=0 +1460 IFC1=3 THENC2=0 +1470 IFC1=4 THENC2=0 +1480 IF(C1=5) AND(C2>3) THENC1=0 +1490 IF(C1=5) AND(C2<>1) THENC3=0 +1500 IFC1=7 THENC2=0 1510 RETURN 1520 REM NIVEAU 2 -1530 IF C1=4 THEN C3=0 -1540 IF (C1=5) AND(C2>5) THEN C1=0 -1550 IF (C1=5) AND(C2<>1) THEN C3=0 -1560 IF C1=7 THEN C2=0 +1530 IFC1=4 THENC3=0 +1540 IF(C1=5) AND(C2>5) THENC1=0 +1550 IF(C1=5) AND(C2<>1) THENC3=0 +1560 IFC1=7 THENC2=0 1570 RETURN 1580 REM GOED ANTWOORD -1590 F=0:GOSUB 260 +1590 F=0:GOSUB260 1600 I=INT(RV*10) -1610 HO=0:VE=22:GOSUB 110 -1620 PRINT L0$:HO=INT((39-LEN(G$(I)))/2) -1630 GOSUB 110:PRINT G$(I); -1640 FOR W=1 TO 1000:NEXT W +1610 HO=0:VE=22:GOSUB110 +1620 PRINTL0$:HO=INT((39-LEN(G$(I)))/2) +1630 GOSUB110:PRINTG$(I); +1640 FORW=1 TO1000:NEXTW 1650 RETURN 1660 REM INVOER -1670 HO=0:VE=22:GOSUB 110 -1680 PRINT "WAT KIES JE ? "; -1690 GOSUB 200:IN=VAL(IN$) -1700 IF (IN$="S") OR(IN$="s") THEN S=1:N=AW:RETURN -1710 IF (IN$="T") OR(IN$="t") THEN S=2:RETURN -1720 HO=WH(N):VE=WV(N):GOSUB 110 +1670 HO=0:VE=22:GOSUB110 +1680 PRINT"WAT KIES JE ? "; +1690 GOSUB200:IN=VAL(IN$) +1700 IF(IN$="S") OR(IN$="s") THENS=1:N=AW:RETURN +1710 IF(IN$="T") OR(IN$="t") THENS=2:RETURN +1720 HO=WH(N):VE=WV(N):GOSUB110 1730 WL=LEN(WO$) -1740 PRINT LEFT$(WO$(0),WL); -1750 FOR W=1 TO 100:NEXT W -1760 GOSUB 110:PRINT WO$; -1770 FOR W=1 TO 100:NEXT W -1780 IF IN$="" THEN 1690 +1740 PRINTLEFT$(WO$(0),WL); +1750 FORW=1 TO100:NEXTW +1760 GOSUB110:PRINTWO$; +1770 FORW=1 TO100:NEXTW +1780 IFIN$="" THEN1690 1790 RETURN 1800 REM DRUK SPATIEBALK -1810 HO=0:VE=20:GOSUB 110 -1820 PRINT L2$ -1830 VE=22:GOSUB 110 -1840 PRINT L0$ -1850 GOSUB 110:PRINT "Druk op de spatiebalk... "; -1860 GOSUB 210:IF IN$<>" " THEN 1860 +1810 HO=0:VE=20:GOSUB110 +1820 PRINTL2$ +1830 VE=22:GOSUB110 +1840 PRINTL0$ +1850 GOSUB110:PRINT"Druk op de spatiebalk... "; +1860 GOSUB210:IFIN$<>" " THEN1860 1870 RETURN 1880 REM MKV WISSEN -1890 HO=0:FOR VE=8 TO 22 -1900 IF VE=20 THEN 1920 -1910 GOSUB 110:PRINT L0$ -1920 NEXT VE:RETURN +1890 HO=0:FORVE=8 TO22 +1900 IFVE=20 THEN1920 +1910 GOSUB110:PRINTL0$ +1920 NEXTVE:RETURN 1930 REM KEUZE 1 -1940 HO=0:VE=8:GOSUB 110 +1940 HO=0:VE=8:GOSUB110 1950 WO$=WO$(N):WL=LEN(WO$) -1960 IF ASC(RIGHT$(WO$,1))<65 THEN WO$=LEFT$(WO$,WL-1) -1970 PRINT "WAT IS: '";WO$;"' ?" +1960 IFASC(RIGHT$(WO$,1))<65 THENWO$=LEFT$(WO$,WL-1) +1970 PRINT"WAT IS: '";WO$;"' ?" 1980 CT=1:CN=0:S=0 1990 HO=0:VE=10:J=1 -2000 FOR I=1 TO B -2010 IF WS$(I)="" THEN 2060 -2020 SR=J:GOSUB 310:GOSUB 110 -2030 PRINT SR$;") ";WS$(I) +2000 FORI=1 TOB +2010 IFWS$(I)="" THEN2060 +2020 SR=J:GOSUB310:GOSUB110 +2030 PRINTSR$;") ";WS$(I) 2040 J=J+1:VE=VE+2 -2050 IF (J=INT((B-A)/2+.5)+1) AND(J>3) THEN HO=19:VE=10 -2060 NEXT I -2070 GOSUB 1670 -2080 IF S=1 THEN RETURN -2090 IF S=2 THEN GOSUB 6650:GOTO 1940 -2100 IF (A=0) OR(IN=0) THEN 2140 -2110 FOR I=1 TO C1 -2120 IF WS$(I)="" THEN IN=IN+1 -2130 NEXT I -2140 IF (IN<1) OR(IN>B) THEN 2070 +2050 IF(J=INT((B-A)/2+.5)+1) AND(J>3) THENHO=19:VE=10 +2060 NEXTI +2070 GOSUB1670 +2080 IFS=1 THENRETURN +2090 IFS=2 THENGOSUB6650:GOTO1940 +2100 IF(A=0) OR(IN=0) THEN2140 +2110 FORI=1 TOC1 +2120 IFWS$(I)="" THENIN=IN+1 +2130 NEXTI +2140 IF(IN<1) OR(IN>B) THEN2070 2150 AV=AV+1:V(C1,0)=V(C1,0)+1 -2160 IF IN=C1 THEN GOSUB 1590:RETURN -2170 F=F+1:IF NV>1 THEN F=2 -2180 IF F=2 THEN GOSUB 2270:RETURN -2190 GOSUB 2210:GOTO 2070 +2160 IFIN=C1 THENGOSUB1590:RETURN +2170 F=F+1:IFNV>1 THENF=2 +2180 IFF=2 THENGOSUB2270:RETURN +2190 GOSUB2210:GOTO2070 2200 REM FOUT -2210 HO=0:VE=22:GOSUB 110 -2220 PRINT "Niet goed. Je krijgt nog een kans."; -2230 FOR W=1 TO 2000:NEXT W -2240 GOSUB 110:PRINT L0$ +2210 HO=0:VE=22:GOSUB110 +2220 PRINT"Niet goed. Je krijgt nog een kans."; +2230 FORW=1 TO2000:NEXTW +2240 GOSUB110:PRINTL0$ 2250 AV=AV-1:V(C1,0)=V(C1,0)-1:RETURN 2260 REM WEER FOUT -2270 GOSUB 1890 -2280 HO=0:VE=8:GOSUB 110 -2290 PRINT "Je antwoord was helaas niet goed." +2270 GOSUB1890 +2280 HO=0:VE=8:GOSUB110 +2290 PRINT"Je antwoord was helaas niet goed." 2300 F(C1,0)=F(C1,0)+1:FT=FT+1:F=0 -2310 ON C1 GOSUB 3670,3740,3810,3880,3950,4020,4100,4190,4290 -2320 GOSUB 1810:RETURN +2310 ONC1 GOSUB3670,3740,3810,3880,3950,4020,4100,4190,4290 +2320 GOSUB1810:RETURN 2330 REM KEUZEHULP -2340 HO=0:VE=8:GOSUB 110 -2350 PRINT "'";WO$;"' is een:" +2340 HO=0:VE=8:GOSUB110 +2350 PRINT"'";WO$;"' is een:" 2360 S=0:RETURN 2370 REM KEUZEHULP 2380 AV=AV+1:V(C1,C2)=V(C1,C2)+1 -2390 IF IN=C2 THEN GOSUB 1590:RETURN -2400 GOSUB 3070:RETURN +2390 IFIN=C2 THENGOSUB1590:RETURN +2400 GOSUB3070:RETURN 2410 REM KEUZE 2.1 -2420 GOSUB 2340 -2430 PRINT :PRINT "1) Bepaald lidwoord" -2440 PRINT :PRINT "2) Onbepaald lidwoord" -2450 GOSUB 1670 -2460 IF S=1 THEN RETURN -2470 IF S=2 THEN GOSUB 6650:GOTO 2420 -2480 IF (IN<1) OR(IN>2) THEN 2450 -2490 GOSUB 2380:RETURN +2420 GOSUB2340 +2430 PRINT:PRINT"1) Bepaald lidwoord" +2440 PRINT:PRINT"2) Onbepaald lidwoord" +2450 GOSUB1670 +2460 IFS=1 THENRETURN +2470 IFS=2 THENGOSUB6650:GOTO2420 +2480 IF(IN<1) OR(IN>2) THEN2450 +2490 GOSUB2380:RETURN 2500 REM KEUZE 2.2 -2510 GOSUB 2340 -2520 PRINT :PRINT "1) Zelfstandig naamwoord" -2530 PRINT :PRINT "2) Bijvoeglijk naamwoord" -2540 GOSUB 1670 -2550 IF S=1 THEN RETURN -2560 IF S=2 THEN GOSUB 6650:GOTO 2510 -2570 IF (IN<1) OR(IN>2) THEN 2540 -2580 GOSUB 2380:RETURN +2510 GOSUB2340 +2520 PRINT:PRINT"1) Zelfstandig naamwoord" +2530 PRINT:PRINT"2) Bijvoeglijk naamwoord" +2540 GOSUB1670 +2550 IFS=1 THENRETURN +2560 IFS=2 THENGOSUB6650:GOTO2510 +2570 IF(IN<1) OR(IN>2) THEN2540 +2580 GOSUB2380:RETURN 2590 REM KEUZE 2.3 -2600 GOSUB 2340 -2610 PRINT :PRINT "1) Hoofdtelwoord" -2620 PRINT :PRINT "2) Rangtelwoord" -2630 GOSUB 1670 -2640 IF S=1 THEN RETURN -2650 IF S=2 THEN GOSUB 6650:GOTO 2600 -2660 IF (IN<1) OR(IN>2) THEN 2630 -2670 GOSUB 2380:RETURN +2600 GOSUB2340 +2610 PRINT:PRINT"1) Hoofdtelwoord" +2620 PRINT:PRINT"2) Rangtelwoord" +2630 GOSUB1670 +2640 IFS=1 THENRETURN +2650 IFS=2 THENGOSUB6650:GOTO2600 +2660 IF(IN<1) OR(IN>2) THEN2630 +2670 GOSUB2380:RETURN 2680 REM KEUZE 2.4 -2690 GOSUB 2340 -2700 PRINT :PRINT "1) Koppelwerkwoord" -2710 PRINT :PRINT "2) Hulpwerkwoord" -2720 PRINT :PRINT "3) Zelfstandig werkwoord" -2730 GOSUB 1670 -2740 IF S=1 THEN RETURN -2750 IF S=2 THEN GOSUB 6650:GOTO 2690 -2760 IF (IN<1) OR(IN>3) THEN 2730 -2770 GOSUB 2380:RETURN +2690 GOSUB2340 +2700 PRINT:PRINT"1) Koppelwerkwoord" +2710 PRINT:PRINT"2) Hulpwerkwoord" +2720 PRINT:PRINT"3) Zelfstandig werkwoord" +2730 GOSUB1670 +2740 IFS=1 THENRETURN +2750 IFS=2 THENGOSUB6650:GOTO2690 +2760 IF(IN<1) OR(IN>3) THEN2730 +2770 GOSUB2380:RETURN 2780 REM KEUZE 2.5 -2790 HO=0:VE=8:GOSUB 110:S=0 -2800 PRINT "Het voornaamwoord: '";WO$;"' is:" +2790 HO=0:VE=8:GOSUB110:S=0 +2800 PRINT"Het voornaamwoord: '";WO$;"' is:" 2810 CT=1:CN=0 2820 HO=0:VE=11:J=1 -2830 FOR I=1 TO 8 -2840 IF W5$(I)="" THEN 2900 -2850 SR=J:GOSUB 310:GOSUB 110 -2860 PRINT SR$;") ";W5$(I) +2830 FORI=1 TO8 +2840 IFW5$(I)="" THEN2900 +2850 SR=J:GOSUB310:GOSUB110 +2860 PRINTSR$;") ";W5$(I) 2870 J=J+1:VE=VE+2 -2880 IF (NV=2) AND(J=4) THEN HO=19:VE=11 -2890 IF (NV=3) AND(J=5) THEN HO=19:VE=11 -2900 NEXT I -2910 GOSUB 1670 -2920 IF S=1 THEN RETURN -2930 IF S=2 THEN GOSUB 6650:GOTO 2790 -2940 IF (IN<1) OR(IN>8) THEN 2910 -2950 IF W5$(IN)="" THEN 2910 -2960 GOSUB 2380:RETURN +2880 IF(NV=2) AND(J=4) THENHO=19:VE=11 +2890 IF(NV=3) AND(J=5) THENHO=19:VE=11 +2900 NEXTI +2910 GOSUB1670 +2920 IFS=1 THENRETURN +2930 IFS=2 THENGOSUB6650:GOTO2790 +2940 IF(IN<1) OR(IN>8) THEN2910 +2950 IFW5$(IN)="" THEN2910 +2960 GOSUB2380:RETURN 2970 REM KEUZE 2.7 -2980 GOSUB 2340 -2990 PRINT :PRINT "1) Nevenschikkend voegwoord" -3000 PRINT :PRINT "2) Onderschikkend voegwoord" -3010 GOSUB 1670 -3020 IF S=1 THEN RETURN -3030 IF S=2 THEN GOSUB 6650:GOTO 2980 -3040 IF (IN<1) OR(IN>2) THEN 3010 -3050 GOSUB 2380:RETURN +2980 GOSUB2340 +2990 PRINT:PRINT"1) Nevenschikkend voegwoord" +3000 PRINT:PRINT"2) Onderschikkend voegwoord" +3010 GOSUB1670 +3020 IFS=1 THENRETURN +3030 IFS=2 THENGOSUB6650:GOTO2980 +3040 IF(IN<1) OR(IN>2) THEN3010 +3050 GOSUB2380:RETURN 3060 REM KEUZE 2 FOUT -3070 GOSUB 1890 -3080 HO=0:VE=8:GOSUB 110 -3090 PRINT "Je antwoord is helaas niet goed.":PRINT +3070 GOSUB1890 +3080 HO=0:VE=8:GOSUB110 +3090 PRINT"Je antwoord is helaas niet goed.":PRINT 3100 F(C1,C2)=F(C1,C2)+1:FT=FT+1 -3110 ON C1 GOSUB 4370,4470,4630,4810,5010,270,5570 -3120 GOSUB 1810:RETURN +3110 ONC1 GOSUB4370,4470,4630,4810,5010,270,5570 +3120 GOSUB1810:RETURN 3130 REM KEUZEHULP 3140 AV=AV+1:V(0,C1)=V(0,C1)+1 -3150 IF IN=C3 THEN GOSUB 1590:RETURN -3160 GOSUB 3600:RETURN +3150 IFIN=C3 THENGOSUB1590:RETURN +3160 GOSUB3600:RETURN 3170 REM KEUZE 3.3 -3180 HO=0:VE=8:GOSUB 110:S=0 -3190 PRINT "Het telwoord '";WO$;"' is:" -3200 PRINT :PRINT "1) Bepaald" -3210 PRINT :PRINT "2) Onbepaald" -3220 GOSUB 1670 -3230 IF S=1 THEN RETURN -3240 IF S=2 THEN GOSUB 6650:GOTO 3180 -3250 IF (IN<1) OR(IN>2) THEN 3220 -3260 GOSUB 3140:RETURN +3180 HO=0:VE=8:GOSUB110:S=0 +3190 PRINT"Het telwoord '";WO$;"' is:" +3200 PRINT:PRINT"1) Bepaald" +3210 PRINT:PRINT"2) Onbepaald" +3220 GOSUB1670 +3230 IFS=1 THENRETURN +3240 IFS=2 THENGOSUB6650:GOTO3180 +3250 IF(IN<1) OR(IN>2) THEN3220 +3260 GOSUB3140:RETURN 3270 REM KEUZE 3.4 -3280 HO=0:VE=8:GOSUB 110:S=0 -3290 PRINT "In welke vorm staat '";WO$;"'?" -3300 PRINT :PRINT "1) Infinitief" -3310 PRINT :PRINT "2) Persoonsvorm" -3320 PRINT :PRINT "3) Deelwoordvorm" -3330 GOSUB 1670 -3340 IF S=1 THEN RETURN -3350 IF S=2 THEN GOSUB 6650:GOTO 3280 -3360 IF (IN<1) OR(IN>3) THEN 3330 -3370 GOSUB 3140:RETURN +3280 HO=0:VE=8:GOSUB110:S=0 +3290 PRINT"In welke vorm staat '";WO$;"'?" +3300 PRINT:PRINT"1) Infinitief" +3310 PRINT:PRINT"2) Persoonsvorm" +3320 PRINT:PRINT"3) Deelwoordvorm" +3330 GOSUB1670 +3340 IFS=1 THENRETURN +3350 IFS=2 THENGOSUB6650:GOTO3280 +3360 IF(IN<1) OR(IN>3) THEN3330 +3370 GOSUB3140:RETURN 3380 REM KEUZE 3.5 -3390 HO=0:VE=8:GOSUB 110:S=0 -3400 IF C2>1 THEN 3510 -3410 PRINT "'";WO$;"' is:" -3420 PRINT :PRINT " ENKELVOUD = ev MEERVOUD = mv" -3430 PRINT :PRINT "1) 1e persoon ev. 4) 1e persoon mv." -3440 PRINT :PRINT "2) 2e persoon ev. 5) 2e persoon mv." -3450 PRINT :PRINT "3) 3e persoon ev. 6) 3e persoon mv." -3460 GOSUB 1670 -3470 IF S=1 THEN RETURN -3480 IF S=2 THEN GOSUB 6650:GOTO 3390 -3490 IF (IN<1) OR(IN>6) THEN 3460 -3500 GOSUB 3140:RETURN -3510 PRINT "'";WO$;"' wordt hier:" -3520 PRINT :PRINT "1) bijvoeglijk gebruikt" -3530 PRINT :PRINT "2) zelfstandig gebruikt" -3540 GOSUB 1670 -3550 IF S=1 THEN RETURN -3560 IF S=2 THEN GOSUB 6650:GOTO 3390 -3570 IF (IN<1) OR(IN>2) THEN 3540 -3580 GOSUB 3140:RETURN +3390 HO=0:VE=8:GOSUB110:S=0 +3400 IFC2>1 THEN3510 +3410 PRINT"'";WO$;"' is:" +3420 PRINT:PRINT" ENKELVOUD = ev MEERVOUD = mv" +3430 PRINT:PRINT"1) 1e persoon ev. 4) 1e persoon mv." +3440 PRINT:PRINT"2) 2e persoon ev. 5) 2e persoon mv." +3450 PRINT:PRINT"3) 3e persoon ev. 6) 3e persoon mv." +3460 GOSUB1670 +3470 IFS=1 THENRETURN +3480 IFS=2 THENGOSUB6650:GOTO3390 +3490 IF(IN<1) OR(IN>6) THEN3460 +3500 GOSUB3140:RETURN +3510 PRINT"'";WO$;"' wordt hier:" +3520 PRINT:PRINT"1) bijvoeglijk gebruikt" +3530 PRINT:PRINT"2) zelfstandig gebruikt" +3540 GOSUB1670 +3550 IFS=1 THENRETURN +3560 IFS=2 THENGOSUB6650:GOTO3390 +3570 IF(IN<1) OR(IN>2) THEN3540 +3580 GOSUB3140:RETURN 3590 REM KEUZE 3 FOUT -3600 GOSUB 1890 -3610 HO=0:VE=8:GOSUB 110 -3620 PRINT "Je antwoord is helaas fout.":PRINT +3600 GOSUB1890 +3610 HO=0:VE=8:GOSUB110 +3620 PRINT"Je antwoord is helaas fout.":PRINT 3630 F(0,C1)=F(0,C1)+1:FT=FT+1 -3640 ON C1-2 GOSUB 5710,5890,6110 -3650 GOSUB 1810:RETURN +3640 ONC1-2 GOSUB5710,5890,6110 +3650 GOSUB1810:RETURN 3660 REM UITLEG 1 -3670 PRINT :PRINT "'";WO$;"' is een lidwoord." -3680 PRINT :PRINT "Een lidwoord komt alleen voor in" -3690 PRINT :PRINT "combinatie met een zelfst. naamwoord." -3700 PRINT :PRINT "Als lidwoorden gebruiken we:" -3710 PRINT :PRINT "DE, HET en EEN." +3670 PRINT:PRINT"'";WO$;"' is een lidwoord." +3680 PRINT:PRINT"Een lidwoord komt alleen voor in" +3690 PRINT:PRINT"combinatie met een zelfst. naamwoord." +3700 PRINT:PRINT"Als lidwoorden gebruiken we:" +3710 PRINT:PRINT"DE, HET en EEN." 3720 RETURN 3730 REM UITLEG 2 -3740 PRINT :PRINT "'";WO$;"' is een naamwoord." -3750 PRINT :PRINT "We onderscheiden:" -3760 PRINT :PRINT "zelfstandige naamwoorden" -3770 PRINT :PRINT "en" -3780 PRINT :PRINT "bijvoeglijke naamwoorden." +3740 PRINT:PRINT"'";WO$;"' is een naamwoord." +3750 PRINT:PRINT"We onderscheiden:" +3760 PRINT:PRINT"zelfstandige naamwoorden" +3770 PRINT:PRINT"en" +3780 PRINT:PRINT"bijvoeglijke naamwoorden." 3790 RETURN 3800 REM UITLEG 3 -3810 PRINT :PRINT "'";WO$;"' is een telwoord." -3820 PRINT :PRINT "We onderscheiden:" -3830 PRINT :PRINT "hoofdtelwoorden" -3840 PRINT :PRINT "en" -3850 PRINT :PRINT "rangtelwoorden." +3810 PRINT:PRINT"'";WO$;"' is een telwoord." +3820 PRINT:PRINT"We onderscheiden:" +3830 PRINT:PRINT"hoofdtelwoorden" +3840 PRINT:PRINT"en" +3850 PRINT:PRINT"rangtelwoorden." 3860 RETURN 3870 REM UITLEG 4 -3880 PRINT :PRINT "'";WO$;"' is een werkwoord." -3890 PRINT :PRINT "We onderscheiden:" -3900 PRINT :PRINT "1. koppelwerkwoorden." -3910 PRINT :PRINT "2. hulpwerkwoorden." -3920 PRINT :PRINT "3. zelfstandige werkwoorden." +3880 PRINT:PRINT"'";WO$;"' is een werkwoord." +3890 PRINT:PRINT"We onderscheiden:" +3900 PRINT:PRINT"1. koppelwerkwoorden." +3910 PRINT:PRINT"2. hulpwerkwoorden." +3920 PRINT:PRINT"3. zelfstandige werkwoorden." 3930 RETURN 3940 REM UITLEG 5 -3950 PRINT :PRINT "'";WO$;"' is een voornaamwoord." -3960 PRINT :PRINT "Een voornaamwoord staat in de plaats" -3970 PRINT :PRINT "van een zelfstandig naamwoord." -3980 PRINT :PRINT "Bv: De les is moeilijk." -3990 PRINT :PRINT " Dit is moeilijk." +3950 PRINT:PRINT"'";WO$;"' is een voornaamwoord." +3960 PRINT:PRINT"Een voornaamwoord staat in de plaats" +3970 PRINT:PRINT"van een zelfstandig naamwoord." +3980 PRINT:PRINT"Bv: De les is moeilijk." +3990 PRINT:PRINT" Dit is moeilijk." 4000 RETURN 4010 REM UITLEG 6 -4020 PRINT :PRINT "'";WO$;"' is een voorzetsel." -4030 PRINT :PRINT "De meeste voorzetsels kun je plaatsen" -4040 PRINT :PRINT "op de puntjes in: .. het hok (bv. op)." -4050 PRINT :PRINT "'Vaste' voorzetsels hebben een sterke" -4060 PRINT :PRINT "binding met 'n werkwoord: houden van." -4070 PRINT " ---" +4020 PRINT:PRINT"'";WO$;"' is een voorzetsel." +4030 PRINT:PRINT"De meeste voorzetsels kun je plaatsen" +4040 PRINT:PRINT"op de puntjes in: .. het hok (bv. op)." +4050 PRINT:PRINT"'Vaste' voorzetsels hebben een sterke" +4060 PRINT:PRINT"binding met 'n werkwoord: houden van." +4070 PRINT" ---" 4080 RETURN 4090 REM UITLEG 7 -4100 PRINT :PRINT "'";WO$;"' is een voegwoord." -4110 PRINT :PRINT "Voegwoorden voegen woorden of zinnen" -4120 PRINT :PRINT "aan elkaar. Voorbeelden:" -4130 PRINT :PRINT "Jan en Piet zijn broers." -4140 PRINT " ---" -4150 PRINT "Ik ging naar bed, omdat ik moe was." -4160 PRINT " -----" +4100 PRINT:PRINT"'";WO$;"' is een voegwoord." +4110 PRINT:PRINT"Voegwoorden voegen woorden of zinnen" +4120 PRINT:PRINT"aan elkaar. Voorbeelden:" +4130 PRINT:PRINT"Jan en Piet zijn broers." +4140 PRINT" ---" +4150 PRINT"Ik ging naar bed, omdat ik moe was." +4160 PRINT" -----" 4170 RETURN 4180 REM UITLEG 8 -4190 PRINT :PRINT "'";WO$;"' is een bijwoord." -4200 PRINT :PRINT "Het geeft vaak 'n bijzonderheid van een" -4210 PRINT :PRINT "werkwoord : ik lees snel." -4220 PRINT " ----" -4230 PRINT "bijv. naamwoord: hij is zeer dapper." -4240 PRINT " ----" -4250 PRINT "ander bijwoord : ik lees heel snel." -4260 PRINT " ----" +4190 PRINT:PRINT"'";WO$;"' is een bijwoord." +4200 PRINT:PRINT"Het geeft vaak 'n bijzonderheid van een" +4210 PRINT:PRINT"werkwoord : ik lees snel." +4220 PRINT" ----" +4230 PRINT"bijv. naamwoord: hij is zeer dapper." +4240 PRINT" ----" +4250 PRINT"ander bijwoord : ik lees heel snel." +4260 PRINT" ----" 4270 RETURN 4280 REM UITLEG 9 -4290 PRINT :PRINT "'";WO$;"' is 'n tussenwerpsel." -4300 PRINT :PRINT "Een tussenwerpsel is een uitroep van:" -4310 PRINT :PRINT "pijn, schrik, afkeer, spijt, enz." -4320 PRINT :PRINT "Voorbeelden:(au, hu, bah, sorry, enz.)" -4330 PRINT :PRINT "Klanknabootsing: 'Zoef', weg was hij." -4340 PRINT " ----" +4290 PRINT:PRINT"'";WO$;"' is 'n tussenwerpsel." +4300 PRINT:PRINT"Een tussenwerpsel is een uitroep van:" +4310 PRINT:PRINT"pijn, schrik, afkeer, spijt, enz." +4320 PRINT:PRINT"Voorbeelden:(au, hu, bah, sorry, enz.)" +4330 PRINT:PRINT"Klanknabootsing: 'Zoef', weg was hij." +4340 PRINT" ----" 4350 RETURN 4360 REM UITLEG 2.1 -4370 IF C2=2 THEN 4420 -4380 PRINT "'";WO$;"' is een bepaald lidwoord." -4390 PRINT :PRINT "De bepaalde lidwoorden zijn:" -4400 PRINT :PRINT "DE en HET." +4370 IFC2=2 THEN4420 +4380 PRINT"'";WO$;"' is een bepaald lidwoord." +4390 PRINT:PRINT"De bepaalde lidwoorden zijn:" +4400 PRINT:PRINT"DE en HET." 4410 RETURN -4420 PRINT "'";WO$;"' is 't onbepaalde lidwoord." -4430 PRINT :PRINT "Andere onbepaalde lidwoorden" -4440 PRINT :PRINT "hebben we niet." +4420 PRINT"'";WO$;"' is 't onbepaalde lidwoord." +4430 PRINT:PRINT"Andere onbepaalde lidwoorden" +4440 PRINT:PRINT"hebben we niet." 4450 RETURN 4460 REM UITLEG2.2 -4470 IF C2=2 THEN 4540 -4480 PRINT "'";WO$;"' is 'n zelfst. naamw." -4490 PRINT :PRINT "Zelfstandige naamwoorden zijn de namen" -4500 PRINT :PRINT "van mensen, dieren en dingen." -4510 PRINT :PRINT "Ook van 'onzichtbare dingen'." -4520 PRINT :PRINT "Bv. jongen, kat, hout, verstand." +4470 IFC2=2 THEN4540 +4480 PRINT"'";WO$;"' is 'n zelfst. naamw." +4490 PRINT:PRINT"Zelfstandige naamwoorden zijn de namen" +4500 PRINT:PRINT"van mensen, dieren en dingen." +4510 PRINT:PRINT"Ook van 'onzichtbare dingen'." +4520 PRINT:PRINT"Bv. jongen, kat, hout, verstand." 4530 RETURN -4540 PRINT "'";WO$;"'is 'n bijv. naamw." -4550 PRINT :PRINT "Bijvoeglijke naamwoorden noemen" -4560 PRINT :PRINT "'n bijzonderheid van 'n zelfst. naamw." -4570 PRINT :PRINT "Bv. Een dure computer." -4580 PRINT " ----" -4590 PRINT " De computer is duur." -4600 PRINT " ----" +4540 PRINT"'";WO$;"'is 'n bijv. naamw." +4550 PRINT:PRINT"Bijvoeglijke naamwoorden noemen" +4560 PRINT:PRINT"'n bijzonderheid van 'n zelfst. naamw." +4570 PRINT:PRINT"Bv. Een dure computer." +4580 PRINT" ----" +4590 PRINT" De computer is duur." +4600 PRINT" ----" 4610 RETURN 4620 REM UITLEG 2.3 -4630 IF C2=2 THEN 4720 -4640 PRINT "'";WO$;"' is 'n hoofdtelwoord." -4650 PRINT :PRINT "Hoofdtelwoorden noemen het aantal," -4660 PRINT :PRINT "dat je van iets hebt." -4670 PRINT :PRINT "Bv. Ik heb drie balpennen." -4680 PRINT " ----" -4690 PRINT " Ik heb weinig geld." -4700 PRINT " ------" +4630 IFC2=2 THEN4720 +4640 PRINT"'";WO$;"' is 'n hoofdtelwoord." +4650 PRINT:PRINT"Hoofdtelwoorden noemen het aantal," +4660 PRINT:PRINT"dat je van iets hebt." +4670 PRINT:PRINT"Bv. Ik heb drie balpennen." +4680 PRINT" ----" +4690 PRINT" Ik heb weinig geld." +4700 PRINT" ------" 4710 RETURN -4720 PRINT "'";WO$;"'is een rangtelwoord." -4730 PRINT :PRINT "Rangtelwoorden geven de plaats van iets" -4740 PRINT :PRINT "of iemand in een reeks aan." -4750 PRINT :PRINT "Bv. De tweede dag van de week." -4760 PRINT " ------" -4770 PRINT " Dat is de zoveelste keer." -4780 PRINT " ---------" +4720 PRINT"'";WO$;"'is een rangtelwoord." +4730 PRINT:PRINT"Rangtelwoorden geven de plaats van iets" +4740 PRINT:PRINT"of iemand in een reeks aan." +4750 PRINT:PRINT"Bv. De tweede dag van de week." +4760 PRINT" ------" +4770 PRINT" Dat is de zoveelste keer." +4780 PRINT" ---------" 4790 RETURN 4800 REM UITLEG 2.4 -4810 ON C2 GOTO 4820,4880,4940 -4820 PRINT "'";WO$;"' is 'n koppelwerkwoord." -4830 PRINT :PRINT "De koppelwerkwoorden zijn:" -4840 PRINT :PRINT "zijn, worden, blijven, blijken," -4850 PRINT :PRINT "lijken, schijnen, heten, dunken" -4860 PRINT :PRINT "en voorkomen." +4810 ONC2 GOTO4820,4880,4940 +4820 PRINT"'";WO$;"' is 'n koppelwerkwoord." +4830 PRINT:PRINT"De koppelwerkwoorden zijn:" +4840 PRINT:PRINT"zijn, worden, blijven, blijken," +4850 PRINT:PRINT"lijken, schijnen, heten, dunken" +4860 PRINT:PRINT"en voorkomen." 4870 RETURN -4880 PRINT "'";WO$;"' is 'n hulpwerkwoord." -4890 PRINT :PRINT "Als in 'n zin meer dan 1 werkwoord zit," -4900 PRINT :PRINT "dan is de persoonsvorm altijd een" -4910 PRINT :PRINT "hulpwerkwoord. In een zin kunnen" -4920 PRINT :PRINT "wel meerdere hulpwerkwoorden zitten." +4880 PRINT"'";WO$;"' is 'n hulpwerkwoord." +4890 PRINT:PRINT"Als in 'n zin meer dan 1 werkwoord zit," +4900 PRINT:PRINT"dan is de persoonsvorm altijd een" +4910 PRINT:PRINT"hulpwerkwoord. In een zin kunnen" +4920 PRINT:PRINT"wel meerdere hulpwerkwoorden zitten." 4930 RETURN -4940 PRINT "'";WO$;"' is 'n zelfst. werkw." -4950 PRINT :PRINT "Een werkwoord dat in zijn eentje" -4960 PRINT :PRINT "een werkwoordelijk gezegde kan" -4970 PRINT :PRINT "vormen heet 'n zelfst. werkwoord." -4980 PRINT :PRINT "Het heeft duidelijk 'n betekenis." +4940 PRINT"'";WO$;"' is 'n zelfst. werkw." +4950 PRINT:PRINT"Een werkwoord dat in zijn eentje" +4960 PRINT:PRINT"een werkwoordelijk gezegde kan" +4970 PRINT:PRINT"vormen heet 'n zelfst. werkwoord." +4980 PRINT:PRINT"Het heeft duidelijk 'n betekenis." 4990 RETURN 5000 REM UITLEG 2.5 -5010 ON C2 GOTO 5020,5080,5130,5190,5280,5340,5420,5500 -5020 PRINT "'";WO$;"' is 'n persoonlijk voornw." -5030 PRINT :PRINT "In de onderwerpsvorm kennen we o.a." -5040 PRINT :PRINT "Ik, jij, hij, zij, het, wij, jullie, U." -5050 PRINT :PRINT "In de voorwerpsvorm kennen we o.a." -5060 PRINT :PRINT "Me, jou, hem, haar, ons, jullie, U, hen" +5010 ONC2 GOTO5020,5080,5130,5190,5280,5340,5420,5500 +5020 PRINT"'";WO$;"' is 'n persoonlijk voornw." +5030 PRINT:PRINT"In de onderwerpsvorm kennen we o.a." +5040 PRINT:PRINT"Ik, jij, hij, zij, het, wij, jullie, U." +5050 PRINT:PRINT"In de voorwerpsvorm kennen we o.a." +5060 PRINT:PRINT"Me, jou, hem, haar, ons, jullie, U, hen" 5070 RETURN -5080 PRINT "'";WO$;"' is 'n bezittelijk voornw." -5090 PRINT :PRINT "Het geeft aan van wie iets is." -5100 PRINT :PRINT "Voorbeelden: mijn, jouw, zijn, haar," -5110 PRINT :PRINT "ons, jullie, uw en hun." +5080 PRINT"'";WO$;"' is 'n bezittelijk voornw." +5090 PRINT:PRINT"Het geeft aan van wie iets is." +5100 PRINT:PRINT"Voorbeelden: mijn, jouw, zijn, haar," +5110 PRINT:PRINT"ons, jullie, uw en hun." 5120 RETURN -5130 PRINT "'";WO$;"'is 'n aanwijzend voornw." -5140 PRINT :PRINT "De meest voorkomende zijn:" -5150 PRINT :PRINT "die, dit, dat en deze." -5160 PRINT :PRINT "Andere voorbeelden: zo'n, zulke," -5170 PRINT :PRINT "dergelijke, dezelfde, degene, enz." +5130 PRINT"'";WO$;"'is 'n aanwijzend voornw." +5140 PRINT:PRINT"De meest voorkomende zijn:" +5150 PRINT:PRINT"die, dit, dat en deze." +5160 PRINT:PRINT"Andere voorbeelden: zo'n, zulke," +5170 PRINT:PRINT"dergelijke, dezelfde, degene, enz." 5180 RETURN -5190 PRINT "'";WO$;"' is 'n vragend voornw." -5200 PRINT :PRINT "Het vraagt naar 'n zelfst. naamwoord." -5210 PRINT :PRINT "Bv. Wat zie ik? (Een auto)" -5220 PRINT " ---" -5230 PRINT " Wie loopt daar? (Vader)" -5240 PRINT " ---" -5250 PRINT "Pas op voor vragende bijwoorden!!" -5260 PRINT " ----------" +5190 PRINT"'";WO$;"' is 'n vragend voornw." +5200 PRINT:PRINT"Het vraagt naar 'n zelfst. naamwoord." +5210 PRINT:PRINT"Bv. Wat zie ik? (Een auto)" +5220 PRINT" ---" +5230 PRINT" Wie loopt daar? (Vader)" +5240 PRINT" ---" +5250 PRINT"Pas op voor vragende bijwoorden!!" +5260 PRINT" ----------" 5270 RETURN -5280 PRINT "'";WO$;"' is 'n onbepaald voornw." -5290 PRINT :PRINT "Het zelfst. naamw. waarvoor het in" -5300 PRINT :PRINT "de plaats staat blijft vaag." -5310 PRINT :PRINT "Bv. Men, (n)iemand, (n)iets, alles," -5320 PRINT :PRINT "wat, ieder(een), menig(een), ene, enz." +5280 PRINT"'";WO$;"' is 'n onbepaald voornw." +5290 PRINT:PRINT"Het zelfst. naamw. waarvoor het in" +5300 PRINT:PRINT"de plaats staat blijft vaag." +5310 PRINT:PRINT"Bv. Men, (n)iemand, (n)iets, alles," +5320 PRINT:PRINT"wat, ieder(een), menig(een), ene, enz." 5330 RETURN -5340 PRINT "'";WO$;"' is 'n betrekkelijk voornw." -5350 PRINT :PRINT "Het heeft betrekking op iets dat al" -5360 PRINT :PRINT "eerder genoemd is. Voorbeeld:" -5370 PRINT :PRINT "De jas die daar hangt, is van mij." -5380 PRINT " ---" -5390 PRINT "'die' heeft betrekking op 'de jas'." -5400 PRINT " ---" +5340 PRINT"'";WO$;"' is 'n betrekkelijk voornw." +5350 PRINT:PRINT"Het heeft betrekking op iets dat al" +5360 PRINT:PRINT"eerder genoemd is. Voorbeeld:" +5370 PRINT:PRINT"De jas die daar hangt, is van mij." +5380 PRINT" ---" +5390 PRINT"'die' heeft betrekking op 'de jas'." +5400 PRINT" ---" 5410 RETURN -5420 PRINT "'";WO$;"' is 'n wederkerend voornw." -5430 PRINT :PRINT "Advies: Zet de zin in de derde persoon." -5440 PRINT :PRINT "Het wederkerend vnw. wordt dan 'zich'." -5450 PRINT :PRINT "Bv. Ik schaam me." -5460 PRINT " --" -5470 PRINT " Hij schaamt zich." -5480 PRINT " ----" +5420 PRINT"'";WO$;"' is 'n wederkerend voornw." +5430 PRINT:PRINT"Advies: Zet de zin in de derde persoon." +5440 PRINT:PRINT"Het wederkerend vnw. wordt dan 'zich'." +5450 PRINT:PRINT"Bv. Ik schaam me." +5460 PRINT" --" +5470 PRINT" Hij schaamt zich." +5480 PRINT" ----" 5490 RETURN -5500 PRINT "'";WO$;"' is 'n wederkerig voornw." -5510 PRINT :PRINT "Het enige wederkerige voornaamw. is:" -5520 PRINT :PRINT "ELKAAR." -5530 PRINT :PRINT "Andere vormen hiervan zijn:" -5540 PRINT :PRINT "MEKAAR en ELKANDER." +5500 PRINT"'";WO$;"' is 'n wederkerig voornw." +5510 PRINT:PRINT"Het enige wederkerige voornaamw. is:" +5520 PRINT:PRINT"ELKAAR." +5530 PRINT:PRINT"Andere vormen hiervan zijn:" +5540 PRINT:PRINT"MEKAAR en ELKANDER." 5550 RETURN 5560 REM UITLEG 2.7 -5570 IF C2=2 THEN 5640 -5580 PRINT "'";WO$;"' is 'n nevenschikkend voegwoord." -5590 PRINT :PRINT "Het verbindt twee gelijksoortige zinnen" -5600 PRINT :PRINT "(twee hoofdzinnen of twee bijzinnen)" -5610 PRINT :PRINT "met elkaar. De meest voorkomende zijn:" -5620 PRINT :PRINT "EN, MAAR, OF, WANT." +5570 IFC2=2 THEN5640 +5580 PRINT"'";WO$;"' is 'n nevenschikkend voegwoord." +5590 PRINT:PRINT"Het verbindt twee gelijksoortige zinnen" +5600 PRINT:PRINT"(twee hoofdzinnen of twee bijzinnen)" +5610 PRINT:PRINT"met elkaar. De meest voorkomende zijn:" +5620 PRINT:PRINT"EN, MAAR, OF, WANT." 5630 RETURN -5640 PRINT "'";WO$;"' is 'n onderschikkend voegw." -5650 PRINT :PRINT "Het verbindt twee ongelijksoortige" -5660 PRINT :PRINT "zinnen (hoofd- en bijzin) met elkaar." -5670 PRINT :PRINT "De volgende komen veel voor: OMDAT," -5680 PRINT :PRINT "OPDAT, VOORDAT, ZODAT, NADAT, DAT." +5640 PRINT"'";WO$;"' is 'n onderschikkend voegw." +5650 PRINT:PRINT"Het verbindt twee ongelijksoortige" +5660 PRINT:PRINT"zinnen (hoofd- en bijzin) met elkaar." +5670 PRINT:PRINT"De volgende komen veel voor: OMDAT," +5680 PRINT:PRINT"OPDAT, VOORDAT, ZODAT, NADAT, DAT." 5690 RETURN 5700 REM UITLEG 3.3 -5710 IF C3=2 THEN 5800 -5720 PRINT "Het telwoord '";WO$;"' is bepaald," -5730 PRINT :PRINT "want het aantal of de plaats" -5740 PRINT :PRINT "in de reeks is precies bekend." -5750 PRINT :PRINT "Bv. Ik koop twee appels." -5760 PRINT " ----" -5770 PRINT " De eerste de beste." -5780 PRINT " ------" +5710 IFC3=2 THEN5800 +5720 PRINT"Het telwoord '";WO$;"' is bepaald," +5730 PRINT:PRINT"want het aantal of de plaats" +5740 PRINT:PRINT"in de reeks is precies bekend." +5750 PRINT:PRINT"Bv. Ik koop twee appels." +5760 PRINT" ----" +5770 PRINT" De eerste de beste." +5780 PRINT" ------" 5790 RETURN -5800 PRINT "Het telwoord '";WO$;"' is onbepaald," -5810 PRINT :PRINT "want je weet het aantal of de plaats" -5820 PRINT :PRINT "in de reeks niet precies." -5830 PRINT :PRINT "Bv. Ik eet veel snoep." -5840 PRINT " ----" -5850 PRINT " De middelste jongen ken ik." -5860 PRINT " ---------" +5800 PRINT"Het telwoord '";WO$;"' is onbepaald," +5810 PRINT:PRINT"want je weet het aantal of de plaats" +5820 PRINT:PRINT"in de reeks niet precies." +5830 PRINT:PRINT"Bv. Ik eet veel snoep." +5840 PRINT" ----" +5850 PRINT" De middelste jongen ken ik." +5860 PRINT" ---------" 5870 RETURN 5880 REM UITLEG 3.4 -5890 ON C3 GOTO 5900,5970,6030 -5900 PRINT "'";WO$;"' staat in de infinitief." -5910 PRINT :PRINT "Bij de infinitief staat altijd 'n werkw" -5920 PRINT " ------" -5930 PRINT "in de persoonsvorm. De infinitief" -5940 PRINT :PRINT "noemen we ook wel de onbepaalde wijs" -5950 PRINT :PRINT "of het hele werkwoord." +5890 ONC3 GOTO5900,5970,6030 +5900 PRINT"'";WO$;"' staat in de infinitief." +5910 PRINT:PRINT"Bij de infinitief staat altijd 'n werkw" +5920 PRINT" ------" +5930 PRINT"in de persoonsvorm. De infinitief" +5940 PRINT:PRINT"noemen we ook wel de onbepaalde wijs" +5950 PRINT:PRINT"of het hele werkwoord." 5960 RETURN -5970 PRINT "'";WO$;"' staat in de persoonsvorm," -5980 PRINT :PRINT "want aan '";WO$;"' kun je zien" -5990 PRINT :PRINT "of de zin in de tegenwoordige of in" -6000 PRINT :PRINT "de verleden tijd staat." -6010 PRINT :PRINT "Zie ook het programma 'Ontleden'." +5970 PRINT"'";WO$;"' staat in de persoonsvorm," +5980 PRINT:PRINT"want aan '";WO$;"' kun je zien" +5990 PRINT:PRINT"of de zin in de tegenwoordige of in" +6000 PRINT:PRINT"de verleden tijd staat." +6010 PRINT:PRINT"Zie ook het programma 'Ontleden'." 6020 RETURN -6030 PRINT "'";WO$;"' is 'n deelwoordvorm." -6040 PRINT :PRINT "Bij voltooide deelwoorden staat altijd" -6050 PRINT " ------" -6060 PRINT "'n vorm van 'hebben, zijn of worden'." -6070 PRINT :PRINT "Onvoltooide deelwoorden vorm je door" -6080 PRINT :PRINT "achter de infinitief 'd(e)' te zetten." +6030 PRINT"'";WO$;"' is 'n deelwoordvorm." +6040 PRINT:PRINT"Bij voltooide deelwoorden staat altijd" +6050 PRINT" ------" +6060 PRINT"'n vorm van 'hebben, zijn of worden'." +6070 PRINT:PRINT"Onvoltooide deelwoorden vorm je door" +6080 PRINT:PRINT"achter de infinitief 'd(e)' te zetten." 6090 RETURN 6100 REM UITLEG 3.5 -6110 IF C2>1 THEN 6190 -6120 SR=C3:IF C3>3 THEN SR=C3-3 -6130 GOSUB 310 -6140 PRINT "Het persoonlijk voornaamwoord '";WO$;"'" -6150 PRINT :PRINT "is ";SR$;"e persoon "; -6160 IF C3<4 THEN PRINT "enkelvoud." -6170 IF C3>3 THEN PRINT "meervoud." +6110 IFC2>1 THEN6190 +6120 SR=C3:IFC3>3 THENSR=C3-3 +6130 GOSUB310 +6140 PRINT"Het persoonlijk voornaamwoord '";WO$;"'" +6150 PRINT:PRINT"is ";SR$;"e persoon "; +6160 IFC3<4 THENPRINT"enkelvoud." +6170 IFC3>3 THENPRINT"meervoud." 6180 RETURN -6190 PRINT "Het voornaamwoord '";WO$;"'" -6200 IF C3=2 THEN 6300 -6210 PRINT :PRINT "is hier bijvoeglijk gebruikt, want" -6220 PRINT :PRINT "het staat voor het zelfstandig" -6230 PRINT :PRINT "naamwoord: "; -6240 FOR I=N TO AW +6190 PRINT"Het voornaamwoord '";WO$;"'" +6200 IFC3=2 THEN6300 +6210 PRINT:PRINT"is hier bijvoeglijk gebruikt, want" +6220 PRINT:PRINT"het staat voor het zelfstandig" +6230 PRINT:PRINT"naamwoord: "; +6240 FORI=N TOAW 6250 W$=WO$(I) -6260 IF ASC(RIGHT$(W$,1))<65 THEN W$=LEFT$(W$,LEN(W$)-1) -6270 IF WC$(I)="210" THEN PRINT W$;".":I=AW -6280 NEXT I +6260 IFASC(RIGHT$(W$,1))<65 THENW$=LEFT$(W$,LEN(W$)-1) +6270 IFWC$(I)="210" THENPRINTW$;".":I=AW +6280 NEXTI 6290 RETURN -6300 PRINT :PRINT "is hier zelfstandig gebruikt, want" -6310 PRINT :PRINT "het staat NIET voor een zelfstandig" -6320 PRINT :PRINT "naamwoord." +6300 PRINT:PRINT"is hier zelfstandig gebruikt, want" +6310 PRINT:PRINT"het staat NIET voor een zelfstandig" +6320 PRINT:PRINT"naamwoord." 6330 RETURN 6340 REM KADER TEKENEN -6350 GOSUB 100 -6360 PRINT "=============== ZIN ================" -6370 HO=0:VE=6:GOSUB 110 -6380 PRINT L2$ -6390 VE=20:GOSUB 110 -6400 PRINT L2$ +6350 GOSUB100 +6360 PRINT"=============== ZIN ================" +6370 HO=0:VE=6:GOSUB110 +6380 PRINTL2$ +6390 VE=20:GOSUB110 +6400 PRINTL2$ 6410 RETURN 6420 REM ZIN INLEZEN -6430 GOSUB 270 -6440 READ AW:REM AANTAL WOORDEN -6450 IF AW=0 THEN RESTORE :GOTO 6440 -6460 FOR I=1 TO AW:READ WO$ +6430 GOSUB270 +6440 READAW:REM AANTAL WOORDEN +6450 IFAW=0 THENRESTORE:GOTO6440 +6460 FORI=1 TOAW:READWO$ 6470 WL=LEN(WO$) 6480 WO$(I)=LEFT$(WO$,WL-3) 6490 WC$(I)=RIGHT$(WO$,3) -6500 NEXT I:NR=NR+1 +6500 NEXTI:NR=NR+1 6510 RETURN 6520 REM ZIN OP SCHERM -6530 VE=0:HO=20:GOSUB 110 +6530 VE=0:HO=20:GOSUB110 6540 SR=NR:CT=2:CN=0 -6550 GOSUB 310:PRINT SR$ -6560 VE=2:HO=0:GOSUB 110 -6570 FOR I=1 TO AW:GOSUB 20100:GOSUB 120 -6580 GOSUB 20000 +6550 GOSUB310:PRINTSR$ +6560 VE=2:HO=0:GOSUB110 +6570 FORI=1 TOAW:GOSUB20100:GOSUB120 +6580 GOSUB20000 6590 WL=LEN(WO$(I)) -6600 IF HO+WL>=39 THEN VE=4:HO=0 +6600 IFHO+WL>=39 THENVE=4:HO=0 6610 WH(I)=HO:WV(I)=VE -6620 GOSUB 110:PRINT WO$(I);" "; -6630 NEXT I:RETURN +6620 GOSUB110:PRINTWO$(I);" "; +6630 NEXTI:RETURN 6640 REM TUSSENSTAND -6650 GOSUB 6700 -6660 GOSUB 6350 -6670 GOSUB 6530 +6650 GOSUB6700 +6660 GOSUB6350 +6670 GOSUB6530 6680 RETURN 6690 REM FOUTENOVERZICHT -6700 GOSUB 100 -6710 PRINT " F O U T E N O V E R Z I C H T" -6720 PRINT L1$ -6730 PRINT :PRINT "Aantal vragen: "; +6700 GOSUB100 +6710 PRINT" F O U T E N O V E R Z I C H T" +6720 PRINTL1$ +6730 PRINT:PRINT"Aantal vragen: "; 6740 CT=3:CN=0 -6750 SR=AV:GOSUB 310:PRINT SR$ -6760 IF AV=0 THEN GOSUB 1810:RETURN -6770 PRINT "Niveau : "; -6780 SR=NV:GOSUB 310:PRINT SR$; -6790 PRINT " Cijfer: "; +6750 SR=AV:GOSUB310:PRINTSR$ +6760 IFAV=0 THENGOSUB1810:RETURN +6770 PRINT"Niveau : "; +6780 SR=NV:GOSUB310:PRINTSR$; +6790 PRINT" Cijfer: "; 6800 CT=4:CN=1 -6810 SR=INT((AV-FT)/AV*100)/10:GOSUB 310 -6820 PRINT SR$:PRINT -6830 PRINT L2$ -6840 PRINT +6810 SR=INT((AV-FT)/AV*100)/10:GOSUB310 +6820 PRINTSR$:PRINT +6830 PRINTL2$ +6840 PRINT 6850 CT=3:CN=0 -6860 FOR I=1 TO 9 -6870 IF WS$(I)="" THEN 6970 -6880 PRINT " ";WS$(I); -6890 GOSUB 20100:GOSUB 120:GOSUB 20000 -6900 HO=19:GOSUB 110:PRINT ": "; +6860 FORI=1 TO9 +6870 IFWS$(I)="" THEN6970 +6880 PRINT" ";WS$(I); +6890 GOSUB20100:GOSUB120:GOSUB20000 +6900 HO=19:GOSUB110:PRINT": "; 6910 SR=F(0,I) -6920 FOR J=0 TO 8 +6920 FORJ=0 TO8 6930 SR=SR+F(I,J) -6940 NEXT J -6950 GOSUB 310 -6960 PRINT SR$;" x FOUT." -6970 NEXT I -6980 HO=0:VE=20:GOSUB 110 -6990 PRINT L2$ -7000 PRINT :PRINT "PER WOORDSOORT APART BEKIJKEN (J/N) ? "; -7010 GOSUB 210 -7020 IF (IN$<>"J") AND(IN$<>"j") THEN RETURN -7030 GOSUB 100 -7040 PRINT "F O U T E N P E R W O O R D S O O R T" -7050 PRINT L1$ +6940 NEXTJ +6950 GOSUB310 +6960 PRINTSR$;" x FOUT." +6970 NEXTI +6980 HO=0:VE=20:GOSUB110 +6990 PRINTL2$ +7000 PRINT:PRINT"PER WOORDSOORT APART BEKIJKEN (J/N) ? "; +7010 GOSUB210 +7020 IF(IN$<>"J") AND(IN$<>"j") THENRETURN +7030 GOSUB100 +7040 PRINT"F O U T E N P E R W O O R D S O O R T" +7050 PRINTL1$ 7060 CT=1:CN=0 7070 HO=1:VE=6:J=0 -7080 FOR I=0 TO B -7090 IF WS$(I)="" THEN 7140 -7100 SR=J:GOSUB 310:GOSUB 110 -7110 PRINT SR$;") ";WS$(I) +7080 FORI=0 TOB +7090 IFWS$(I)="" THEN7140 +7100 SR=J:GOSUB310:GOSUB110 +7110 PRINTSR$;") ";WS$(I) 7120 J=J+1:VE=VE+2 -7130 IF J=INT((B-A)/2+1) THEN HO=20:VE=6 -7140 NEXT I -7150 HO=0:VE=20:GOSUB 110:PRINT L1$ -7160 VE=22:GOSUB 110 -7170 PRINT "WAT KIES JE ? "; -7180 GOSUB 210:IN=VAL(IN$) -7190 IF IN$="0" THEN RETURN -7200 IF A>0 THEN GOSUB 1390 -7210 IF (IN<1) OR(IN>B) THEN 7180 -7220 IF WS$(IN)="" THEN 7180 -7230 GOSUB 100 -7240 HO=INT((22-LEN(WS$(IN)))/2):VE=0:GOSUB 110 -7250 PRINT "FOUTENOVERZICHT: ";WS$(IN) -7260 PRINT L1$ -7270 ON IN GOSUB 7430,7530,7620,7740,7890,8120,8170,8270,8320 -7280 GOSUB 1810:GOTO 7030 +7130 IFJ=INT((B-A)/2+1) THENHO=20:VE=6 +7140 NEXTI +7150 HO=0:VE=20:GOSUB110:PRINTL1$ +7160 VE=22:GOSUB110 +7170 PRINT"WAT KIES JE ? "; +7180 GOSUB210:IN=VAL(IN$) +7190 IFIN$="0" THENRETURN +7200 IFA>0 THENGOSUB1390 +7210 IF(IN<1) OR(IN>B) THEN7180 +7220 IFWS$(IN)="" THEN7180 +7230 GOSUB100 +7240 HO=INT((22-LEN(WS$(IN)))/2):VE=0:GOSUB110 +7250 PRINT"FOUTENOVERZICHT: ";WS$(IN) +7260 PRINTL1$ +7270 ONIN GOSUB7430,7530,7620,7740,7890,8120,8170,8270,8320 +7280 GOSUB1810:GOTO7030 7290 REM HULP 7300 SR=F(I,J) -7310 CT=2:GOSUB 310 -7320 PRINT SR$;"x Ft = "; -7330 IF V(I,J)=0 THEN SR=0:GOTO 7350 +7310 CT=2:GOSUB310 +7320 PRINTSR$;"x Ft = "; +7330 IFV(I,J)=0 THENSR=0:GOTO7350 7340 SR=INT(F(I,J)*100/V(I,J)+.5) -7350 CT=3:GOSUB 310 -7360 PRINT SR$;"% => "; -7370 IF SR>49 THEN PRINT "Slecht"; -7380 IF (SR>34) AND(SR<50) THEN PRINT "Matig"; -7390 IF (SR>19) AND(SR<35) THEN PRINT "Kan beter"; -7400 IF (SR<20) AND(V(I,J)>0) THEN PRINT "Goed"; -7410 PRINT "":PRINT :RETURN +7350 CT=3:GOSUB310 +7360 PRINTSR$;"% => "; +7370 IFSR>49 THENPRINT"Slecht"; +7380 IF(SR>34) AND(SR<50) THENPRINT"Matig"; +7390 IF(SR>19) AND(SR<35) THENPRINT"Kan beter"; +7400 IF(SR<20) AND(V(I,J)>0) THENPRINT"Goed"; +7410 PRINT"":PRINT:RETURN 7420 REM LIDWOORD -7430 HO=0:VE=8:GOSUB 110 -7440 PRINT WS$(1);" : "; -7450 I=1:J=0:GOSUB 7300 -7460 IF NV=1 THEN 7510 -7470 PRINT "Bepaald : "; -7480 J=1:GOSUB 7300 -7490 PRINT "Onbepaald: "; -7500 J=2:GOSUB 7300 +7430 HO=0:VE=8:GOSUB110 +7440 PRINTWS$(1);" : "; +7450 I=1:J=0:GOSUB7300 +7460 IFNV=1 THEN7510 +7470 PRINT"Bepaald : "; +7480 J=1:GOSUB7300 +7490 PRINT"Onbepaald: "; +7500 J=2:GOSUB7300 7510 RETURN 7520 REM NAAMWOORD -7530 HO=0:VE=8:GOSUB 110 -7540 PRINT WS$(2);" : "; -7550 I=2:J=0:GOSUB 7300 -7560 PRINT "Zelfstandig: "; -7570 J=1:GOSUB 7300 -7580 PRINT "Bijvoeglijk: "; -7590 J=2:GOSUB 7300 +7530 HO=0:VE=8:GOSUB110 +7540 PRINTWS$(2);" : "; +7550 I=2:J=0:GOSUB7300 +7560 PRINT"Zelfstandig: "; +7570 J=1:GOSUB7300 +7580 PRINT"Bijvoeglijk: "; +7590 J=2:GOSUB7300 7600 RETURN 7610 REM TELWOORD -7620 HO=0:VE=6:GOSUB 110 -7630 PRINT WS$(3);" : "; -7640 I=3:J=0:GOSUB 7300 -7650 IF NV=1 THEN 7720 -7660 PRINT "Hoofdtelw : "; -7670 J=1:GOSUB 7300 -7680 PRINT "Rangtelw : "; -7690 J=2:GOSUB 7300 -7700 PRINT "(On)bepaald: "; -7710 I=0:J=3:GOSUB 7300 +7620 HO=0:VE=6:GOSUB110 +7630 PRINTWS$(3);" : "; +7640 I=3:J=0:GOSUB7300 +7650 IFNV=1 THEN7720 +7660 PRINT"Hoofdtelw : "; +7670 J=1:GOSUB7300 +7680 PRINT"Rangtelw : "; +7690 J=2:GOSUB7300 +7700 PRINT"(On)bepaald: "; +7710 I=0:J=3:GOSUB7300 7720 RETURN 7730 REM WERKWOORD -7740 HO=0:VE=5:GOSUB 110 -7750 PRINT WS$(4);" : "; -7760 I=4:J=0:GOSUB 7300 -7770 IF NV=1 THEN 7870 -7780 PRINT "Koppelww : "; -7790 J=1:GOSUB 7300 -7800 PRINT "Hulpwerkw : "; -7810 J=2:GOSUB 7300 -7820 PRINT "Zelfst. ww: "; -7830 J=3:GOSUB 7300 -7840 IF NV=2 THEN 7870 -7850 PRINT "Vorm : "; -7860 I=0:J=4:GOSUB 7300 +7740 HO=0:VE=5:GOSUB110 +7750 PRINTWS$(4);" : "; +7760 I=4:J=0:GOSUB7300 +7770 IFNV=1 THEN7870 +7780 PRINT"Koppelww : "; +7790 J=1:GOSUB7300 +7800 PRINT"Hulpwerkw : "; +7810 J=2:GOSUB7300 +7820 PRINT"Zelfst. ww: "; +7830 J=3:GOSUB7300 +7840 IFNV=2 THEN7870 +7850 PRINT"Vorm : "; +7860 I=0:J=4:GOSUB7300 7870 RETURN 7880 REM VOORNAAMW -7890 HO=0:VE=3:GOSUB 110 -7900 PRINT "Voornaamw :"; -7910 I=5:J=0:GOSUB 7300 -7920 PRINT "Persoonlijk :"; -7930 J=1:GOSUB 7300 -7940 PRINT "Bezittelijk :"; -7950 J=2:GOSUB 7300 -7960 PRINT "Aanwijzend :"; -7970 J=3:GOSUB 7300 -7980 IF NV=1 THEN RETURN -7990 PRINT "Vragend :"; -8000 J=4:GOSUB 7300 -8010 PRINT "Onbepaald :"; -8020 J=5:GOSUB 7300 -8030 IF NV=2 THEN RETURN -8040 PRINT "Betrekkelijk:"; -8050 J=6:GOSUB 7300 -8060 PRINT "Wederkerend :"; -8070 J=7:GOSUB 7300 -8080 PRINT "Wederkerig :"; -8090 J=8:GOSUB 7300 +7890 HO=0:VE=3:GOSUB110 +7900 PRINT"Voornaamw :"; +7910 I=5:J=0:GOSUB7300 +7920 PRINT"Persoonlijk :"; +7930 J=1:GOSUB7300 +7940 PRINT"Bezittelijk :"; +7950 J=2:GOSUB7300 +7960 PRINT"Aanwijzend :"; +7970 J=3:GOSUB7300 +7980 IFNV=1 THENRETURN +7990 PRINT"Vragend :"; +8000 J=4:GOSUB7300 +8010 PRINT"Onbepaald :"; +8020 J=5:GOSUB7300 +8030 IFNV=2 THENRETURN +8040 PRINT"Betrekkelijk:"; +8050 J=6:GOSUB7300 +8060 PRINT"Wederkerend :"; +8070 J=7:GOSUB7300 +8080 PRINT"Wederkerig :"; +8090 J=8:GOSUB7300 8100 RETURN 8110 REM VOORZETSEL -8120 HO=0:VE=9:GOSUB 110 -8130 PRINT WS$(6);": "; -8140 I=6:J=0:GOSUB 7300 +8120 HO=0:VE=9:GOSUB110 +8130 PRINTWS$(6);": "; +8140 I=6:J=0:GOSUB7300 8150 RETURN 8160 REM VOEGWOORD -8170 HO=0:VE=8:GOSUB 110 -8180 PRINT WS$(7);": "; -8190 I=7:J=0:GOSUB 7300 -8200 IF NV<3 THEN 8250 -8210 PRINT "Nevensch.: "; -8220 J=1:GOSUB 7300 -8230 PRINT "Ondersch.: "; -8240 J=2:GOSUB 7300 +8170 HO=0:VE=8:GOSUB110 +8180 PRINTWS$(7);": "; +8190 I=7:J=0:GOSUB7300 +8200 IFNV<3 THEN8250 +8210 PRINT"Nevensch.: "; +8220 J=1:GOSUB7300 +8230 PRINT"Ondersch.: "; +8240 J=2:GOSUB7300 8250 RETURN 8260 REM BIJWOORD -8270 HO=0:VE=9:GOSUB 110 -8280 PRINT WS$(8);": "; -8290 I=8:J=0:GOSUB 7300 +8270 HO=0:VE=9:GOSUB110 +8280 PRINTWS$(8);": "; +8290 I=8:J=0:GOSUB7300 8300 RETURN 8310 REM TUSSENW -8320 HO=0:VE=9:GOSUB 110 -8330 PRINT "Tussenw: "; -8340 I=9:J=0:GOSUB 7300 +8320 HO=0:VE=9:GOSUB110 +8330 PRINT"Tussenw: "; +8340 I=9:J=0:GOSUB7300 8350 RETURN 8360 REM HOOFDMENU -8370 IF S=0 THEN GOSUB 8600 -8380 GOSUB 100 -8390 PRINT " H O O F D M E N U" -8400 PRINT L1$ -8410 HO=0:VE=6:GOSUB 110 -8420 PRINT " 1) Nuttige tips." -8430 PRINT -8440 PRINT :PRINT " 2) Alle woordsoorten oefenen." -8450 PRINT -8460 PRINT :PRINT " 3) Keuze maken uit de woordsoorten." -8470 PRINT -8480 PRINT :PRINT " 4) Stoppen." -8490 VE=20:GOSUB 110 -8500 PRINT L1$ -8510 HO=0:VE=22:GOSUB 110 -8520 PRINT "WAT KIES JE ? "; -8530 GOSUB 210:KE=VAL(IN$) -8540 IF (KE<1) OR(KE>4) THEN 8530 -8550 IF KE=4 THEN GOSUB 100:END -8560 IF KE=3 THEN GOSUB 8910 -8570 IF KE=1 THEN GOSUB 9370:GOTO 8380 +8370 IFS=0 THENGOSUB8600 +8380 GOSUB100 +8390 PRINT" H O O F D M E N U" +8400 PRINTL1$ +8410 HO=0:VE=6:GOSUB110 +8420 PRINT" 1) Nuttige tips." +8430 PRINT +8440 PRINT:PRINT" 2) Alle woordsoorten oefenen." +8450 PRINT +8460 PRINT:PRINT" 3) Keuze maken uit de woordsoorten." +8470 PRINT +8480 PRINT:PRINT" 4) Stoppen." +8490 VE=20:GOSUB110 +8500 PRINTL1$ +8510 HO=0:VE=22:GOSUB110 +8520 PRINT"WAT KIES JE ? "; +8530 GOSUB210:KE=VAL(IN$) +8540 IF(KE<1) OR(KE>4) THEN8530 +8550 IFKE=4 THENGOSUB100:END +8560 IFKE=3 THENGOSUB8910 +8570 IFKE=1 THENGOSUB9370:GOTO8380 8580 RETURN 8590 REM KIES NIVEAU -8600 GOSUB 100 -8610 PRINT " K I E S N I V E A U" -8620 PRINT L1$ -8630 HO=0:VE=7:GOSUB 110 -8640 PRINT " 1) Groep 8 basisschool" -8650 PRINT -8660 PRINT :PRINT " 2) Brugklas voortgezet onderwijs" -8670 PRINT -8680 PRINT :PRINT " 3) Overige leerjaren v.o." -8690 VE=20:GOSUB 110 -8700 PRINT L1$ -8710 HO=0:VE=22:GOSUB 110 -8720 PRINT "WAT KIES JE ? "; -8730 GOSUB 210:NV=VAL(IN$) -8740 IF (NV<1) OR(NV>3) THEN 8730 +8600 GOSUB100 +8610 PRINT" K I E S N I V E A U" +8620 PRINTL1$ +8630 HO=0:VE=7:GOSUB110 +8640 PRINT" 1) Groep 8 basisschool" +8650 PRINT +8660 PRINT:PRINT" 2) Brugklas voortgezet onderwijs" +8670 PRINT +8680 PRINT:PRINT" 3) Overige leerjaren v.o." +8690 VE=20:GOSUB110 +8700 PRINTL1$ +8710 HO=0:VE=22:GOSUB110 +8720 PRINT"WAT KIES JE ? "; +8730 GOSUB210:NV=VAL(IN$) +8740 IF(NV<1) OR(NV>3) THEN8730 8750 A=0:B=9 -8760 IF NV=2 THEN B=8 -8770 IF NV=1 THEN B=7 -8780 ON NV GOSUB 8810,8870,270 +8760 IFNV=2 THENB=8 +8770 IFNV=1 THENB=7 +8780 ONNV GOSUB8810,8870,270 8790 RETURN 8800 REM NV=1 8810 W5$(4)="":W5$(5)="" @@ -789,114 +790,114 @@ 8880 W5$(7)="":W5$(8)="" 8890 RETURN 8900 REM WOORDSOORTEN KIEZEN -8910 IF NV=0 THEN GOSUB 8600 -8920 GOSUB 100 -8930 PRINT " K I E S W O O R D S O O R T E N" -8940 PRINT L1$ -8950 PRINT :PRINT "Welke woordsoorten wil je NIET oefenen?" -8960 PRINT " ----" -8970 PRINT "Laat minstens 3 woordsoorten staan." -8980 PRINT :PRINT L1$ +8910 IFNV=0 THENGOSUB8600 +8920 GOSUB100 +8930 PRINT" K I E S W O O R D S O O R T E N" +8940 PRINTL1$ +8950 PRINT:PRINT"Welke woordsoorten wil je NIET oefenen?" +8960 PRINT" ----" +8970 PRINT"Laat minstens 3 woordsoorten staan." +8980 PRINT:PRINTL1$ 8990 CT=1:CN=0 9000 HO=0:VE=10:J=0 -9010 FOR I=0 TO B -9020 IF WS$(I)="" THEN 9070 -9030 SR=J:GOSUB 310:GOSUB 110 -9040 PRINT SR$;") ";WS$(I) +9010 FORI=0 TOB +9020 IFWS$(I)="" THEN9070 +9030 SR=J:GOSUB310:GOSUB110 +9040 PRINTSR$;") ";WS$(I) 9050 J=J+1:VE=VE+2 -9060 IF J=INT((B-A)/2+1) THEN HO=19:VE=10 -9070 NEXT I -9080 HO=0:VE=20:GOSUB 110:PRINT L1$ -9090 IF B-A=3 THEN 9190 -9100 HO=0:VE=22:GOSUB 110 -9110 PRINT "WAT KIES JE ? "; -9120 GOSUB 210:IN=VAL(IN$) -9130 IF IN$="0" THEN 9190 -9140 IF A>0 THEN GOSUB 1390 -9150 IF (IN<1) OR(IN>B) THEN 9120 -9160 IF WS$(IN)="" THEN 9120 +9060 IFJ=INT((B-A)/2+1) THENHO=19:VE=10 +9070 NEXTI +9080 HO=0:VE=20:GOSUB110:PRINTL1$ +9090 IFB-A=3 THEN9190 +9100 HO=0:VE=22:GOSUB110 +9110 PRINT"WAT KIES JE ? "; +9120 GOSUB210:IN=VAL(IN$) +9130 IFIN$="0" THEN9190 +9140 IFA>0 THENGOSUB1390 +9150 IF(IN<1) OR(IN>B) THEN9120 +9160 IFWS$(IN)="" THEN9120 9170 WS$(IN)="":A=A+1 -9180 GOSUB 1890:GOTO 8990 -9190 HO=0:VE=22:GOSUB 110:PRINT "GOED ZO (J/N) ?"; -9200 GOSUB 210 -9210 IF (IN$="N") OR(IN$="n") THEN GOSUB 10010:GOTO 8920 -9220 IF (IN$<>"J") AND(IN$<>"j") THEN 9200 +9180 GOSUB1890:GOTO8990 +9190 HO=0:VE=22:GOSUB110:PRINT"GOED ZO (J/N) ?"; +9200 GOSUB210 +9210 IF(IN$="N") OR(IN$="n") THENGOSUB10010:GOTO8920 +9220 IF(IN$<>"J") AND(IN$<>"j") THEN9200 9230 RETURN 9240 REM WILLEKEURIG BEGIN -9250 GOSUB 100 -9260 HO=12:VE=11:GOSUB 110 -9270 PRINT "Even geduld ....." -9280 GOSUB 260:I=INT(RV*AZ) -9290 FOR J=1 TO I -9300 READ AW -9310 IF AW=0 THEN RESTORE :GOTO 9280 -9320 FOR K=1 TO AW -9330 READ WO$(K) -9340 NEXT K:NEXT J +9250 GOSUB100 +9260 HO=12:VE=11:GOSUB110 +9270 PRINT"Even geduld ....." +9280 GOSUB260:I=INT(RV*AZ) +9290 FORJ=1 TOI +9300 READAW +9310 IFAW=0 THENRESTORE:GOTO9280 +9320 FORK=1 TOAW +9330 READWO$(K) +9340 NEXTK:NEXTJ 9350 RETURN 9360 REM TIPS -9370 GOSUB 100 -9380 PRINT " N U T T I G E T I P S" -9390 PRINT L1$ -9400 PRINT :PRINT "Bij een meerkeuzevraag kun je met de" -9410 PRINT :PRINT "toets 'S' de oefening stoppen en weer" -9420 PRINT :PRINT "terugkeren naar het hoofdmenu." -9430 PRINT -9440 PRINT :PRINT "Met toets 'T' daarentegen krijg je" -9450 PRINT :PRINT "de tussenstand op het scherm. Daarna" -9460 PRINT :PRINT "gaat het programma gewoon verder met" -9470 PRINT :PRINT "de zin waarbij je gebleven was." -9480 PRINT :PRINT "Dus: 'S' = Stoppen 'T' = Tussenstand." -9490 GOSUB 1810:GOSUB 100 -9500 PRINT :PRINT "Raadpleeg altijd je schoolboek(en) voor" -9510 PRINT :PRINT "een gedegen uitleg, wanneer je iets" -9520 PRINT :PRINT "niet begrijpt." -9530 PRINT :PRINT "Dit programma geeft wel enige uitleg" -9540 PRINT :PRINT "als je een fout maakt, maar het" -9550 PRINT :PRINT "beperkt zich tot hoofdzaken." -9560 PRINT :PRINT "In je schoolboek(en) vind je veel meer" -9570 PRINT :PRINT "voorbeelden die bijdragen tot een beter" -9580 PRINT :PRINT "begrip van een bepaald woordsoort." -9590 GOSUB 1810:RETURN +9370 GOSUB100 +9380 PRINT" N U T T I G E T I P S" +9390 PRINTL1$ +9400 PRINT:PRINT"Bij een meerkeuzevraag kun je met de" +9410 PRINT:PRINT"toets 'S' de oefening stoppen en weer" +9420 PRINT:PRINT"terugkeren naar het hoofdmenu." +9430 PRINT +9440 PRINT:PRINT"Met toets 'T' daarentegen krijg je" +9450 PRINT:PRINT"de tussenstand op het scherm. Daarna" +9460 PRINT:PRINT"gaat het programma gewoon verder met" +9470 PRINT:PRINT"de zin waarbij je gebleven was." +9480 PRINT:PRINT"Dus: 'S' = Stoppen 'T' = Tussenstand." +9490 GOSUB1810:GOSUB100 +9500 PRINT:PRINT"Raadpleeg altijd je schoolboek(en) voor" +9510 PRINT:PRINT"een gedegen uitleg, wanneer je iets" +9520 PRINT:PRINT"niet begrijpt." +9530 PRINT:PRINT"Dit programma geeft wel enige uitleg" +9540 PRINT:PRINT"als je een fout maakt, maar het" +9550 PRINT:PRINT"beperkt zich tot hoofdzaken." +9560 PRINT:PRINT"In je schoolboek(en) vind je veel meer" +9570 PRINT:PRINT"voorbeelden die bijdragen tot een beter" +9580 PRINT:PRINT"begrip van een bepaald woordsoort." +9590 GOSUB1810:RETURN 9600 REM TITELBEELD -9610 GOSUB 100 -9620 GOSUB 20000 -9630 FOR I=0 TO 38:PRINT "*"; -9640 FOR W=1 TO 20:NEXT W:NEXT I -9650 HO=39:FOR VE=0 TO 22:GOSUB 110 -9660 PRINT "*";:NEXT VE -9670 VE=22:FOR HO=38 TO 1 STEP -1 -9680 GOSUB 110:PRINT "*";:NEXT HO -9690 HO=0:FOR VE=22 TO 1 STEP -1 -9700 GOSUB 110:PRINT "*";:NEXT VE -9710 FOR J=1 TO 9 -9720 GOSUB 260 +9610 GOSUB100 +9620 GOSUB20000 +9630 FORI=0 TO38:PRINT"*"; +9640 FORW=1 TO20:NEXTW:NEXTI +9650 HO=39:FORVE=0 TO22:GOSUB110 +9660 PRINT"*";:NEXTVE +9670 VE=22:FORHO=38 TO1 STEP-1 +9680 GOSUB110:PRINT"*";:NEXTHO +9690 HO=0:FORVE=22 TO1 STEP-1 +9700 GOSUB110:PRINT"*";:NEXTVE +9710 FORJ=1 TO9 +9720 GOSUB260 9730 X=INT(RV*16+2) -9740 GOSUB 260 +9740 GOSUB260 9750 Y=INT(RV*19+2) -9760 HO=X:VE=Y:GOSUB 110 -9770 PRINT "??? ";WS$(J);" ???" -9780 FOR W=1 TO 750:NEXT W -9790 GOSUB 110 -9800 PRINT " ":REM 21 SPATIES -9810 NEXT J -9820 HO=0:VE=7:GOSUB 110 -9830 PRINT "* +-----------------------------+" -9840 PRINT "* ! !" -9850 PRINT "* ! W O O R D B E N O E M I N G !" -9860 PRINT "* ! !" -9870 PRINT "* ! Een programma van !" -9880 PRINT "* ! !" -9890 PRINT "* ! Harry Engel !" -9900 PRINT "* ! !" -9910 PRINT "* +-----------------------------+" -9920 HO=36:VE=21:GOSUB 110 -9930 PRINT "=>"; -9940 FOR W=1 TO 100:NEXT W -9950 GOSUB 110:PRINT " "; -9960 FOR W=1 TO 100:NEXT W -9970 GOSUB 200 -9980 IF IN$="" THEN 9920 +9760 HO=X:VE=Y:GOSUB110 +9770 PRINT"??? ";WS$(J);" ???" +9780 FORW=1 TO750:NEXTW +9790 GOSUB110 +9800 PRINT" ":REM 21 SPATIES +9810 NEXTJ +9820 HO=0:VE=7:GOSUB110 +9830 PRINT"* +-----------------------------+" +9840 PRINT"* ! !" +9850 PRINT"* ! W O O R D B E N O E M I N G !" +9860 PRINT"* ! !" +9870 PRINT"* ! Een programma van !" +9880 PRINT"* ! !" +9890 PRINT"* ! Harry Engel !" +9900 PRINT"* ! !" +9910 PRINT"* +-----------------------------+" +9920 HO=36:VE=21:GOSUB110 +9930 PRINT"=>"; +9940 FORW=1 TO100:NEXTW +9950 GOSUB110:PRINT" "; +9960 FORW=1 TO100:NEXTW +9970 GOSUB200 +9980 IFIN$="" THEN9920 9990 RETURN 10000 REM INITIALISEREN 10010 L0$=" " @@ -909,8 +910,8 @@ 10080 G$(6)="SUPER!":G$(7)="WAT BEN JIJ GOED!" 10090 G$(8)="FANTASTISCH!":G$(9)="KAN NIET BETER!" 10100 AZ=30:REM AANTAL ZINNEN -10110 FOR I=0 TO 9:FOR J=0 TO 9 -10120 F(I,J)=0:V(I,J)=0:NEXT J:NEXT I +10110 FORI=0 TO9:FORJ=0 TO9 +10120 F(I,J)=0:V(I,J)=0:NEXTJ:NEXTI 10130 F=0:FT=0:NR=0:AV=0:NV=0 10140 WS$(0)="Einde keuze":WS$(1)="Lidwoord" 10150 WS$(2)="Naamwoord":WS$(3)="Telwoord" @@ -923,90 +924,90 @@ 10220 W5$(7)="Wederkerend":W5$(8)="Wederkerig" 10230 RETURN 10240 REM DIMENSIONEREN -10250 DIM WO$(15),WC$(15),WS$(9),W5$(8),G$(9) -10260 DIM WH(15),WV(15),F(9,9),V(9,9) +10250 DIMWO$(15),WC$(15),WS$(9),W5$(8),G$(9) +10260 DIMWH(15),WV(15),F(9,9),V(9,9) 10270 RETURN 19980 REM CURSOR UIT 19990 REM VOOR COMPUTERS MET IRRITANTE CURSOR -20000 PRINT CHR$(2);:REM P2000T +20000 PRINTCHR$(2);:REM P2000T 20010 RETURN 20090 REM CURSOR AAN -20100 PRINT CHR$(1);:REM P2000T +20100 PRINTCHR$(1);:REM P2000T 20110 RETURN -25000 DATA 14,"De110","jongen210","die560","daar800","aan600" -25010 DATA "de110","overkant210","van600","deze531" -25020 DATA "straat210","loopt,432","is412" -25030 DATA "mijn521","broer.210" -25040 DATA 11,"Ik511","zal422","de110","oplossing210" -25050 DATA "van600","de110","tweede321","puzzel210" -25060 DATA "vanavond800","nog800","vinden.431" -25070 DATA 10,"Dit531","jaar210","zijn422","weinig312" -25080 DATA "leerlingen210","tijdens600","hun521" -25090 DATA "vakantie210","ziek220","geweest.413" -25100 DATA 8,"Paarden210","die560","de110","haver210" -25110 DATA "verdienen,432","krijgen432","die532","niet.800" -25120 DATA 5,"Wanneer800","zullen422","we514" -25130 DATA "elkaar580","ontmoeten?431" -25140 DATA 7,"Voor600","ons521","huis210","staat432" -25150 DATA "een120","mooie220","kastanjeboom.210" -25160 DATA 10,"Vijf311","minuten210","na600","het110" -25170 DATA "ongeluk210","was412","de110","politie210" -25180 DATA "al800","aanwezig.220" -25190 DATA 9,"Ik511","ga422","vaak800","met600" -25200 DATA "mijn521","vrienden210","de110" -25210 DATA "stad210","bezoeken.431" -25220 DATA 8,"Welke541","grote220","stad210","ligt432" -25230 DATA "tussen600","deze531","twee311","dorpen?210" -25240 DATA 8,"Elke551","zondag210","wandelen432","we514" -25250 DATA "hier800","langs600","het110","strand.210" -25260 DATA 7,"De110","fietsen210","zullen422","per600" -25270 DATA "trein210","worden421","vervoerd.433" -25280 DATA 8,"Zij513","had422","verwacht433","dat720" -25290 DATA "jij512","later800","zou422","komen.431" -25300 DATA 6,"Scheren432","jullie515","je570" -25310 DATA "echt800","iedere551","morgen?210" -25320 DATA 5,"Bah,900","dat532","is412" -25330 DATA "niet800","lekker!220" -25340 DATA 8,"We514","wandelen432","en710" -25350 DATA "fietsen432","veel800","in600" -25360 DATA "de110","vakantie.210" -25370 DATA 5,"Dat532","vertel432","ik511" -25380 DATA "jou512","niet.800" -25390 DATA 9,"We514","hebben422","ons570","laten421" -25400 DATA "vertellen431","dat720","het552" -25410 DATA "waar220","was.412" -25420 DATA 9,"Waarom800","zeg432","je512","me511" -25430 DATA "niet,800","wie542","elkaar580" -25440 DATA "uitgescholden433","hebben?422" -25450 DATA 6,"Het552","sneeuwde432","die531" -25460 DATA "nacht210","enkele312","uren.210" -25470 DATA 7,"Dat532","kan422","zij513","van600" -25480 DATA "jullie515","wel800","verdragen.431" -25490 DATA 7,"Toen800","leek412","je512","nog800" -25500 DATA "jong220","en710","gelukkig.220" -25510 DATA 12,"Toen720","zijn521","auto210" -25520 DATA "stuk220","was,412","ging432","hij513" -25530 DATA "te600","voet210","naar600","het110","werk.210" -25540 DATA 5,"Ik511","zou422","maar800" -25550 DATA "opletten,431","hoor!900" -25560 DATA 11,"U512","zei432","dat720","we514","stil220" -25570 DATA "moesten422","zijn,411","omdat720","u512" -25580 DATA "wilde422","studeren.431" -25590 DATA 9,"Ik511","ben412","geslaagd,220" -25600 DATA "dus800","betalen432","mijn521" -25610 DATA "ouders210","een120","feestje.210" -25620 DATA 4,"Wat voor een541","auto210" -25630 DATA "stond432","daar?800" -25640 DATA 4,"Waar800","blijf432","je512","toch?800" -25650 DATA 10,"De110","bekende220","artiest210","die560" -25660 DATA "in600","de110","show210","optrad,432" -25670 DATA "werd422","uitgefloten.433" -25680 DATA 8,"Wat541","komen422","jullie515","op600" -25690 DATA "dit531","tijdstip210","hier800","doen?431" -25700 DATA 9,"Op600","zondag210","en710" -25710 DATA "woensdag210","kan422","iedereen551" -25720 DATA "naar600","Hobbyscoop210","luisteren.431" -25730 DATA 0 +25000 DATA14,"De110","jongen210","die560","daar800","aan600" +25010 DATA"de110","overkant210","van600","deze531" +25020 DATA"straat210","loopt,432","is412" +25030 DATA"mijn521","broer.210" +25040 DATA11,"Ik511","zal422","de110","oplossing210" +25050 DATA"van600","de110","tweede321","puzzel210" +25060 DATA"vanavond800","nog800","vinden.431" +25070 DATA10,"Dit531","jaar210","zijn422","weinig312" +25080 DATA"leerlingen210","tijdens600","hun521" +25090 DATA"vakantie210","ziek220","geweest.413" +25100 DATA8,"Paarden210","die560","de110","haver210" +25110 DATA"verdienen,432","krijgen432","die532","niet.800" +25120 DATA5,"Wanneer800","zullen422","we514" +25130 DATA"elkaar580","ontmoeten?431" +25140 DATA7,"Voor600","ons521","huis210","staat432" +25150 DATA"een120","mooie220","kastanjeboom.210" +25160 DATA10,"Vijf311","minuten210","na600","het110" +25170 DATA"ongeluk210","was412","de110","politie210" +25180 DATA"al800","aanwezig.220" +25190 DATA9,"Ik511","ga422","vaak800","met600" +25200 DATA"mijn521","vrienden210","de110" +25210 DATA"stad210","bezoeken.431" +25220 DATA8,"Welke541","grote220","stad210","ligt432" +25230 DATA"tussen600","deze531","twee311","dorpen?210" +25240 DATA8,"Elke551","zondag210","wandelen432","we514" +25250 DATA"hier800","langs600","het110","strand.210" +25260 DATA7,"De110","fietsen210","zullen422","per600" +25270 DATA"trein210","worden421","vervoerd.433" +25280 DATA8,"Zij513","had422","verwacht433","dat720" +25290 DATA"jij512","later800","zou422","komen.431" +25300 DATA6,"Scheren432","jullie515","je570" +25310 DATA"echt800","iedere551","morgen?210" +25320 DATA5,"Bah,900","dat532","is412" +25330 DATA"niet800","lekker!220" +25340 DATA8,"We514","wandelen432","en710" +25350 DATA"fietsen432","veel800","in600" +25360 DATA"de110","vakantie.210" +25370 DATA5,"Dat532","vertel432","ik511" +25380 DATA"jou512","niet.800" +25390 DATA9,"We514","hebben422","ons570","laten421" +25400 DATA"vertellen431","dat720","het552" +25410 DATA"waar220","was.412" +25420 DATA9,"Waarom800","zeg432","je512","me511" +25430 DATA"niet,800","wie542","elkaar580" +25440 DATA"uitgescholden433","hebben?422" +25450 DATA6,"Het552","sneeuwde432","die531" +25460 DATA"nacht210","enkele312","uren.210" +25470 DATA7,"Dat532","kan422","zij513","van600" +25480 DATA"jullie515","wel800","verdragen.431" +25490 DATA7,"Toen800","leek412","je512","nog800" +25500 DATA"jong220","en710","gelukkig.220" +25510 DATA12,"Toen720","zijn521","auto210" +25520 DATA"stuk220","was,412","ging432","hij513" +25530 DATA"te600","voet210","naar600","het110","werk.210" +25540 DATA5,"Ik511","zou422","maar800" +25550 DATA"opletten,431","hoor!900" +25560 DATA11,"U512","zei432","dat720","we514","stil220" +25570 DATA"moesten422","zijn,411","omdat720","u512" +25580 DATA"wilde422","studeren.431" +25590 DATA9,"Ik511","ben412","geslaagd,220" +25600 DATA"dus800","betalen432","mijn521" +25610 DATA"ouders210","een120","feestje.210" +25620 DATA4,"Wat voor een541","auto210" +25630 DATA"stond432","daar?800" +25640 DATA4,"Waar800","blijf432","je512","toch?800" +25650 DATA10,"De110","bekende220","artiest210","die560" +25660 DATA"in600","de110","show210","optrad,432" +25670 DATA"werd422","uitgefloten.433" +25680 DATA8,"Wat541","komen422","jullie515","op600" +25690 DATA"dit531","tijdstip210","hier800","doen?431" +25700 DATA9,"Op600","zondag210","en710" +25710 DATA"woensdag210","kan422","iedereen551" +25720 DATA"naar600","Hobbyscoop210","luisteren.431" +25730 DATA0 30000 REM ********************** 30010 REM * Harry Engel * 30020 REM * Sg. Eysenhegge * @@ -1019,4 +1020,3 @@ 30090 REM Verander zonodig regels 20000 en 20100 30100 REM 30110 REM COPYRIGHT (C) NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/06_Spelling.bc2 b/Best_of_Basicode_4/06_Spelling.bc2 index 740d188..ff3d0db 100644 --- a/Best_of_Basicode_4/06_Spelling.bc2 +++ b/Best_of_Basicode_4/06_Spelling.bc2 @@ -1,151 +1,152 @@ -1000 A=3500: GOTO 20 + +1000 A=3500: GOTO20 1010 REM SPELLING (werkwoordsvormen, 9 K) -1020 DIM Q(15),T$(6):R$=" " -1030 DIM S$(110),W$(110),V$(110),P$(110),C$(66) -1040 FOR B=1 TO 6:READ T$(B):NEXT B:B=6: GOSUB 1800 -1100 PRINT " Trichter College - Maastricht":PRINT -1110 PRINT " Maarten van Gils (1987)":PRINT -1120 PRINT "WERKWOORDS-VORMEN : programma voor" -1130 PRINT "groepjes van ongeveer 3 leerlingen" -1140 PRINT "met weinig training op dit gebied." -1200 FOR J=1 TO 110:IF J<41 THEN READ W$(J) -1210 B=68:READ S$:IF J>40 THEN W$(J)=S$+"EN" -1220 E=ASC(RIGHT$(S$,1)):IF (E=83) OR(E=84) THEN B=84 -1230 IF (E=72) OR(E=75) OR(E=80) THEN B=84 +1020 DIMQ(15),T$(6):R$=" " +1030 DIMS$(110),W$(110),V$(110),P$(110),C$(66) +1040 FORB=1 TO6:READT$(B):NEXTB:B=6: GOSUB1800 +1100 PRINT" Trichter College - Maastricht":PRINT +1110 PRINT" Maarten van Gils (1987)":PRINT +1120 PRINT"WERKWOORDS-VORMEN : programma voor" +1130 PRINT"groepjes van ongeveer 3 leerlingen" +1140 PRINT"met weinig training op dit gebied." +1200 FORJ=1 TO110:IFJ<41 THENREADW$(J) +1210 B=68:READS$:IFJ>40 THENW$(J)=S$+"EN" +1220 E=ASC(RIGHT$(S$,1)):IF(E=83) OR(E=84) THENB=84 +1230 IF(E=72) OR(E=75) OR(E=80) THENB=84 1240 V$(J)=S$+CHR$(B)+"E":S$(J)=S$ -1250 P$(J)=S$:IF (E<>B) THEN P$(J)=P$(J)+CHR$(B) -1260 IF (J<26) OR(J>60) THEN P$(J)="GE"+P$(J) -1270 VE=11:HO=0: GOSUB 110:PRINT W$(J);R$:PRINT S$;R$ -1280 PRINT V$(J);R$:PRINT P$(J);R$:NEXT J:F=0 -1290 FOR J=1 TO 66:READ C$(J):NEXT J: GOSUB 2600: GOTO 7000 -1500 GOSUB 260:J=INT(110*RV)+1:Z$=S$(J) -1510 FOR E=1 TO 13:Q(E)=32:NEXT E -1520 E=0:IF RIGHT$(Z$,1)="T" THEN E=1 -1530 VE=G+2:HO=0: GOSUB 110: GOTO 250 -1600 HO=0:VE=14: GOSUB 110 -1610 PRINT "WIL JE NOG MEER VOORBEELDEN ZIEN ?" -1700 PRINT "(J = ja <--> N = nee) "; -1710 GOSUB 1900:IF (E<>74) AND(E<>78) THEN 1710 -1720 PRINT IN$:RETURN -1800 GOSUB 100:PRINT "***** ";T$(B); -1810 PRINT " *****":PRINT :RETURN -1900 GOSUB 210:E=ASC(IN$):IF E>90 THEN E=E-32 +1250 P$(J)=S$:IF(E<>B) THENP$(J)=P$(J)+CHR$(B) +1260 IF(J<26) OR(J>60) THENP$(J)="GE"+P$(J) +1270 VE=11:HO=0: GOSUB110:PRINTW$(J);R$:PRINTS$;R$ +1280 PRINTV$(J);R$:PRINTP$(J);R$:NEXTJ:F=0 +1290 FORJ=1 TO66:READC$(J):NEXTJ: GOSUB2600: GOTO7000 +1500 GOSUB260:J=INT(110*RV)+1:Z$=S$(J) +1510 FORE=1 TO13:Q(E)=32:NEXTE +1520 E=0:IFRIGHT$(Z$,1)="T" THENE=1 +1530 VE=G+2:HO=0: GOSUB110: GOTO250 +1600 HO=0:VE=14: GOSUB110 +1610 PRINT"WIL JE NOG MEER VOORBEELDEN ZIEN ?" +1700 PRINT"(J = ja <--> N = nee) "; +1710 GOSUB1900:IF(E<>74) AND(E<>78) THEN1710 +1720 PRINTIN$:RETURN +1800 GOSUB100:PRINT"***** ";T$(B); +1810 PRINT" *****":PRINT:RETURN +1900 GOSUB210:E=ASC(IN$):IFE>90 THENE=E-32 1910 RETURN -2000 VE=14:HO=0: GOSUB 110:PRINT R$;R$:PRINT R$;R$; -2010 GOSUB 110:PRINT "Noteer hier de juiste vorm van het" -2020 PRINT "werkwoord ";W$(J);" : ? ";:FOR B=1 TO 13 -2100 GOSUB 1900:IF E=13 THEN B=E: GOTO 2200 -2110 IF (E<65) OR(E>90) THEN 2100 -2120 PRINT CHR$(E);:Q(B)=E -2200 NEXT B:VE=G+2:HO=0:FOR E=1 TO LEN(Z$) -2210 B=ASC(MID$(Z$,E)):IF B<>Q(E) THEN E=40 -2220 IF Q(LEN(Z$)+1)<>32 THEN E=40 -2230 NEXT E: GOSUB 110:PRINT R$;R$: GOSUB 110 -2240 IF E<30 THEN PRINT " ** ";Z$:RETURN -2250 F=F+1:PRINT Z$;" (fout !)": GOTO 250 -2300 GOSUB 2500:B=6: GOSUB 1800 -2310 PRINT "Aantal goede antwoorden : ";10-F -2320 PRINT :IF F>0 THEN 2400 -2330 PRINT "UITSTEKEND, ";L$;" !":PRINT -2340 PRINT "Maak maar plaats voor iemand anders." -2350 PRINT "Tot de volgende keer !": GOSUB 2600: GOTO 2500 -2400 IF F<3 THEN PRINT "REDELIJK, ";L$;" !": GOTO 2500 -2410 PRINT "HET GAAT NIET ZO GOED, ";L$;" !":PRINT -2420 PRINT "Bestudeer de theorie nog maar eens." -2500 VE=14:HO=0: GOSUB 110:PRINT R$;R$:PRINT R$; -2510 PRINT "Druk op een toets. ";: GOSUB 210: GOTO 100 -2600 HO=0:FOR VE=12 TO 15: GOSUB 110:PRINT R$;R$;:NEXT VE -2610 VE=14: GOSUB 110:PRINT R$;"Even geduld ...": GOTO 270 -3000 GOSUB 1800:FOR G=0 TO 9: GOSUB 260:A=INT(15*RV)+41 -3010 GOSUB 1500: GOSUB 260:B=INT(20*RV)+1: GOSUB 260 -3020 ON INT(6*RV)+1 GOTO 3100,3200,3300,3400,3500,3600 -3100 Z$=W$(J): GOSUB 260:IF RV>.5 THEN PRINT C$(A); -3110 PRINT " ---- ";C$(B+20): GOTO 3800 -3200 GOSUB 260:B=INT(17*RV)+4 -3210 PRINT C$(A);" ---- ";C$(B): GOTO 3700 -3300 GOSUB 260:B=INT(3*RV)+1 -3310 PRINT "---- ";C$(B);" ";C$(A);" ?": GOTO 3800 -3400 GOSUB 260:B=INT(17*RV)+4 -3410 PRINT C$(B);" ---- ";C$(A): GOTO 3700 -3500 GOSUB 260:A=INT(17*RV)+4 -3510 PRINT "---- ";C$(A);" ?": GOTO 3700 -3600 PRINT C$(B);:IF B=1 THEN 3800 -3610 PRINT " ---- ";C$(A) -3700 IF E=0 THEN Z$=S$(J)+"T" -3800 GOSUB 2000:NEXT G: GOSUB 2300:IF F>2 THEN 6000 -3810 GOTO 7000 -4000 GOSUB 1800:FOR G=0 TO 9: GOSUB 1500:Z$=V$(J) -4010 GOSUB 260:A=INT(15*RV)+47: GOSUB 260 -4020 B=INT(20*RV)+1: GOSUB 260:RV=INT(5*RV)+1 -4030 ON RV GOTO 4100,4200,4300,4400,4500 -4100 PRINT C$(B);" ---- ": GOTO 4600 -4200 PRINT C$(B+20);" ----":Z$=Z$+"N": GOTO 4600 -4300 PRINT "---- ";C$(B);" ";C$(A);" ?": GOTO 4600 -4400 PRINT C$(B+20);" ---- ";C$(A):Z$=Z$+"N": GOTO 4600 -4500 PRINT "---- ";C$(B+20);" ";C$(A);" ?":Z$=Z$+"N" -4600 GOSUB 2000:NEXT G: GOSUB 2300:IF F>2 THEN 6000 -4610 GOTO 7000 -5000 GOSUB 1800:FOR G=0 TO 9: GOSUB 260 -5010 A=INT(20*RV)+47: GOSUB 260:B=INT(20*RV)+1 -5020 GOSUB 1500:Z$=P$(J): GOSUB 260:RV=INT(7*RV)+1 -5030 ON RV GOTO 5100,5200,5300,5400,5500,5600,5700 -5100 PRINT C$(B);" HAD ";C$(A);: GOTO 5800 -5200 PRINT "JE HEBT ";C$(A);: GOTO 5800 -5300 GOSUB 260:B=INT(3*RV)+1 -5310 PRINT C$(A);" HEB ";C$(B);: GOTO 5800 -5400 GOSUB 260:B=INT(17*RV)+4 -5410 PRINT C$(B);" HEEFT ";C$(A);: GOTO 5800 -5500 GOSUB 260:B=INT(17*RV)+4 -5510 PRINT C$(A);" HEEFT ";C$(B);: GOTO 5800 -5600 PRINT C$(A);" HEBBEN ";C$(B+20);: GOTO 5800 -5700 PRINT C$(B+20);" HADDEN ";C$(A); -5800 PRINT " ----.": GOSUB 2000 -5810 NEXT G: GOSUB 2300:IF F<3 THEN 7000 -6000 B=5:G=0: GOSUB 1800 -6010 PRINT "Weet je, wat een werkwoords-STAM is ?" -6020 GOSUB 1700:PRINT :IF E=74 THEN 6200 -6100 PRINT "De STAM is gelijk aan de IK-VORM." -6110 G=5: GOSUB 1500:PRINT " IK ";Z$ -6120 PRINT :PRINT "Stam : ";Z$ -6130 GOSUB 1600:B=5: GOSUB 1800:IF E=74 THEN 6100 -6140 PRINT "Geef nu van VIER werkwoorden de STAM." -6150 HO=0:F=0:FOR G=7 TO 10: GOSUB 1500 -6160 VE=G-3: GOSUB 110:PRINT G-6;" ";W$(J) -6170 GOSUB 2000:NEXT G: GOSUB 2500 -6180 IF F>0 THEN PRINT "Herhaling !":PRINT : GOTO 6100 -6200 B=1:G=0: GOSUB 1800: GOSUB 1500:PRINT " ";W$(J); -6210 PRINT " (voorbeeld)":PRINT :PRINT " IK ";Z$ -6220 PRINT " JIJ ";Z$;:IF E=0 THEN PRINT "T"; -6230 PRINT :PRINT " ";Z$;" JE ?" -6240 PRINT " HIJ ";Z$;:IF E=0 THEN PRINT "T"; -6250 PRINT :PRINT :PRINT " WIJ ";W$(J) -6260 PRINT "JULLIE ";W$(J):PRINT " ZIJ ";W$(J) -6270 GOSUB 1600:B=2:IF E=74 THEN 6200 -6300 GOSUB 1800:PRINT "STAM + -TE(N) OF STAM + -DE(N)" -6310 PRINT "Ezelsbruggetje : SCHOFTEKOP !" -6320 FOR G=3 TO 5: GOSUB 260:A=INT(20*RV+1) -6330 GOSUB 1500:PRINT C$(A);" ";V$(J):NEXT G -6340 FOR G=7 TO 9: GOSUB 260:A=INT(20*RV)+21 -6350 GOSUB 1500:PRINT C$(A);" ";V$(J);"N" -6360 NEXT G: GOSUB 1600:B=2:IF E=74 THEN 6300 -6400 B=3: GOSUB 1800:PRINT "De slot-letter van deze vorm" -6410 PRINT "kun je HOREN in de ";T$(2) -6420 PRINT "als je tenminste goed luistert.":PRINT : GOSUB 120 -6430 PRINT T$(2);:HO=20: GOSUB 110:PRINT T$(3):PRINT -6440 FOR G=6 TO 8: GOSUB 1500:PRINT V$(J);: GOSUB 120:HO=16 -6450 GOSUB 110:PRINT "-"RIGHT$(P$(J),1);"- ";P$(J) -6460 NEXT G: GOSUB 1600:F=1:IF E=74 THEN 6400 -7000 B=6: GOSUB 1800:PRINT :IF F>0 THEN 7100 -7010 G=0:PRINT "Toets je antwoorden nauwkeurig in." -7020 PRINT :PRINT "Verbeteringen zijn onmogelijk !" -7030 PRINT :PRINT "Noteer hieronder je VOORNAAM.":PRINT -7040 L$="":INPUT L$:IF L$="" THEN L$="BESTE ONBEKENDE" -7050 GOSUB 1800:IF LEN(L$)>15 THEN L$=LEFT$(L$,15) -7100 PRINT :FOR E=1 TO 3:PRINT E;" Oefening ";T$(E):PRINT -7110 NEXT E:PRINT 4;" ";T$(5);" (theorie)":PRINT :PRINT -7200 PRINT " Wat kies je, ";L$;" ? ";: GOSUB 1900 -7210 PRINT IN$:IF (E<49) OR(E>52) THEN 7200 -7220 F=0:B=E-48:ON B GOTO 3000,4000,5000,6000 +2000 VE=14:HO=0: GOSUB110:PRINTR$;R$:PRINTR$;R$; +2010 GOSUB110:PRINT"Noteer hier de juiste vorm van het" +2020 PRINT"werkwoord ";W$(J);" : ? ";:FORB=1 TO13 +2100 GOSUB1900:IFE=13 THENB=E: GOTO2200 +2110 IF(E<65) OR(E>90) THEN2100 +2120 PRINTCHR$(E);:Q(B)=E +2200 NEXTB:VE=G+2:HO=0:FORE=1 TOLEN(Z$) +2210 B=ASC(MID$(Z$,E)):IFB<>Q(E) THENE=40 +2220 IFQ(LEN(Z$)+1)<>32 THENE=40 +2230 NEXTE: GOSUB110:PRINTR$;R$: GOSUB110 +2240 IFE<30 THENPRINT" ** ";Z$:RETURN +2250 F=F+1:PRINTZ$;" (fout !)": GOTO250 +2300 GOSUB2500:B=6: GOSUB1800 +2310 PRINT"Aantal goede antwoorden : ";10-F +2320 PRINT:IFF>0 THEN2400 +2330 PRINT"UITSTEKEND, ";L$;" !":PRINT +2340 PRINT"Maak maar plaats voor iemand anders." +2350 PRINT"Tot de volgende keer !": GOSUB2600: GOTO2500 +2400 IFF<3 THENPRINT"REDELIJK, ";L$;" !": GOTO2500 +2410 PRINT"HET GAAT NIET ZO GOED, ";L$;" !":PRINT +2420 PRINT"Bestudeer de theorie nog maar eens." +2500 VE=14:HO=0: GOSUB110:PRINTR$;R$:PRINTR$; +2510 PRINT"Druk op een toets. ";: GOSUB210: GOTO100 +2600 HO=0:FORVE=12 TO15: GOSUB110:PRINTR$;R$;:NEXTVE +2610 VE=14: GOSUB110:PRINTR$;"Even geduld ...": GOTO270 +3000 GOSUB1800:FORG=0 TO9: GOSUB260:A=INT(15*RV)+41 +3010 GOSUB1500: GOSUB260:B=INT(20*RV)+1: GOSUB260 +3020 ONINT(6*RV)+1 GOTO3100,3200,3300,3400,3500,3600 +3100 Z$=W$(J): GOSUB260:IFRV>.5 THENPRINTC$(A); +3110 PRINT" ---- ";C$(B+20): GOTO3800 +3200 GOSUB260:B=INT(17*RV)+4 +3210 PRINTC$(A);" ---- ";C$(B): GOTO3700 +3300 GOSUB260:B=INT(3*RV)+1 +3310 PRINT"---- ";C$(B);" ";C$(A);" ?": GOTO3800 +3400 GOSUB260:B=INT(17*RV)+4 +3410 PRINTC$(B);" ---- ";C$(A): GOTO3700 +3500 GOSUB260:A=INT(17*RV)+4 +3510 PRINT"---- ";C$(A);" ?": GOTO3700 +3600 PRINTC$(B);:IFB=1 THEN3800 +3610 PRINT" ---- ";C$(A) +3700 IFE=0 THENZ$=S$(J)+"T" +3800 GOSUB2000:NEXTG: GOSUB2300:IFF>2 THEN6000 +3810 GOTO7000 +4000 GOSUB1800:FORG=0 TO9: GOSUB1500:Z$=V$(J) +4010 GOSUB260:A=INT(15*RV)+47: GOSUB260 +4020 B=INT(20*RV)+1: GOSUB260:RV=INT(5*RV)+1 +4030 ONRV GOTO4100,4200,4300,4400,4500 +4100 PRINTC$(B);" ---- ": GOTO4600 +4200 PRINTC$(B+20);" ----":Z$=Z$+"N": GOTO4600 +4300 PRINT"---- ";C$(B);" ";C$(A);" ?": GOTO4600 +4400 PRINTC$(B+20);" ---- ";C$(A):Z$=Z$+"N": GOTO4600 +4500 PRINT"---- ";C$(B+20);" ";C$(A);" ?":Z$=Z$+"N" +4600 GOSUB2000:NEXTG: GOSUB2300:IFF>2 THEN6000 +4610 GOTO7000 +5000 GOSUB1800:FORG=0 TO9: GOSUB260 +5010 A=INT(20*RV)+47: GOSUB260:B=INT(20*RV)+1 +5020 GOSUB1500:Z$=P$(J): GOSUB260:RV=INT(7*RV)+1 +5030 ONRV GOTO5100,5200,5300,5400,5500,5600,5700 +5100 PRINTC$(B);" HAD ";C$(A);: GOTO5800 +5200 PRINT"JE HEBT ";C$(A);: GOTO5800 +5300 GOSUB260:B=INT(3*RV)+1 +5310 PRINTC$(A);" HEB ";C$(B);: GOTO5800 +5400 GOSUB260:B=INT(17*RV)+4 +5410 PRINTC$(B);" HEEFT ";C$(A);: GOTO5800 +5500 GOSUB260:B=INT(17*RV)+4 +5510 PRINTC$(A);" HEEFT ";C$(B);: GOTO5800 +5600 PRINTC$(A);" HEBBEN ";C$(B+20);: GOTO5800 +5700 PRINTC$(B+20);" HADDEN ";C$(A); +5800 PRINT" ----.": GOSUB2000 +5810 NEXTG: GOSUB2300:IFF<3 THEN7000 +6000 B=5:G=0: GOSUB1800 +6010 PRINT"Weet je, wat een werkwoords-STAM is ?" +6020 GOSUB1700:PRINT:IFE=74 THEN6200 +6100 PRINT"De STAM is gelijk aan de IK-VORM." +6110 G=5: GOSUB1500:PRINT" IK ";Z$ +6120 PRINT:PRINT"Stam : ";Z$ +6130 GOSUB1600:B=5: GOSUB1800:IFE=74 THEN6100 +6140 PRINT"Geef nu van VIER werkwoorden de STAM." +6150 HO=0:F=0:FORG=7 TO10: GOSUB1500 +6160 VE=G-3: GOSUB110:PRINTG-6;" ";W$(J) +6170 GOSUB2000:NEXTG: GOSUB2500 +6180 IFF>0 THENPRINT"Herhaling !":PRINT: GOTO6100 +6200 B=1:G=0: GOSUB1800: GOSUB1500:PRINT" ";W$(J); +6210 PRINT" (voorbeeld)":PRINT:PRINT" IK ";Z$ +6220 PRINT" JIJ ";Z$;:IFE=0 THENPRINT"T"; +6230 PRINT:PRINT" ";Z$;" JE ?" +6240 PRINT" HIJ ";Z$;:IFE=0 THENPRINT"T"; +6250 PRINT:PRINT:PRINT" WIJ ";W$(J) +6260 PRINT"JULLIE ";W$(J):PRINT" ZIJ ";W$(J) +6270 GOSUB1600:B=2:IFE=74 THEN6200 +6300 GOSUB1800:PRINT"STAM + -TE(N) OF STAM + -DE(N)" +6310 PRINT"Ezelsbruggetje : SCHOFTEKOP !" +6320 FORG=3 TO5: GOSUB260:A=INT(20*RV+1) +6330 GOSUB1500:PRINTC$(A);" ";V$(J):NEXTG +6340 FORG=7 TO9: GOSUB260:A=INT(20*RV)+21 +6350 GOSUB1500:PRINTC$(A);" ";V$(J);"N" +6360 NEXTG: GOSUB1600:B=2:IFE=74 THEN6300 +6400 B=3: GOSUB1800:PRINT"De slot-letter van deze vorm" +6410 PRINT"kun je HOREN in de ";T$(2) +6420 PRINT"als je tenminste goed luistert.":PRINT: GOSUB120 +6430 PRINTT$(2);:HO=20: GOSUB110:PRINTT$(3):PRINT +6440 FORG=6 TO8: GOSUB1500:PRINTV$(J);: GOSUB120:HO=16 +6450 GOSUB110:PRINT"-"RIGHT$(P$(J),1);"- ";P$(J) +6460 NEXTG: GOSUB1600:F=1:IFE=74 THEN6400 +7000 B=6: GOSUB1800:PRINT:IFF>0 THEN7100 +7010 G=0:PRINT"Toets je antwoorden nauwkeurig in." +7020 PRINT:PRINT"Verbeteringen zijn onmogelijk !" +7030 PRINT:PRINT"Noteer hieronder je VOORNAAM.":PRINT +7040 L$="":INPUTL$:IFL$="" THENL$="BESTE ONBEKENDE" +7050 GOSUB1800:IFLEN(L$)>15 THENL$=LEFT$(L$,15) +7100 PRINT:FORE=1 TO3:PRINTE;" Oefening ";T$(E):PRINT +7110 NEXTE:PRINT4;" ";T$(5);" (theorie)":PRINT:PRINT +7200 PRINT" Wat kies je, ";L$;" ? ";: GOSUB1900 +7210 PRINTIN$:IF(E<49) OR(E>52) THEN7200 +7220 F=0:B=E-48:ONB GOTO3000,4000,5000,6000 25000 DATA "TEGENWOORDIGE TIJD","VERLEDEN TIJD" 25010 DATA "VOLTOOID DEELWOORD","OEFENING" 25020 DATA "SPEL-REGELS","SPELEN met SPELLING" @@ -205,4 +206,3 @@ 30050 REM Gebruikte BASICODE-routines 30060 REM 100 110 120 210 250 260 270 30070 REM 1987 (C) NOS - Hobbyscoop - \ No newline at end of file diff --git a/Best_of_Basicode_4/07_Invul-1.bc2 b/Best_of_Basicode_4/07_Invul-1.bc2 index 8b1c5e4..1b50e6b 100644 --- a/Best_of_Basicode_4/07_Invul-1.bc2 +++ b/Best_of_Basicode_4/07_Invul-1.bc2 @@ -1,96 +1,97 @@ -1000 A=1000:GOTO 20:REM "INVUL-1" -1010 DIM IV$(10),IV(10),DT(201),NR(201):GOSUB 100:MX=0 -1020 GOSUB 100:PRINT " EVEN GEDULD A.U.B" + +1000 A=1000:GOTO20:REM"INVUL-1" +1010 DIMIV$(10),IV(10),DT(201),NR(201):GOSUB100:MX=0 +1020 GOSUB100:PRINT" EVEN GEDULD A.U.B" 1030 REM ---DATA regels tellen --- -1040 MX=MX+1:READ A$:IF A$<>"*" THEN NR(MX)=MX:GOTO 1040 -1050 GOSUB 100 +1040 MX=MX+1:READA$:IFA$<>"*" THENNR(MX)=MX:GOTO1040 +1050 GOSUB100 1060 REM --- scherm klaarzetten --- -1070 HO=2:VE=7:GOSUB 110:PRINT "VUL IN: a of o" +1070 HO=2:VE=7:GOSUB110:PRINT"VUL IN: a of o" 1080 HZ=0:VZ=12:HG=7:VG=16:HF=24 -1085 HO=HZ:VE=VZ:GOSUB 110:PRINT " EVEN GEDULD" -1090 HO=0:VE=VG:GOSUB 110 -1100 PRINT " GOED 0 FOUT 0 "; +1085 HO=HZ:VE=VZ:GOSUB110:PRINT" EVEN GEDULD" +1090 HO=0:VE=VG:GOSUB110 +1100 PRINT" GOED 0 FOUT 0 "; 1110 REM --- DATA volgorde schudden -1120 GOSUB 1390 +1120 GOSUB1390 1130 FO=0:GO=0:TT=0 1140 REM --- zin ophalen uit DATA --- -1150 TT=TT+1:IF TT=MX THEN GOSUB 1590:GOTO 1050 -1160 RESTORE :FOR N=1 TO NR(TT):READ A$:NEXT N +1150 TT=TT+1:IFTT=MX THENGOSUB1590:GOTO1050 +1160 RESTORE:FORN=1 TONR(TT):READA$:NEXTN 1170 LA=LEN(A$):N=0:S=0 -1180 N=N+1:IF N=LA+1 THEN 1240 -1190 IF MID$(A$,N,1)<>"-" THEN 1180 +1180 N=N+1:IFN=LA+1 THEN1240 +1190 IFMID$(A$,N,1)<>"-" THEN1180 1200 IV(S)=N-1:IV$(S)=MID$(A$,N+1,1) 1210 B$=LEFT$(A$,N):C$=RIGHT$(A$,LA-N-1):A$=B$+C$ 1220 LA=LA-1:S=S+1 -1230 GOTO 1180 +1230 GOTO1180 1240 REM --- analyse klaar! --- -1250 HO=HZ:VE=VZ:GOSUB 110 -1260 PRINT A$; -1270 FOR M=0 TO S-1 -1280 HO=IV(M):VE=VZ:GOSUB 110 -1290 GOSUB 210: -1300 IF IN$<>IV$(M) THEN FO=FO+1:GOSUB 1530:GOTO 1290 -1310 PRINT IN$:GO=GO+1 -1320 GOSUB 1530 -1330 GOSUB 1490 -1340 NEXT M -1350 HO=HZ:VE=VZ:GOSUB 110 -1360 PRINT " " -1370 GOTO 1150 +1250 HO=HZ:VE=VZ:GOSUB110 +1260 PRINTA$; +1270 FORM=0 TOS-1 +1280 HO=IV(M):VE=VZ:GOSUB110 +1290 GOSUB210: +1300 IFIN$<>IV$(M) THENFO=FO+1:GOSUB1530:GOTO1290 +1310 PRINTIN$:GO=GO+1 +1320 GOSUB1530 +1330 GOSUB1490 +1340 NEXTM +1350 HO=HZ:VE=VZ:GOSUB110 +1360 PRINT" " +1370 GOTO1150 1380 : 1390 REM === DATA NRS SCHUDDEN === -1400 FOR N=1 TO MX:DT(N)=N:NEXT N -1410 FOR N=MX-1 TO 2 STEP -1 -1420 GOSUB 260:X=1+INT(RV*N) +1400 FORN=1 TOMX:DT(N)=N:NEXTN +1410 FORN=MX-1 TO2 STEP-1 +1420 GOSUB260:X=1+INT(RV*N) 1430 NR(N)=DT(X) -1440 FOR M=X TO N-1:DT(M)=DT(M+1) -1450 NEXT M:NEXT N +1440 FORM=X TON-1:DT(M)=DT(M+1) +1450 NEXTM:NEXTN 1460 NR(1)=DT(1) 1470 RETURN 1480 : 1490 REM === VETRAGINGSLUS === -1500 FOR W=1 TO 1000:NEXT W +1500 FORW=1 TO1000:NEXTW 1510 RETURN 1515 REM Aanpassen aan uw computer 1520 : 1530 REM === PRINT DE SCORE === -1540 HO=HG:VE=VG:GOSUB 110:PRINT ;GO -1550 HO=HF:GOSUB 110:PRINT ;FO -1560 HO=IV(M):VE=VZ:GOSUB 110 +1540 HO=HG:VE=VG:GOSUB110:PRINT;GO +1550 HO=HF:GOSUB110:PRINT;FO +1560 HO=IV(M):VE=VZ:GOSUB110 1570 RETURN 1580 : 1590 REM === EINDE VAN EEN SERIE === -1600 HO=2:VE=20:GOSUB 110 -1610 IF FO=0 THEN PRINT "GOED GEDAAN!"; -1620 PRINT " - NOG 'N KEER?"; -1630 GOSUB 210:IF (IN$="N") OR(IN$="n") THEN END -1640 IF (IN$<>"J") AND(IN$<>"j") THEN 1630 -1650 GOSUB 110:PRINT " " +1600 HO=2:VE=20:GOSUB110 +1610 IFFO=0 THENPRINT"GOED GEDAAN!"; +1620 PRINT" - NOG 'N KEER?"; +1630 GOSUB210:IF(IN$="N") OR(IN$="n") THENEND +1640 IF(IN$<>"J") AND(IN$<>"j") THEN1630 +1650 GOSUB110:PRINT" " 1660 RETURN -1690 REM ============================== -25000 DATA "Jan heeft een bl-auwe jas." -25010 DATA "Dat is een heel -oud geb-ouw." -25020 DATA "De p-auw heeft bl-auwe veren." -25030 DATA "Die bl-auwe -auto is van mijn oom." -25040 DATA "Doe niet zo fl-auw, geef g-auw hier!" -25050 DATA "Je moet niet zo doord-ouwen." -25060 DATA "Wil je dat bl-auwe papier opv-ouwen?" -25070 DATA "Deze -oude hond vertr-ouwt niemand." -25080 DATA "De boekh-ouder keek heel ben-auwd." -25090 DATA "Zijn g-ouden ring was er niet meer." -25100 DATA "De bierbr-ouwerij is verb-ouwd." -25110 DATA "Geef mij het z-out eens aan." -25120 DATA "Die m-ouwen zijn veel te n-auw." -25130 DATA "Die -oude mevr-ouw heeft het k-oud." -25140 DATA "Gr-auwe ganzen zijn mooie vogels." -25150 DATA "Ik h-oud niet zo van haverm-out." -25160 DATA "G-auw en goed zijn twee dingen!" -25170 DATA "Z-ou ik nu g-auw klaar zijn?" -25180 DATA "Piet zag bl-auw van de k-ou!" -25190 DATA "Wat loopt die poes toch te mi-auwen!" -25200 DATA "Koeien en geiten zijn herk-auwers." -25210 DATA "Je hoeft niet zo te sn-auwen." -25999 DATA "*" +1690 REM============================== +25000 DATA"Jan heeft een bl-auwe jas." +25010 DATA"Dat is een heel -oud geb-ouw." +25020 DATA"De p-auw heeft bl-auwe veren." +25030 DATA"Die bl-auwe -auto is van mijn oom." +25040 DATA"Doe niet zo fl-auw, geef g-auw hier!" +25050 DATA"Je moet niet zo doord-ouwen." +25060 DATA"Wil je dat bl-auwe papier opv-ouwen?" +25070 DATA"Deze -oude hond vertr-ouwt niemand." +25080 DATA"De boekh-ouder keek heel ben-auwd." +25090 DATA"Zijn g-ouden ring was er niet meer." +25100 DATA"De bierbr-ouwerij is verb-ouwd." +25110 DATA"Geef mij het z-out eens aan." +25120 DATA"Die m-ouwen zijn veel te n-auw." +25130 DATA"Die -oude mevr-ouw heeft het k-oud." +25140 DATA"Gr-auwe ganzen zijn mooie vogels." +25150 DATA"Ik h-oud niet zo van haverm-out." +25160 DATA"G-auw en goed zijn twee dingen!" +25170 DATA"Z-ou ik nu g-auw klaar zijn?" +25180 DATA"Piet zag bl-auw van de k-ou!" +25190 DATA"Wat loopt die poes toch te mi-auwen!" +25200 DATA"Koeien en geiten zijn herk-auwers." +25210 DATA"Je hoeft niet zo te sn-auwen." +25999 DATA"*" 30000 REM Geschikt voor 1 letter-invul 30010 REM invullen met 1 toetsaanslag 30020 REM zonder RETURN @@ -100,13 +101,12 @@ 30060 REM MAX 200 DATAREGELS 30070 REM LAATSTE DATA MOET "*" ZIJN 30080 REM Regel 1500 aanpassen (tempo!) -30090 REM +30090 REM 30100 REM GEMAAKT 7 JANUARI 1987 30110 REM OP EEN BBC B COMPUTER -30120 REM +30120 REM 30130 REM door Ch.W. Brederode 30140 REM Von Bonninghausenlaan 33 30150 REM 2161 ES LISSE -30160 REM +30160 REM 30170 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/08_Invul-2.bc2 b/Best_of_Basicode_4/08_Invul-2.bc2 index fd21fe0..0460bcd 100644 --- a/Best_of_Basicode_4/08_Invul-2.bc2 +++ b/Best_of_Basicode_4/08_Invul-2.bc2 @@ -1,109 +1,110 @@ -1000 A=1000:GOTO 20:REM "INVUL-2" -1010 DIM NR(201),DT(201),ZI$(10),ZL(10),IV$(10),TG(10):N=0 -1020 N=N+1:READ A$ -1030 IF A$<>"*" THEN 1020 + +1000 A=1000:GOTO20:REM"INVUL-2" +1010 DIMNR(201),DT(201),ZI$(10),ZL(10),IV$(10),TG(10):N=0 +1020 N=N+1:READA$ +1030 IFA$<>"*" THEN1020 1040 MX=N -1050 GOSUB 100:HO=2:VE=7:GOSUB 110 -1060 PRINT "VUL IN: ";:GOSUB 1860 -1070 HO=2:VE=9:GOSUB 110 -1080 PRINT "(na 1 letter een spatie meetikken)" +1050 GOSUB100:HO=2:VE=7:GOSUB110 +1060 PRINT"VUL IN: ";:GOSUB1860 +1070 HO=2:VE=9:GOSUB110 +1080 PRINT"(na 1 letter een spatie meetikken)" 1090 HZ=0:VZ=12:HG=7:VG=16:HF=24 -1100 HO=0:VE=VG:GOSUB 110 -1110 PRINT " GOED 0 FOUT 0 "; -1120 RESTORE :FO=0:GO=0:TT=0:GOSUB 1590 +1100 HO=0:VE=VG:GOSUB110 +1110 PRINT" GOED 0 FOUT 0 "; +1120 RESTORE:FO=0:GO=0:TT=0:GOSUB1590 1130 REM --- een zin uit DATA halen -- -1140 TT=TT+1:IF TT=MX THEN GOSUB 1780:GOTO 1050 -1150 RESTORE :FOR N=1 TO NR(TT):READ A$:NEXT N +1140 TT=TT+1:IFTT=MX THENGOSUB1780:GOTO1050 +1150 RESTORE:FORN=1 TONR(TT):READA$:NEXTN 1160 REM --- de zin ontleden --- 1170 LA=LEN(A$):N=0:S=0:B=1 -1180 N=N+1:IF N=LA+1 THEN 1260 -1190 E$=MID$(A$,N,1):IF (E$<>"-") AND(E$<>"=") THEN 1180 -1200 E=1:TG(S)=1:IF E$="=" THEN E=2:TG(S)=0 +1180 N=N+1:IFN=LA+1 THEN1260 +1190 E$=MID$(A$,N,1):IF(E$<>"-") AND(E$<>"=") THEN1180 +1200 E=1:TG(S)=1:IFE$="=" THENE=2:TG(S)=0 1210 ZL(S)=N-B:IV$(S)=MID$(A$,N+1,E) 1211 IV$(S)=LEFT$(IV$(S)+" ",2) 1220 ZI$(S)=MID$(A$,B,N-B) 1230 B=N+E+1 1240 S=S+1 -1250 GOTO 1180 +1250 GOTO1180 1260 ZI$(S)=MID$(A$,B,N-B):ZL(S)=(N-B) 1270 REM --- ontleden klaar! --- 1280 : 1290 HZ=0 1300 REM --- invulroutine --- -1310 FOR M=0 TO S-1 +1310 FORM=0 TOS-1 1320 REM --- vorige zin wissen --- -1330 HO=HZ:VE=VZ:GOSUB 110 -1340 PRINT " "; -1350 GOSUB 110 +1330 HO=HZ:VE=VZ:GOSUB110 +1340 PRINT" "; +1350 GOSUB110 1360 REM --- nieuwe zin printen --- -1370 PRINT ZI$(M);:HZ=HZ+ZL(M):HO=HZ:GOSUB 110 -1380 FOR N=M+1 TO S:PRINT "--";ZI$(N); -1390 NEXT N:PRINT " ";:GOSUB 110 +1370 PRINTZI$(M);:HZ=HZ+ZL(M):HO=HZ:GOSUB110 +1380 FORN=M+1 TOS:PRINT"--";ZI$(N); +1390 NEXTN:PRINT" ";:GOSUB110 1400 REM --- invulletters intoetsen -- -1410 GOSUB 210:IF ASC(IN$)<33 THEN 1410 -1420 PRINT IN$;:D$=IN$ -1430 GOSUB 210:IF ASC(IN$)<32 THEN 1430 -1440 PRINT IN$;:D$=D$+IN$ +1410 GOSUB210:IFASC(IN$)<33 THEN1410 +1420 PRINTIN$;:D$=IN$ +1430 GOSUB210:IFASC(IN$)<32 THEN1430 +1440 PRINTIN$;:D$=D$+IN$ 1450 REM --- vergelijken --- -1460 IF D$=IV$(M) THEN HZ=HZ+2-TG(M):GOTO 1510 +1460 IFD$=IV$(M) THENHZ=HZ+2-TG(M):GOTO1510 1470 REM --- invoer was fout --- -1480 FO=FO+1:GOSUB 1720:GOSUB 110 -1490 PRINT "--";:GOSUB 110:GOTO 1410 +1480 FO=FO+1:GOSUB1720:GOSUB110 +1490 PRINT"--";:GOSUB110:GOTO1410 1500 REM --- invoer was goed --- 1510 GO=GO+1 -1520 GOSUB 1720 -1530 NEXT M -1540 HO=HZ:VE=VZ:GOSUB 110 -1550 PRINT ZI$(M);" "; -1560 GOSUB 1680 -1570 GOTO 1140 +1520 GOSUB1720 +1530 NEXTM +1540 HO=HZ:VE=VZ:GOSUB110 +1550 PRINTZI$(M);" "; +1560 GOSUB1680 +1570 GOTO1140 1575 : 1580 REM === DATA NRS SCHUDDEN === -1590 FOR N=1 TO MX:DT(N)=N:NEXT N -1600 FOR N=MX-1 TO 2 STEP -1 -1610 GOSUB 260:X=1+INT(RV*N) +1590 FORN=1 TOMX:DT(N)=N:NEXTN +1600 FORN=MX-1 TO2 STEP-1 +1610 GOSUB260:X=1+INT(RV*N) 1620 NR(N)=DT(X) -1630 FOR M=X TO N-1:DT(M)=DT(M+1) -1640 NEXT M:NEXT N +1630 FORM=X TON-1:DT(M)=DT(M+1) +1640 NEXTM:NEXTN 1650 NR(1)=DT(1) 1660 RETURN 1670 : 1680 REM === WACHTLUS NA DE ZIN === -1690 FOR W=1 TO 1000:NEXT W +1690 FORW=1 TO1000:NEXTW 1700 RETURN 1710 : 1720 REM === PRINT DE SCORE === -1730 HO=HG:VE=VG:GOSUB 110:PRINT ;GO -1740 HO=HF:GOSUB 110:PRINT ;FO -1750 HO=HZ:VE=VZ:GOSUB 110 +1730 HO=HG:VE=VG:GOSUB110:PRINT;GO +1740 HO=HF:GOSUB110:PRINT;FO +1750 HO=HZ:VE=VZ:GOSUB110 1760 RETURN 1770 : 1780 REM === EINDE VAN EEN SERIE === -1790 HO=2:VE=20:GOSUB 110:IF FO=0 THEN PRINT "GOED GEDAAN! "; -1800 PRINT " - NOG 'N KEER?"; -1810 GOSUB 210:IF (IN$="N") OR(IN$="n") THEN END -1820 IF (IN$<>"J") AND(IN$<>"j") THEN 1810 -1830 GOSUB 110:PRINT " ";:HO=0:VE=VZ -1832 GOSUB 110 -1835 PRINT " EVEN GEDULD "; +1790 HO=2:VE=20:GOSUB110:IFFO=0 THENPRINT"GOED GEDAAN! "; +1800 PRINT" - NOG 'N KEER?"; +1810 GOSUB210:IF(IN$="N") OR(IN$="n") THENEND +1820 IF(IN$<>"J") AND(IN$<>"j") THEN1810 +1830 GOSUB110:PRINT" ";:HO=0:VE=VZ +1832 GOSUB110 +1835 PRINT" EVEN GEDULD "; 1840 RETURN -1850 REM ================================ +1850 REM================================ 1860 REM === DATA KOPREGEL === <<<<<< -1870 PRINT "d , t , dd of tt" +1870 PRINT"d , t , dd of tt" 1880 RETURN 1890 REM >> AANPASSEN AAN DE OPGAVE << -1900 REM ================================ -25000 DATA "Het verbran-de huis wor=dt herbouw-d." -25010 DATA "De man verbran=dde de dode takken." -25020 DATA "De bal belan=dde in de sloo-t." -25030 DATA "Wor=dt de tekst nu verander-d?" -25040 DATA "De ingevul-de lijsten zijn verzamel-d." -25050 DATA "De voetbalwedstrijd wor=dt afgelas-t." -25060 DATA "De fiscus belas=tte alle inkomens." -25070 DATA "Wor-d jij daar kwaa-d over?" -25080 DATA "Hij wor=dt nooit kwaad." -25090 DATA "Kom onmi=ddellijk van dat dak af." -29999 DATA "*" +1900 REM================================ +25000 DATA"Het verbran-de huis wor=dt herbouw-d." +25010 DATA"De man verbran=dde de dode takken." +25020 DATA"De bal belan=dde in de sloo-t." +25030 DATA"Wor=dt de tekst nu verander-d?" +25040 DATA"De ingevul-de lijsten zijn verzamel-d." +25050 DATA"De voetbalwedstrijd wor=dt afgelas-t." +25060 DATA"De fiscus belas=tte alle inkomens." +25070 DATA"Wor-d jij daar kwaa-d over?" +25080 DATA"Hij wor=dt nooit kwaad." +25090 DATA"Kom onmi=ddellijk van dat dak af." +29999 DATA"*" 30000 REM Voor groepen van 1 of 2 30010 REM letters in elke positie 30020 REM '-' VOOR enkele letters @@ -113,13 +114,12 @@ 30060 REM Aantal DATA-regels MAX 200 30070 REM LAATSTE DATA MOET "*" ZIJN 30080 REM ---> tempo REGEL 1690 <--- -30090 REM +30090 REM 32000 REM GEMAAKT 7 JANUARI 1987 32010 REM OP EEN BBC B COMPUTER -32020 REM +32020 REM 32030 REM door Ch.W. Brederode 32040 REM Von Bonninghausenlaan 32050 REM 2161 ES LISSE -32060 REM +32060 REM 32070 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/09_Letterbak.bc2 b/Best_of_Basicode_4/09_Letterbak.bc2 index f2bfc7c..039c28d 100644 --- a/Best_of_Basicode_4/09_Letterbak.bc2 +++ b/Best_of_Basicode_4/09_Letterbak.bc2 @@ -1,109 +1,110 @@ -1000 A=500:GOTO 20:REM "LETTERBAK" -1010 DIM A$(27),B$(27),C(4) -1020 GOSUB 100:PRINT -1030 GOSUB 2080 + +1000 A=500:GOTO20:REM"LETTERBAK" +1010 DIMA$(27),B$(27),C(4) +1020 GOSUB100:PRINT +1030 GOSUB2080 1040 : 1050 REM === instructies === -1060 PRINT "==================<==============":PRINT -1070 PRINT " HELP! DEZE COMPUTER SCHUIFT" -1080 PRINT :PRINT " HET HELE ALFABET DOOR ELKAAR!":PRINT -1090 PRINT "=================================":PRINT -1100 PRINT " Maak jij het weer in orde?":PRINT -1110 PRINT " Je hoeft alleen maar de letters":PRINT -1120 PRINT " aan te toetsen die je in de lege":PRINT -1130 PRINT " plek wilt schuiven.":PRINT :PRINT -1140 PRINT "=================================":PRINT +1060 PRINT"==================<==============":PRINT +1070 PRINT" HELP! DEZE COMPUTER SCHUIFT" +1080 PRINT:PRINT" HET HELE ALFABET DOOR ELKAAR!":PRINT +1090 PRINT"=================================":PRINT +1100 PRINT" Maak jij het weer in orde?":PRINT +1110 PRINT" Je hoeft alleen maar de letters":PRINT +1120 PRINT" aan te toetsen die je in de lege":PRINT +1130 PRINT" plek wilt schuiven.":PRINT:PRINT +1140 PRINT"=================================":PRINT 1150 : 1160 REM === inname aantal === -1170 PRINT " HOEVEEL KEER MAG DE COMPUTER" -1180 PRINT :PRINT " SCHUIVEN ";:INPUT I -1190 GOSUB 100 +1170 PRINT" HOEVEEL KEER MAG DE COMPUTER" +1180 PRINT:PRINT" SCHUIVEN ";:INPUTI +1190 GOSUB100 1200 : 1210 REM === letterbak tekenen === -1220 HO=LI+3:VE=8:GOSUB 110 +1220 HO=LI+3:VE=8:GOSUB110 1230 A$="+-+-+-+-+-+-+-+-+-+" 1240 B$="! ! ! ! ! ! ! ! ! !" -1250 PRINT A$ -1260 FOR VE=9 TO 13:GOSUB 110:PRINT B$ -1270 VE=VE+1:GOSUB 110:PRINT A$:NEXT VE +1250 PRINTA$ +1260 FORVE=9 TO13:GOSUB110:PRINTB$ +1270 VE=VE+1:GOSUB110:PRINTA$:NEXTVE 1280 : 1290 REM === A$() en B$() vullen === -1300 FOR N=1 TO 26:A$(N)=CHR$(64+N):B$(N)=A$(N):NEXT N +1300 FORN=1 TO26:A$(N)=CHR$(64+N):B$(N)=A$(N):NEXTN 1310 A$(27)=" ":B$(27)=" " 1320 : 1330 REM === letters in bak zetten == -1340 FOR NR=1 TO 27:GOSUB 1820:NEXT NR +1340 FORNR=1 TO27:GOSUB1820:NEXTNR 1350 : 1360 REM === teksten === -1370 HO=LI+4:VE=2:GOSUB 110:PRINT "L E T T E R B A K" -1380 HO=LI+10:VE=4:GOSUB 110:PRINT "0 x" -1390 HO=LI+4:VE=6:GOSUB 110:PRINT "G E S C H O V E N" -1400 HO=LI:VE=18:GOSUB 110:PRINT "J I J H E B T 0 x" -1410 HO=LI+4:VE=20:GOSUB 110:PRINT "G E S C H O V E N" +1370 HO=LI+4:VE=2:GOSUB110:PRINT"L E T T E R B A K" +1380 HO=LI+10:VE=4:GOSUB110:PRINT"0 x" +1390 HO=LI+4:VE=6:GOSUB110:PRINT"G E S C H O V E N" +1400 HO=LI:VE=18:GOSUB110:PRINT"J I J H E B T 0 x" +1410 HO=LI+4:VE=20:GOSUB110:PRINT"G E S C H O V E N" 1420 : 1430 REM === A$() in de war maken === 1440 D=27:E=0 -1450 FOR N=1 TO I -1460 GOSUB 1900 -1470 GOSUB 260:X=1+INT(RV*(B-1)) -1480 IF C(X)=E THEN 1470 +1450 FORN=1 TOI +1460 GOSUB1900 +1470 GOSUB260:X=1+INT(RV*(B-1)) +1480 IFC(X)=E THEN1470 1490 A$(D)=A$(C(X)):A$(C(X))=" " -1500 NR=C(X):GOSUB 1820:NR=D:GOSUB 1820 +1500 NR=C(X):GOSUB1820:NR=D:GOSUB1820 1510 E=D:D=C(X) -1520 HO=LI+10:VE=4:GOSUB 110 -1530 PRINT ;N;" x" -1540 NEXT N:T=0 +1520 HO=LI+10:VE=4:GOSUB110 +1530 PRINT;N;" x" +1540 NEXTN:T=0 1550 : 1560 REM === DE SPEEL ROUTINE === 1570 F=0:REM foutvlag als A$()<>B$() 1580 REM === alles al op z'n plaats?== -1590 FOR N=1 TO 27:IF A$(N)<>B$(N) THEN F=1 -1600 NEXT N -1610 IF F=0 THEN GOSUB 2020:GOTO 1020 +1590 FORN=1 TO27:IFA$(N)<>B$(N) THENF=1 +1600 NEXTN +1610 IFF=0 THENGOSUB2020:GOTO1020 1620 : 1630 REM === zoek leeg hokje === 1640 D=1 -1650 IF A$(D)<>" " THEN D=D+1:GOTO 1650 +1650 IFA$(D)<>" " THEND=D+1:GOTO1650 1660 REM === wie zijn de buren? === -1670 GOSUB 1900 +1670 GOSUB1900 1680 REM === letter intoetsen === -1690 GOSUB 210 +1690 GOSUB210 1700 REM === is dit 'n buurletter? === 1710 S=0 -1720 IF IN$=A$(BA) THEN A$(D)=A$(BA):A$(BA)=" ":S=BA -1730 IF IN$=A$(BB) THEN A$(D)=A$(BB):A$(BB)=" ":S=BB -1740 IF IN$=A$(BC) THEN A$(D)=A$(BC):A$(BC)=" ":S=BC -1750 IF IN$=A$(BD) THEN A$(D)=A$(BD):A$(BD)=" ":S=BD -1760 IF S=0 THEN 1790 -1770 NR=S:GOSUB 1820:NR=D:GOSUB 1820 -1780 T=T+1:HO=LI+18:VE=18:GOSUB 110:PRINT ;T -1790 GOTO 1560 +1720 IFIN$=A$(BA) THENA$(D)=A$(BA):A$(BA)=" ":S=BA +1730 IFIN$=A$(BB) THENA$(D)=A$(BB):A$(BB)=" ":S=BB +1740 IFIN$=A$(BC) THENA$(D)=A$(BC):A$(BC)=" ":S=BC +1750 IFIN$=A$(BD) THENA$(D)=A$(BD):A$(BD)=" ":S=BD +1760 IFS=0 THEN1790 +1770 NR=S:GOSUB1820:NR=D:GOSUB1820 +1780 T=T+1:HO=LI+18:VE=18:GOSUB110:PRINT;T +1790 GOTO1560 1810 : 1820 REM === SUBR.A$(NR)PRINTEN === 1830 HO=LI+2+2*NR -1840 IF HO>(LI+20) THEN HO=HO-18:GOTO 1840 +1840 IFHO>(LI+20) THENHO=HO-18:GOTO1840 1850 VE=9+2*INT((NR-1)/9) -1860 GOSUB 110:PRINT A$(NR) -1870 GOSUB 2140:REM --- vertraging -- +1860 GOSUB110:PRINTA$(NR) +1870 GOSUB2140:REM --- vertraging -- 1880 RETURN 1890 : 1900 REM === SUBR.BUURHOKJES ZOEKEN == 1910 B=1 -1920 BA=D+9:IF BA>27 THEN BA=0:GOTO 1940 +1920 BA=D+9:IFBA>27 THENBA=0:GOTO1940 1930 C(B)=BA:B=B+1 -1940 BB=D-9:IF BB<1 THEN BB=0:GOTO 1960 +1940 BB=D-9:IFBB<1 THENBB=0:GOTO1960 1950 C(B)=BB:B=B+1 -1960 BC=D+1:IF (BC=10) OR(BC=19) OR(BC=28) THEN BC=0:GOTO 1980 +1960 BC=D+1:IF(BC=10) OR(BC=19) OR(BC=28) THENBC=0:GOTO1980 1970 C(B)=BC:B=B+1 -1980 BD=D-1:IF (BD=0) OR(BD=9) OR(BD=18) THEN BD=0:GOTO 2000 +1980 BD=D-1:IF(BD=0) OR(BD=9) OR(BD=18) THENBD=0:GOTO2000 1990 C(B)=BD:B=B+1 2000 RETURN 2010 : 2020 REM === SUBR. 'KLAAR!' === -2030 HO=LI+3:VE=16:GOSUB 110:PRINT "--> K L A A R ! <--" -2040 HO=LI+6:VE=22:GOSUB 110:PRINT "NOG 'N KEER?"; -2050 GOSUB 210:IF (IN$="N") OR(IN$="n") THEN END -2055 IF (IN$<>"J") AND(IN$<>"j") THEN 2050 +2030 HO=LI+3:VE=16:GOSUB110:PRINT"--> K L A A R ! <--" +2040 HO=LI+6:VE=22:GOSUB110:PRINT"NOG 'N KEER?"; +2050 GOSUB210:IF(IN$="N") OR(IN$="n") THENEND +2055 IF(IN$<>"J") AND(IN$<>"j") THEN2050 2060 RETURN 2070 : 2080 REM === CENTREREN EN CURSOR === @@ -113,15 +114,14 @@ 2120 REM aanpassen aan uw computer 2130 : 2140 REM === SUBR.VERTRAGINGSLUS === -2150 FOR W=1 TO 100:NEXT W +2150 FORW=1 TO100:NEXTW 2160 RETURN 2170 REM aanpassen aan uw computer 2180 : 30000 REM GEMAAKT 5 JANUARI 1987 30010 REM OP EEN BBC B COMPUTER -30020 REM +30020 REM 30030 REM door Ch.W.Brederode 30040 REM Von Bonninghausenlaan 33 30050 REM 2161 ES LISSE 30060 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/10_Overhoren.bc2 b/Best_of_Basicode_4/10_Overhoren.bc2 index a82db5d..a0ac9b6 100644 --- a/Best_of_Basicode_4/10_Overhoren.bc2 +++ b/Best_of_Basicode_4/10_Overhoren.bc2 @@ -1,128 +1,128 @@ -1000 A=500:GOTO 20:REM "OVERHOOR" -1010 DIM NR(201),DT(201) + +1000 A=500:GOTO20:REM"OVERHOOR" +1010 DIMNR(201),DT(201) 1020 REM --- data-paren tellen --- -1030 GOSUB 100:PRINT " EVEN GEDULD A.U.B." +1030 GOSUB100:PRINT" EVEN GEDULD A.U.B." 1040 N=0 -1050 N=N+1:READ A$ -1060 IF A$<>"*" THEN READ B$:GOTO 1050 -1070 MX=N:GOSUB 1620 +1050 N=N+1:READA$ +1060 IFA$<>"*" THENREADB$:GOTO1050 +1070 MX=N:GOSUB1620 1080 REM ---schermhoogte meten --- -1090 GOSUB 100 -1100 FOR N=1 TO 50:PRINT :NEXT N -1110 GOSUB 120:VV=VE +1090 GOSUB100 +1100 FORN=1 TO50:PRINT:NEXTN +1110 GOSUB120:VV=VE 1120 REM --- HERSTART --- -1130 RESTORE -1140 GOSUB 100:PRINT :PRINT " VERTAAL IN HET ENGELS" +1130 RESTORE +1140 GOSUB100:PRINT:PRINT" VERTAAL IN HET ENGELS" 1150 LI=2:RE=20:GO=0:FO=0:FT=0:VE=3 1160 : 1170 REM === HOOFDLUS === 1180 TT=0 -1190 TT=TT+1:IF TT=MX THEN GOSUB 1530:GOTO 1120 -1200 IF NR(TT)=0 THEN 1190 +1190 TT=TT+1:IFTT=MX THENGOSUB1530:GOTO1120 +1200 IFNR(TT)=0 THEN1190 1210 GH=NR(TT) 1220 REM -- lege regel tussenvoegen -- -1230 PRINT :VE=VE+1:GOSUB 1720 -1240 RESTORE :FOR N=1 TO GH:READ A$,B$:NEXT N -1250 HO=LI:GOSUB 110:PRINT A$; -1260 PRINT :GOSUB 120:GOSUB 1720:VE=VE-1 -1270 HO=RE:GOSUB 110:INPUT C$ -1280 IF C$<>B$ THEN 1370 +1230 PRINT:VE=VE+1:GOSUB1720 +1240 RESTORE:FORN=1 TOGH:READA$,B$:NEXTN +1250 HO=LI:GOSUB110:PRINTA$; +1260 PRINT:GOSUB120:GOSUB1720:VE=VE-1 +1270 HO=RE:GOSUB110:INPUTC$ +1280 IFC$<>B$ THEN1370 1290 REM --- wis dit woord uit NR()-- 1300 NR(TT)=0 1310 REM --- vraagteken wissen --- -1320 GOSUB 110:PRINT " "; +1320 GOSUB110:PRINT" "; 1330 REM --- verbeterd woord merken -- -1340 IF FT=1 THEN FT=0:GOSUB 110:PRINT ".";:NR(TT)=GH -1350 GO=GO+1:PRINT :GOSUB 120:GOTO 1190 -1360 GOTO 1240 -1370 FT=1:FO=FO+1:GOSUB 110 +1340 IFFT=1 THENFT=0:GOSUB110:PRINT".";:NR(TT)=GH +1350 GO=GO+1:PRINT:GOSUB120:GOTO1190 +1360 GOTO1240 +1370 FT=1:FO=FO+1:GOSUB110 1380 REM --- foute woord wissen --- -1390 PRINT " "; -1400 GOSUB 110:LB=LEN(B$):PRINT " "; +1390 PRINT" "; +1400 GOSUB110:LB=LEN(B$):PRINT" "; 1410 REM --- woord spellen --- -1420 FOR N=1 TO LEN(B$) -1430 D$=MID$(B$,N,1):PRINT D$;:GOSUB 1480:NEXT N +1420 FORN=1 TOLEN(B$) +1430 D$=MID$(B$,N,1):PRINTD$;:GOSUB1480:NEXTN 1440 REM --voorbeeld wissen ,herhalen- -1450 GOSUB 110:PRINT " "; -1460 GOTO 1270 +1450 GOSUB110:PRINT" "; +1460 GOTO1270 1470 : 1480 REM === WACHTLUS === -1490 FOR W=1 TO 500:NEXT W:REM rem +1490 FORW=1 TO500:NEXTW:REM rem 1500 RETURN 1510 REM aanpassen aan uw computer 1520 : 1530 REM === UITSLAG === -1540 PRINT :PRINT :IF FO>0 THEN 1560 -1550 PRINT " GOED GEDAAN! - NOG EEN KEER?";: -1555 GOSUB 210:IF (IN$="N") OR(IN$="n") THEN END -1556 IF (IN$<>"J") AND(IN$<>"j") THEN 1555 -1557 GOTO 1590 -1560 PRINT " NOG ";FO;" FOUTJE";:IF FO>1 THEN PRINT "S"; -1570 PRINT " - Tik op RETURN"; -1580 GOSUB 210:IF IN$<>CHR$(13) THEN 1580 -1590 IF FO=0 THEN GOSUB 1620:GOTO 1120 +1540 PRINT:PRINT:IFFO>0 THEN1560 +1550 PRINT" GOED GEDAAN! - NOG EEN KEER?";: +1555 GOSUB210:IF(IN$="N") OR(IN$="n") THENEND +1556 IF(IN$<>"J") AND(IN$<>"j") THEN1555 +1557 GOTO1590 +1560 PRINT" NOG ";FO;" FOUTJE";:IFFO>1 THENPRINT"S"; +1570 PRINT" - Tik op RETURN"; +1580 GOSUB210:IFIN$<>CHR$(13) THEN1580 +1590 IFFO=0 THENGOSUB1620:GOTO1120 1600 RETURN 1610 : 1620 REM === DATA NRS SCHUDDEN === -1630 FOR N=1 TO MX:DT(N)=N:NEXT N -1640 FOR N=MX-1 TO 2 STEP -1 -1650 GOSUB 260:X=1+INT(RV*N) +1630 FORN=1 TOMX:DT(N)=N:NEXTN +1640 FORN=MX-1 TO2 STEP-1 +1650 GOSUB260:X=1+INT(RV*N) 1660 NR(N)=DT(X) -1670 FOR M=X TO N-1:DT(M)=DT(M+1) -1680 NEXT M:NEXT N +1670 FORM=X TON-1:DT(M)=DT(M+1) +1680 NEXTM:NEXTN 1690 NR(1)=DT(1) 1700 RETURN 1710 : 1720 REM === SCROLL ROUTINE === -1730 IF VE>VV THEN VE=VE-1:GOTO 1730 +1730 IFVE>VV THENVE=VE-1:GOTO1730 1740 RETURN 1750 : -25000 DATA "een","one" -25010 DATA "twee","two" -25020 DATA "drie","three" -25040 DATA "vier","four" -25060 DATA "vijf","five" -25070 DATA "zes","six" -25080 DATA "zeven","seven" -25090 DATA "acht","eight" -25100 DATA "negen","nine" -25110 DATA "tien","ten" -25120 DATA "elf","eleven" -25130 DATA "twaalf","twelve" -25140 DATA "dertien","thirteen" -25150 DATA "veertien","fourteen" -25160 DATA "vijftien","fifteen" -25170 DATA "muziek","music" -25180 DATA "dak","roof" -25190 DATA "tuin","garden" -25200 DATA "deur","door" -25210 DATA "keuken","kitchen" -25220 DATA "venster","window" -25230 DATA "ontbijt","breakfast" -25240 DATA "krant","newspaper" -25250 DATA "bloemen","flowers" -25260 DATA "postbode","postman" -25270 DATA "tafel","table" -25280 DATA "telefoon","telephone" -25290 DATA "paraplu","umbrella" -25300 DATA "brief","letter" -25320 DATA "schoenen","shoes" -25330 DATA "*" +25000 DATA"een","one" +25010 DATA"twee","two" +25020 DATA"drie","three" +25040 DATA"vier","four" +25060 DATA"vijf","five" +25070 DATA"zes","six" +25080 DATA"zeven","seven" +25090 DATA"acht","eight" +25100 DATA"negen","nine" +25110 DATA"tien","ten" +25120 DATA"elf","eleven" +25130 DATA"twaalf","twelve" +25140 DATA"dertien","thirteen" +25150 DATA"veertien","fourteen" +25160 DATA"vijftien","fifteen" +25170 DATA"muziek","music" +25180 DATA"dak","roof" +25190 DATA"tuin","garden" +25200 DATA"deur","door" +25210 DATA"keuken","kitchen" +25220 DATA"venster","window" +25230 DATA"ontbijt","breakfast" +25240 DATA"krant","newspaper" +25250 DATA"bloemen","flowers" +25260 DATA"postbode","postman" +25270 DATA"tafel","table" +25280 DATA"telefoon","telephone" +25290 DATA"paraplu","umbrella" +25300 DATA"brief","letter" +25320 DATA"schoenen","shoes" +25330 DATA"*" 25340 : 30000 REM Aantal DATA-paren max.200 30010 REM Laatste DATA MOET "*" zijn 30020 REM REGEL 1490 AANPASSEN! -30030 REM +30030 REM 30040 REM Dit programma is ook goed 30050 REM voor andere DATA-paren zo 30060 REM als land + hoofdstad, enz -30070 REM +30070 REM 30080 REM GEMAAKT 6 JANUARI 1987 30090 REM OP EEN BBC-B COMPUTER -30100 REM +30100 REM 30110 REM door Ch.W.Brederode 30120 REM Von Bonninghausenlaan 33 30130 REM 2161 ES LISSE -30140 REM +30140 REM 30150 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/11_Klinkerspel.bc2 b/Best_of_Basicode_4/11_Klinkerspel.bc2 new file mode 100644 index 0000000..3c5923c --- /dev/null +++ b/Best_of_Basicode_4/11_Klinkerspel.bc2 @@ -0,0 +1,318 @@ + +1000 A=100:GOTO20:REM ** K L I N K E R S ** +1010 GOSUB100 +1020 DIMC$(500):Z=0:T=0:AW=0:P1=0:P2=0:A=0:TR=0 +1030 DIMLI$(50):REM ** LIMIET IS 50 VERSCHILLENDE ** +1040 REM ** WOORDEN.ALS JE MEER ZOU NEMEN,DAN ** +1050 REM ** DUURT HET ZOEKEN NAAR EEN WOORD,DAT ** +1060 REM ** NOG NIET IS GEWEEST STEEDS LANGER. ** +1070 VE=0:HO=0:GOSUB110 +1080 PRINT"EVEN WAT WOORDJES INLEZEN." +1090 FORF=1 TO500 +1100 READA$:C$(F)=A$ +1110 T=T+1:IFT=20 THENPRINT"*";:T=0 +1120 NEXTF +1130 PRINT"*" +1140 GOSUB100 +1150 VE=0:HO=0:GOSUB110 +1160 PRINT"-:* K L I N K E R S P E L *:-" +1170 PRINT"-----------------------------" +1180 PRINT"NAAM VAN SPELER 1:";:INPUTSA$ +1190 PRINT"NAAM VAN SPELER 2:";:INPUTSB$ +1200 PRINTSA$;",JIJ LET OP TOETS " +1210 PRINTSB$;",JIJ LET OP TOETS

" +1220 PRINT"ER KOMT STRAKS EEN WOORD OP HET" +1230 PRINT"SCHERM WAAR GEEN KLINKERS ZIJN" +1240 PRINT"INGEVULD.WIE HET WOORD WEET,DRUKT" +1250 PRINT"SNEL OP ZIJN OF HAAR KNOP (Q OF P)" +1260 PRINT"WIE IS HET SNELST ????..........." +1270 PRINTSA$;" OF ";SB$;" ?? EEN VAN JULLIE" +1280 PRINT"MOET DAN HET WOORD INTYPEN." +1290 GOSUB20000 +1300 GOSUB100:VE=2:HO=0:GOSUB110 +1310 PRINT"-:* K L I N K E R S P E L *:-" +1320 PRINT"-----------------------------" +1330 PRINT"IS HET WOORD GOED INGETYPT,DAN KRIJG" +1340 PRINT"JE DE LENGTE VAN HET WOORD ALS PUNTEN." +1350 PRINT"TYP JE HET FOUT,DAN GAAN ZE VAN JE TO-" +1360 PRINT"TAAL AF.JULLIE BEGINNEN ALLEBEI MET" +1370 PRINT"0 PUNTEN.WETEN JULLIE HET WOORD GEEN " +1380 PRINT"VAN BEIDEN,DAN GAAT BIJ ALLE TWEE DE" +1390 PRINT"LENGTE VAN HET WOORD ER AF...BEGREPEN !!!" +1400 GOSUB20000 +1410 GOSUB100:VE=6:HO=0:GOSUB110 +1420 PRINT"HOEVEEL WOORDEN WILLEN JULLIE DOEN ?" +1430 PRINT"(LIEVER NIET MEER DAN 50,ANDERS DUURT" +1440 PRINT"HET ZOEKEN STEEDS LANGER.)" +1450 PRINT"TYP HET AANTAL MAAR IN :";:INPUTAW +1460 REM *** WIL JE TOCH MEER WOORDEN DOEN *** +1470 REM *** VERANDER DAN REGEL 1030. *** +1480 T=0 +1490 IFAW<1 THEN1410 +1500 GOSUB20000 +1510 T=T+1:IFT=AW+1 THEN20070 +1520 Z=Z+1 +1530 GOSUB260:Q1=INT(499*RV+1) +1540 A$=C$(Q1) +1550 FORNT=1 TOT +1560 IFLI$(T)=A$ THEN1510 +1570 NEXTNT +1580 LI$(T)=A$ +1590 GOSUB100 +1600 VE=0:HO=8:GOSUB110 +1610 PRINT"-:* KLINKERSPEL *:-" +1620 VE=2:HO=3:GOSUB110:PRINTP1;" PUNTEN VOOR ";SA$;"." +1630 VE=3:HO=3:GOSUB110:PRINTP2;" PUNTEN VOOR ";SB$;"." +1640 VE=6:HO=19:GOSUB110 +1650 A=(LEN(A$)):TR=0 +1660 TR=TR+1 +1670 B$=MID$(A$,TR,1) +1680 IF(B$="Y") OR(B$="A") OR(B$="E") THENB$="-" +1690 IF(B$="O") OR(B$="U") OR(B$="I") THENB$="-" +1700 IFMID$(A$,TR,2)="IJ" THENB$="--":TR=TR+1 +1710 PRINTB$; +1720 IF(TR<=A) THEN1660 +1725 VE=7:HO=0:GOSUB110 +1727 FORWA=1 TO250 +1730 GOSUB200 +1740 IFIN$="Q" THENPRINTSA$:GOTO1770 +1750 IFIN$="P" THENPRINTSB$:GOTO1770 +1760 NEXTWA +1765 PRINT"JE TIJD IS OM,JAMMER !" +1766 P1=P1-LEN(A$):P2=P2-LEN(A$) +1767 GOSUB20000 +1768 GOTO1510 +1770 VE=9:HO=0:GOSUB110 +1780 PRINT"WAT IS WOORD ";Z;"-";:INPUTD$ +1790 S$=IN$ +1800 IFD$="" THEN1770 +1810 VE=11:HO=1:GOSUB110 +1820 ZQ$="NEE,NEE,HET WAS *" +1830 IFD$<>A$ THENPRINTZQ$;A$;"*":GOSUB20000:GOTO1850 +1840 GOTO1880 +1850 IFS$="Q" THENP1=P1-LEN(A$) +1860 IFS$="P" THENP2=P2-LEN(A$) +1870 GOTO1510 +1880 IFD$=A$ THENPRINT"GOED ZO.":GOSUB20000 +1890 IFS$="Q" THENP1=P1+LEN(A$) +1900 IFS$="P" THENP2=P2+LEN(A$) +1910 GOTO1510 +20000 REM +20010 REM *** TOETSINDRUK *** +20020 REM +20030 VE=14:HO=2:GOSUB110 +20040 PRINT"-:* DRUK MAAR OP EEN TOETS *:-" +20050 GOSUB210 +20060 RETURN +20070 REM +20080 REM ** DOORGAAN OF NIET ** +20090 REM +20100 GOSUB100:VE=6:HO=0:GOSUB110 +20110 PRINT"ZO,DAT WAREN ";Z;" WOORDEN." +20120 PRINTSA$;" HEEFT ";P1;" PUNTEN." +20130 PRINTSB$;" HEEFT ";P2;" PUNTEN." +20140 PRINT"-----------------------------" +20150 PRINT"GA JE DOOR JA OF NEE ?" +20160 PRINT"TYP MAAR IN J OF N ";:INPUTZ$ +20170 IFZ$="J" THEN1410 +20180 IFZ$="N" THENGOSUB100 +20190 VE=6:HO=0:GOSUB110 +20200 PRINT"TOT ZIENS, ";SA$;" EN ";SB$;"." +20210 PRINT +20220 GE$=" HEEFT GEWONNEN MET " +20230 IFP2>P1 THENPRINTSB$;GE$;(P2-P1);" PUNT(EN)." +20240 IFP2" -1210 PRINT SB$;",JIJ LET OP TOETS

" -1220 PRINT "ER KOMT STRAKS EEN WOORD OP HET" -1230 PRINT "SCHERM WAAR GEEN KLINKERS ZIJN" -1240 PRINT "INGEVULD.WIE HET WOORD WEET,DRUKT" -1250 PRINT "SNEL OP ZIJN OF HAAR KNOP (Q OF P)" -1260 PRINT "WIE IS HET SNELST ????..........." -1270 PRINT SA$;" OF ";SB$;" ?? EEN VAN JULLIE" -1280 PRINT "MOET DAN HET WOORD INTYPEN." -1290 GOSUB 20000 -1300 GOSUB 100:VE=2:HO=0:GOSUB 110 -1310 PRINT "-:* K L I N K E R S P E L *:-" -1320 PRINT "-----------------------------" -1330 PRINT "IS HET WOORD GOED INGETYPT,DAN KRIJG" -1340 PRINT "JE DE LENGTE VAN HET WOORD ALS PUNTEN." -1350 PRINT "TYP JE HET FOUT,DAN GAAN ZE VAN JE TO-" -1360 PRINT "TAAL AF.JULLIE BEGINNEN ALLEBEI MET" -1370 PRINT "0 PUNTEN.WETEN JULLIE HET WOORD GEEN " -1380 PRINT "VAN BEIDEN,DAN GAAT BIJ ALLE TWEE DE" -1390 PRINT "LENGTE VAN HET WOORD ER AF...BEGREPEN !!!" -1400 GOSUB 20000 -1410 GOSUB 100:VE=6:HO=0:GOSUB 110 -1420 PRINT "HOEVEEL WOORDEN WILLEN JULLIE DOEN ?" -1430 PRINT "(LIEVER NIET MEER DAN 50,ANDERS DUURT" -1440 PRINT "HET ZOEKEN STEEDS LANGER.)" -1450 PRINT "TYP HET AANTAL MAAR IN :";:INPUT AW -1460 REM *** WIL JE TOCH MEER WOORDEN DOEN *** -1470 REM *** VERANDER DAN REGEL 1030. *** -1480 T=0 -1490 IF AW<1 THEN 1410 -1500 GOSUB 20000 -1510 T=T+1:IF T=AW+1 THEN 20070 -1520 Z=Z+1 -1530 GOSUB 260:Q1=INT(499*RV+1) -1540 A$=C$(Q1) -1550 FOR NT=1 TO T -1560 IF LI$(T)=A$ THEN 1510 -1570 NEXT NT -1580 LI$(T)=A$ -1590 GOSUB 100 -1600 VE=0:HO=8:GOSUB 110 -1610 PRINT "-:* KLINKERSPEL *:-" -1620 VE=2:HO=3:GOSUB 110:PRINT P1;" PUNTEN VOOR ";SA$;"." -1630 VE=3:HO=3:GOSUB 110:PRINT P2;" PUNTEN VOOR ";SB$;"." -1640 VE=6:HO=19:GOSUB 110 -1650 A=(LEN(A$)):TR=0 -1660 TR=TR+1 -1670 B$=MID$(A$,TR,1) -1680 IF (B$="Y") OR(B$="A") OR(B$="E") THEN B$="-" -1690 IF (B$="O") OR(B$="U") OR(B$="I") THEN B$="-" -1700 IF MID$(A$,TR,2)="IJ" THEN B$="--":TR=TR+1 -1710 PRINT B$; -1720 IF (TR<=A) THEN 1660 -1725 VE=7:HO=0:GOSUB 110 -1727 FOR WA=1 TO 250 -1730 GOSUB 200 -1740 IF IN$="Q" THEN PRINT SA$:GOTO 1770 -1750 IF IN$="P" THEN PRINT SB$:GOTO 1770 -1760 NEXT WA -1765 PRINT "JE TIJD IS OM,JAMMER !" -1766 P1=P1-LEN(A$):P2=P2-LEN(A$) -1767 GOSUB 20000 -1768 GOTO 1510 -1770 VE=9:HO=0:GOSUB 110 -1780 PRINT "WAT IS WOORD ";Z;"-";:INPUT D$ -1790 S$=IN$ -1800 IF D$="" THEN 1770 -1810 VE=11:HO=1:GOSUB 110 -1820 ZQ$="NEE,NEE,HET WAS *" -1830 IF D$<>A$ THEN PRINT ZQ$;A$;"*":GOSUB 20000:GOTO 1850 -1840 GOTO 1880 -1850 IF S$="Q" THEN P1=P1-LEN(A$) -1860 IF S$="P" THEN P2=P2-LEN(A$) -1870 GOTO 1510 -1880 IF D$=A$ THEN PRINT "GOED ZO.":GOSUB 20000 -1890 IF S$="Q" THEN P1=P1+LEN(A$) -1900 IF S$="P" THEN P2=P2+LEN(A$) -1910 GOTO 1510 -20000 REM -20010 REM *** TOETSINDRUK *** -20020 REM -20030 VE=14:HO=2:GOSUB 110 -20040 PRINT "-:* DRUK MAAR OP EEN TOETS *:-" -20050 GOSUB 210 -20060 RETURN -20070 REM -20080 REM ** DOORGAAN OF NIET ** -20090 REM -20100 GOSUB 100:VE=6:HO=0:GOSUB 110 -20110 PRINT "ZO,DAT WAREN ";Z;" WOORDEN." -20120 PRINT SA$;" HEEFT ";P1;" PUNTEN." -20130 PRINT SB$;" HEEFT ";P2;" PUNTEN." -20140 PRINT "-----------------------------" -20150 PRINT "GA JE DOOR JA OF NEE ?" -20160 PRINT "TYP MAAR IN J OF N ";:INPUT Z$ -20170 IF Z$="J" THEN 1410 -20180 IF Z$="N" THEN GOSUB 100 -20190 VE=6:HO=0:GOSUB 110 -20200 PRINT "TOT ZIENS, ";SA$;" EN ";SB$;"." -20210 PRINT -20220 GE$=" HEEFT GEWONNEN MET " -20230 IF P2>P1 THEN PRINT SB$;GE$;(P2-P1);" PUNT(EN)." -20240 IF P2PL) THEN 1120 -1140 PL=IN:FOR I=1 TO PL:N$="" -1150 PRINT "NAAM SPELER":PRINT "NO "I;:INPUT N$ -1160 SP$(0,I)=LEFT$(N$,10):IF N$="" THEN I=I-1 -1170 NEXT I:GOSUB 100:PRINT "EERST ZELF EVEN DE WOORDEN LEREN" -1180 FOR I=1 TO 255:READ I$:PRINT I$;" "; -1190 IF I$<>"" THEN TA$(I,0)=I$:READ TA$(I,1):NEXT I -1200 AA=I-1:AA$="":FOR I=1 TO AA:AA$=AA$+CHR$(I):NEXT I -1210 GOSUB 100 -1220 PRINT "HOEVEEL WOORDEN WIL JE LEREN (1-10)" -1230 HO=0:VE=2:GOSUB 110:INPUT IN$:LE=VAL(IN$) -1240 IF LE>10 THEN PRINT "MAX. 10":GOTO 1230 -1250 IF LE<1 THEN PRINT "TEN MINSTE 1 WOORD":GOTO 1230 -1260 PRINT "DE ";LE;" WOORDEN WORDEN NU GEKOZEN VOOR:" -1270 FOR J=1 TO PL:I$=AA$:SP$(1,J)="" -1280 PRINT SP$(0,J); -1290 FOR I=1 TO LE:GOSUB 1980:SP$(1,J)=SP$(1,J)+U$ -1300 PRINT ".";:NEXT I:SP$(2,J)=SP$(1,J) -1310 PRINT :NEXT J:GOSUB 2270 -1320 GOSUB 100:GA=0:GOSUB 2070 -1330 GA=GA+1:VE=0:HO=0:GOSUB 110:PRINT "SPEL:";GA; -1340 FOR Q=1 TO PL:IF LEN(SP$(2,Q))>0 THEN GOSUB 1450 -1350 NEXT Q + +1000 A=2000:GOTO20:REM TEACHER +1010 GOSUB100:PRINT" EVEN DE MAAT NEMEN." +1020 DIMSP$(2,14),TA$(255,1),SC(14,4):CT=5:CN=1:VE=1 +1030 HO=0:FORY=0 TO99:VE=Y:GOSUB110:GOSUB120 +1040 IFVE=Y THENPRINT".";:NEXTY +1050 FORX=0 TO99:HO=X:GOSUB110:GOSUB120 +1060 IFHO=X THENPRINT".";:NEXTX +1070 GOSUB100:X=X-1:Y=Y-1:BL$="":FORI=1 TOX:BL$=BL$+" " +1075 NEXTI +1080 D$=" DRUK EEN TOETS ":GOSUB100 +1090 PRINT"INSTRUCTIES ? (J/N)";:GOSUB210:GOSUB100 +1100 IFIN$="J" THENGOSUB2350 +1110 PL=Y-10:PRINT"HOEVEEL SPELERS ?":HO=0:VE=2 +1120 GOSUB110:PRINT"1-";PL;" :";:INPUTIN$ +1130 IN=VAL(IN$):IF(IN<1) OR(IN>PL) THEN1120 +1140 PL=IN:FORI=1 TOPL:N$="" +1150 PRINT"NAAM SPELER":PRINT"NO "I;:INPUTN$ +1160 SP$(0,I)=LEFT$(N$,10):IFN$="" THENI=I-1 +1170 NEXTI:GOSUB100:PRINT"EERST ZELF EVEN DE WOORDEN LEREN" +1180 FORI=1 TO255:READI$:PRINTI$;" "; +1190 IFI$<>"" THENTA$(I,0)=I$:READTA$(I,1):NEXTI +1200 AA=I-1:AA$="":FORI=1 TOAA:AA$=AA$+CHR$(I):NEXTI +1210 GOSUB100 +1220 PRINT"HOEVEEL WOORDEN WIL JE LEREN (1-10)" +1230 HO=0:VE=2:GOSUB110:INPUTIN$:LE=VAL(IN$) +1240 IFLE>10 THENPRINT"MAX. 10":GOTO1230 +1250 IFLE<1 THENPRINT"TEN MINSTE 1 WOORD":GOTO1230 +1260 PRINT"DE ";LE;" WOORDEN WORDEN NU GEKOZEN VOOR:" +1270 FORJ=1 TOPL:I$=AA$:SP$(1,J)="" +1280 PRINTSP$(0,J); +1290 FORI=1 TOLE:GOSUB1980:SP$(1,J)=SP$(1,J)+U$ +1300 PRINT".";:NEXTI:SP$(2,J)=SP$(1,J) +1310 PRINT:NEXTJ:GOSUB2270 +1320 GOSUB100:GA=0:GOSUB2070 +1330 GA=GA+1:VE=0:HO=0:GOSUB110:PRINT"SPEL:";GA; +1340 FORQ=1 TOPL:IFLEN(SP$(2,Q))>0 THENGOSUB1450 +1350 NEXTQ 1360 REM ZIJN NOG NIET ALLE SPELERS KLAAR? -1370 FOR I=1 TO PL:IF LEN(SP$(2,I))>0 THEN I=PL:NEXT I:GOTO 1330 -1380 NEXT I:HO=0:VE=Y-5:GOSUB 110 -1390 PRINT "ALLE WOORDEN ZIJN GELEERD" -1400 PRINT "WIL JE NOG EEN KEER (J/N)":INPUT IN$ -1410 IF IN$="J" THEN 1210 -1420 GOTO 3170:REM EINDE -1430 REM +1370 FORI=1 TOPL:IFLEN(SP$(2,I))>0 THENI=PL:NEXTI:GOTO1330 +1380 NEXTI:HO=0:VE=Y-5:GOSUB110 +1390 PRINT"ALLE WOORDEN ZIJN GELEERD" +1400 PRINT"WIL JE NOG EEN KEER (J/N)":INPUTIN$ +1410 IFIN$="J" THEN1210 +1420 GOTO3170:REM EINDE +1430 REM 1440 REM HIER BEGINT SPEL PER SPELER -1450 VE=Y-6:HO=0:GOSUB 110 -1460 FOR I=1 TO INT(X/LEN(SP$(0,Q))):PRINT SP$(0,Q);:NEXT I +1450 VE=Y-6:HO=0:GOSUB110 +1460 FORI=1 TOINT(X/LEN(SP$(0,Q))):PRINTSP$(0,Q);:NEXTI 1470 REM SOMS HERHALEN ALS DE HELFT GELEERD IS -1480 IF LEN(SP$(2,Q))>LEN(SP$(1,Q))/2 THEN 1510 +1480 IFLEN(SP$(2,Q))>LEN(SP$(1,Q))/2 THEN1510 1490 REM 20% KANS OP HERHALING -1500 GOSUB 260:IF RV<.2 THEN I$=SP$(1,Q):GOSUB 1980:GOTO 1520 -1510 I$=SP$(2,Q):GOSUB 1980:SP$(2,Q)=I$ -1520 BW$=U$:GOSUB 260:TD$="NED:":TR$="ENG:" +1500 GOSUB260:IFRV<.2 THENI$=SP$(1,Q):GOSUB1980:GOTO1520 +1510 I$=SP$(2,Q):GOSUB1980:SP$(2,Q)=I$ +1520 BW$=U$:GOSUB260:TD$="NED:":TR$="ENG:" 1530 REM MEESTAL NED >> ENG. -1540 IF RV<.7 THEN RA$=TA$(RR,0):DY$=TA$(RR,1):GOTO 1560 +1540 IFRV<.7 THENRA$=TA$(RR,0):DY$=TA$(RR,1):GOTO1560 1550 RA$=TA$(RR,1):DY$=TA$(RR,0):TD$="ENG:":TR$="NED:" -1560 VE=Y-5:HO=(X/2)-8:GOSUB 110:PRINT "100.0 % FOUT :0"; -1570 L=LEN(RA$):T=L:IF LEN(DY$)>T THEN T=LEN(DY$) +1560 VE=Y-5:HO=(X/2)-8:GOSUB110:PRINT"100.0 % FOUT :0"; +1570 L=LEN(RA$):T=L:IFLEN(DY$)>T THENT=LEN(DY$) 1580 F=0:TB=INT((X-T-4)/2) -1590 HO=TB:VE=Y-4:GOSUB 110:PRINT TD$;DY$; +1590 HO=TB:VE=Y-4:GOSUB110:PRINTTD$;DY$; 1600 REM LAAT SOMS HET GOEDE WOORD VERWARD ZIEN -1610 GOSUB 260:IF RV<.7 THEN 1670 +1610 GOSUB260:IFRV<.7 THEN1670 1620 REM RA$ DOOR ELKAAR GOOIEN ; VW$ IS RESULTAAT -1630 I$=RA$:VW$="":FOR I=1 TO L:GOSUB 1980:VW$=VW$+U$:NEXT I -1640 IF VW$=RA$ THEN 1630 +1630 I$=RA$:VW$="":FORI=1 TOL:GOSUB1980:VW$=VW$+U$:NEXTI +1640 IFVW$=RA$ THEN1630 1650 REM ZET HET VERWARDE WOORD OP SCHERM -1660 VE=Y-3:GOSUB 110:PRINT TR$;VW$; -1670 VE=Y-2:HO=TB:GOSUB 110:PRINT TR$; -1680 FOR I=1 TO L:PRINT ".";:NEXT I -1690 REM +1660 VE=Y-3:GOSUB110:PRINTTR$;VW$; +1670 VE=Y-2:HO=TB:GOSUB110:PRINTTR$; +1680 FORI=1 TOL:PRINT".";:NEXTI +1690 REM 1700 REM MAAK TOETSENBORD-BUFFER LEEG -1710 GOSUB 200:IF IN$<>"" THEN 1710 +1710 GOSUB200:IFIN$<>"" THEN1710 1720 REM HAAL DE LETTERS 1 VOOR 1 BINNEN -1730 SR=100:F=0:FOR I=1 TO L -1740 HO=TB+3+I:VE=Y-2:GOSUB 210 -1750 GOSUB 110:PRINT MID$(RA$,I,1); -1760 HO=HO-1:VE=Y-1:GOSUB 110:PRINT " ";IN$"="; +1730 SR=100:F=0:FORI=1 TOL +1740 HO=TB+3+I:VE=Y-2:GOSUB210 +1750 GOSUB110:PRINTMID$(RA$,I,1); +1760 HO=HO-1:VE=Y-1:GOSUB110:PRINT" ";IN$"="; 1770 REM LETTER IS GOED -1780 IF IN$=MID$(RA$,I,1) THEN PRINT "GOED";:GOTO 1840 -1790 REM +1780 IFIN$=MID$(RA$,I,1) THENPRINT"GOED";:GOTO1840 +1790 REM 1800 REM LETTER IS FOUT -1810 PRINT "FOUT"; +1810 PRINT"FOUT"; 1820 HO=(X/2)-8:VE=Y-5:F=F+1:SR=100-(100*(F/L)) -1830 GOSUB 310:GOSUB 110:PRINT SR$;" % FOUT:";F; -1840 NEXT I +1830 GOSUB310:GOSUB110:PRINTSR$;" % FOUT:";F; +1840 NEXTI 1850 REM ALLE LETTERS ZIJN BINNEN -1860 IF (F=0) OR(LEN(SP$(2,Q))=255) THEN 1900 +1860 IF(F=0) OR(LEN(SP$(2,Q))=255) THEN1900 1870 REM NIET FOUTLOOS? DAN LATER NOG EENS 1880 SP$(2,Q)=SP$(2,Q)+BW$ 1890 REM SCORE BIJWERKEN 1900 SC(Q,2)=(SC(Q,2)*(GA-1)+SR)/GA:SC(Q,1)=SC(Q,1)+F -1910 IF SR>SC(Q,3) THEN SC(Q,3)=SR -1920 IF SRSC(Q,3) THENSC(Q,3)=SR +1920 IFSR0) AND(X=4) THEN 20950 -20870 IF (X=0) AND(W=0) AND(Y=0) THEN GOSUB 20630 -20880 IF (W<2) AND(Y=0) THEN P$=N$(X,W) -20890 FOR L=1 TO S(Y)-LEN(P$):P$=P$+" ":NEXT L -20900 SR=W+1:GOSUB 300 +20810 IFE=0 THENS(1)=32:S(2)=60 +20820 FORX=0 TO4 +20830 GOSUB360:FORW=0 TO3 +20840 GOSUB360:P$="" +20850 FORY=0 TO2 +20860 IF(Y>0) AND(X=4) THEN20950 +20870 IF(X=0) AND(W=0) AND(Y=0) THENGOSUB20630 +20880 IF(W<2) AND(Y=0) THENP$=N$(X,W) +20890 FORL=1 TOS(Y)-LEN(P$):P$=P$+" ":NEXTL +20900 SR=W+1:GOSUB300 20910 P$=P$+SR$+". "+NV$(X*3+Y,W*3)+" "+VB$(X*3+Y,0)+"-" -20920 GOSUB 20530 -20930 P$=P$+NV$(X*3+Y,W*3+1)+" ":GOSUB 20580 +20920 GOSUB20530 +20930 P$=P$+NV$(X*3+Y,W*3+1)+" ":GOSUB20580 20940 P$=P$+VB$(X*3+Y,1)+NV$(X*3+Y,W*3+2) -20950 NEXT Y:SR$=P$:GOSUB 350:NEXT W:NEXT X -20960 GOSUB 360:RETURN -20970 REM +20950 NEXTY:SR$=P$:GOSUB350:NEXTW:NEXTX +20960 GOSUB360:RETURN +20970 REM 20980 REM sterretjes -20990 REM -21000 F=F+1:FOR TS=1 TO S:PRINT "*";:NEXT TS:RETURN -21010 REM +20990 REM +21000 F=F+1:FORTS=1 TOS:PRINT"*";:NEXTTS:RETURN +21010 REM 21020 REM oefenen -21030 REM -21040 GOSUB 260:X=INT(RV*5) -21050 GOSUB 260:Y=INT(RV*3) -21060 IF (X=4) AND(Y>0) THEN 21040 -21070 GOSUB 100:PRINT :F=0 +21030 REM +21040 GOSUB260:X=INT(RV*5) +21050 GOSUB260:Y=INT(RV*3) +21060 IF(X=4) AND(Y>0) THEN21040 +21070 GOSUB100:PRINT:F=0 21080 S$="VERBUIGINGEN OEFENEN" -21090 GOSUB 20220:PRINT -21100 T$="$Hoe luidt de verbuiging van":GOSUB 22130 -21110 PRINT :PRINT +21090 GOSUB20220:PRINT +21100 T$="$Hoe luidt de verbuiging van":GOSUB22130 +21110 PRINT:PRINT 21120 S$=NV$(X*3+Y,0)+" "+VB$(X*3+Y,0)+NV$(X*3+Y,1) 21130 S$=S$+" "+VB$(X*3+Y,1)+NV$(X*3+Y,2) -21140 GOSUB 20220 -21150 HO=0:VE=14:GOSUB 110 -21160 T$="Kies een andere uitgang door op de":GOSUB 22130 -21170 T$="spatiebalk te drukken.":GOSUB 22130 -21180 T$="$$Juiste uitgang? druk op RETURN.":GOSUB 22130 -21190 PRINT :LE=0:IF Y=0 THEN A=1:B=6:LE=3 -21200 IF Y=1 THEN A=7:B=12:LE=5 -21210 IF (Y=1) AND(X=3) THEN A=20:B=25:LE=6 -21220 IF X=4 THEN A=26:B=31:LE=6 -21230 FOR L=0 TO 3:R(0,L)=0 -21240 HO=0:VE=8+L:GOSUB 110 -21250 PRINT ;L+1;"e nv:";TAB(8+LE);VB$(X*3+Y,0); -21260 PRINT TAB(LEN(VB$(X*3+Y,0))+LE+11);VB$(X*3+Y,1) -21270 NEXT L -21280 FOR VE=8 TO 11 -21290 IF Y=2 THEN 21370 +21140 GOSUB20220 +21150 HO=0:VE=14:GOSUB110 +21160 T$="Kies een andere uitgang door op de":GOSUB22130 +21170 T$="spatiebalk te drukken.":GOSUB22130 +21180 T$="$$Juiste uitgang? druk op RETURN.":GOSUB22130 +21190 PRINT:LE=0:IFY=0 THENA=1:B=6:LE=3 +21200 IFY=1 THENA=7:B=12:LE=5 +21210 IF(Y=1) AND(X=3) THENA=20:B=25:LE=6 +21220 IFX=4 THENA=26:B=31:LE=6 +21230 FORL=0 TO3:R(0,L)=0 +21240 HO=0:VE=8+L:GOSUB110 +21250 PRINT;L+1;"e nv:";TAB(8+LE);VB$(X*3+Y,0); +21260 PRINTTAB(LEN(VB$(X*3+Y,0))+LE+11);VB$(X*3+Y,1) +21270 NEXTL +21280 FORVE=8 TO11 +21290 IFY=2 THEN21370 21300 L=A -21310 HO=7:GOSUB 110 -21320 PRINT D$(L); -21330 GOSUB 210:IF IN$<>" " THEN 21360 -21340 L=L+1:IF L>B THEN 21300 -21350 GOTO 21310 +21310 HO=7:GOSUB110 +21320 PRINTD$(L); +21330 GOSUB210:IFIN$<>" " THEN21360 +21340 L=L+1:IFL>B THEN21300 +21350 GOTO21310 21360 R(0,VE-8)=L 21370 L=13:HO=LEN(VB$(X*3+Y,0))+LE+8 -21380 GOSUB 110 -21390 PRINT D$(L); -21400 GOSUB 210:IF IN$<>" " THEN 21430 -21410 L=L+1:IF L>19 THEN 21370 -21420 GOTO 21380 +21380 GOSUB110 +21390 PRINTD$(L); +21400 GOSUB210:IFIN$<>" " THEN21430 +21410 L=L+1:IFL>19 THEN21370 +21420 GOTO21380 21430 R(1,VE-8)=L:HO=HO+LEN(VB$(X*3+Y,1))+3 21440 L=0 -21450 GOSUB 110 -21460 PRINT D$(L); -21470 IF L=0 THEN PRINT "- "; -21480 GOSUB 210:IF IN$<>" " THEN 21520 -21490 L=L+1:IF L>18 THEN L=0 -21500 IF L=1 THEN L=16 -21510 GOTO 21450 -21520 R(2,VE-8)=L:NEXT VE -21530 IF Y=2 THEN R(0,0)=0 +21450 GOSUB110 +21460 PRINTD$(L); +21470 IFL=0 THENPRINT"- "; +21480 GOSUB210:IFIN$<>" " THEN21520 +21490 L=L+1:IFL>18 THENL=0 +21500 IFL=1 THENL=16 +21510 GOTO21450 +21520 R(2,VE-8)=L:NEXTVE +21530 IFY=2 THENR(0,0)=0 21540 T$="#$Zo heb jij het gedaan:" -21550 GOSUB 22130:REM print 'mooi' -21560 HO=0:VE=9:GOSUB 110:T$="Zo luidt de juiste verbuiging:" -21570 GOSUB 22130:VE=15:HO=0:GOSUB 110 -21580 FOR W=0 TO 3:VE=4+W:GOSUB 110 -21590 PRINT ;W+1;". ";D$(R(0,W));" ";VB$(X*3+Y,0);D$(R(1,W)); -21600 PRINT " ";VB$(X*3+Y,1);D$(R(2,W)) -21610 VE=11+W:GOSUB 110 -21620 PRINT ;W+1;". ";NV$(X*3+Y,3*W);" "; -21630 PRINT VB$(X*3+Y,0);NV$(X*3+Y,W*3+1); -21640 PRINT " ";VB$(X*3+Y,1);NV$(X*3+Y,W*3+2) -21650 NEXT W -21660 GOSUB 21850:REM druk op 'n toets -21670 T$="#$De sterretjes geven de door jou":GOSUB 22130 -21680 T$="gemaakte fouten aan.":GOSUB 22130 -21690 FOR W=0 TO 3:HO=0:VE=5+W:GOSUB 110 -21700 PRINT ;W+1;". "; -21710 IF D$(R(0,W))<>NV$(X*3+Y,W*3) THEN S=LE:GOSUB 20980 -21720 IF D$(R(0,W))=NV$(X*3+Y,W*3) THEN PRINT D$(R(0,W)); -21730 PRINT " ";VB$(X*3+Y,0); -21740 IF D$(R(1,W))<>NV$(X*3+Y,W*3+1) THEN S=2:GOSUB 20980 -21750 IF D$(R(1,W))=NV$(X*3+Y,W*3+1) THEN PRINT D$(R(1,W)); -21760 PRINT " ";VB$(X*3+Y,1); -21770 IF D$(R(2,W))<>NV$(X*3+Y,W*3+2) THEN S=1:GOSUB 20980 -21780 IF D$(R(2,W))=NV$(X*3+Y,W*3+2) THEN PRINT D$(R(2,W)); -21790 NEXT W +21550 GOSUB22130:REM print 'mooi' +21560 HO=0:VE=9:GOSUB110:T$="Zo luidt de juiste verbuiging:" +21570 GOSUB22130:VE=15:HO=0:GOSUB110 +21580 FORW=0 TO3:VE=4+W:GOSUB110 +21590 PRINT;W+1;". ";D$(R(0,W));" ";VB$(X*3+Y,0);D$(R(1,W)); +21600 PRINT" ";VB$(X*3+Y,1);D$(R(2,W)) +21610 VE=11+W:GOSUB110 +21620 PRINT;W+1;". ";NV$(X*3+Y,3*W);" "; +21630 PRINTVB$(X*3+Y,0);NV$(X*3+Y,W*3+1); +21640 PRINT" ";VB$(X*3+Y,1);NV$(X*3+Y,W*3+2) +21650 NEXTW +21660 GOSUB21850:REM druk op 'n toets +21670 T$="#$De sterretjes geven de door jou":GOSUB22130 +21680 T$="gemaakte fouten aan.":GOSUB22130 +21690 FORW=0 TO3:HO=0:VE=5+W:GOSUB110 +21700 PRINT;W+1;". "; +21710 IFD$(R(0,W))<>NV$(X*3+Y,W*3) THENS=LE:GOSUB20980 +21720 IFD$(R(0,W))=NV$(X*3+Y,W*3) THENPRINTD$(R(0,W)); +21730 PRINT" ";VB$(X*3+Y,0); +21740 IFD$(R(1,W))<>NV$(X*3+Y,W*3+1) THENS=2:GOSUB20980 +21750 IFD$(R(1,W))=NV$(X*3+Y,W*3+1) THENPRINTD$(R(1,W)); +21760 PRINT" ";VB$(X*3+Y,1); +21770 IFD$(R(2,W))<>NV$(X*3+Y,W*3+2) THENS=1:GOSUB20980 +21780 IFD$(R(2,W))=NV$(X*3+Y,W*3+2) THENPRINTD$(R(2,W)); +21790 NEXTW 21800 T$="$$Je hebt in totaal "+F$(F)+" fout" -21810 IF F<>1 THEN T$=T$+"en" -21820 T$=T$+" gemaakt.":GOSUB 22130 -21830 GOSUB 21850:RETURN -21840 REM +21810 IFF<>1 THENT$=T$+"en" +21820 T$=T$+" gemaakt.":GOSUB22130 +21830 GOSUB21850:RETURN +21840 REM 21850 REM druk op 'n toets -21860 REM -21870 PRINT :PRINT :S$="Druk op een toets." -21880 GOSUB 20200:GOSUB 210:RETURN -21890 REM +21860 REM +21870 PRINT:PRINT:S$="Druk op een toets." +21880 GOSUB20200:GOSUB210:RETURN +21890 REM 21900 REM geduld -21910 REM -21920 GOSUB 100:VE=V/2:GOSUB 110 -21930 S$="Even geduld A.U.B.":GOSUB 20200 +21910 REM +21920 GOSUB100:VE=V/2:GOSUB110 +21930 S$="Even geduld A.U.B.":GOSUB20200 21940 RETURN -21950 REM +21950 REM 21960 REM wis linker karakter -21970 REM -21980 PRINT :T$=RIGHT$(T$,LEN(T$)-1):RETURN -21990 REM +21970 REM +21980 PRINT:T$=RIGHT$(T$,LEN(T$)-1):RETURN +21990 REM 22000 REM print woord -22010 REM -22020 GOSUB 120:IF LEN(W$)-1+HO>H THEN PRINT -22030 PRINT W$;:W$="":RETURN -22040 REM +22010 REM +22020 GOSUB120:IFLEN(W$)-1+HO>H THENPRINT +22030 PRINTW$;:W$="":RETURN +22040 REM 22050 REM uitleg -22060 REM -22070 RESTORE -22080 READ T$ -22090 GOSUB 22130:REM print 'mooi' -22100 IF T$=". " THEN RETURN -22110 GOTO 22080 -22120 REM +22060 REM +22070 RESTORE +22080 READT$ +22090 GOSUB22130:REM print 'mooi' +22100 IFT$=". " THENRETURN +22110 GOTO22080 +22120 REM 22130 REM print 'mooi' -22140 REM +22140 REM 22150 T$=T$+" ":W$="" -22160 IF LEFT$(T$,1)="#" THEN GOSUB 100:GOSUB 21960 -22170 IF LEFT$(T$,1)="$" THEN GOSUB 21960:GOTO 22170 -22180 IF LEFT$(T$,1)="%" THEN GOSUB 21850:GOSUB 100:GOSUB 21960 -22190 IF T$=". " THEN RETURN -22200 FOR L=1 TO LEN(T$) +22160 IFLEFT$(T$,1)="#" THENGOSUB100:GOSUB21960 +22170 IFLEFT$(T$,1)="$" THENGOSUB21960:GOTO22170 +22180 IFLEFT$(T$,1)="%" THENGOSUB21850:GOSUB100:GOSUB21960 +22190 IFT$=". " THENRETURN +22200 FORL=1 TOLEN(T$) 22210 M$=MID$(T$,L,1) 22220 W$=W$+M$ -22230 IF M$=" " THEN GOSUB 22000 -22240 NEXT L:RETURN -22250 REM +22230 IFM$=" " THENGOSUB22000 +22240 NEXTL:RETURN +22250 REM 22260 REM keuze -22270 REM -22280 PRINT :PRINT :S$="Maak uw keuze.":GOSUB 20200 -22290 GOSUB 200:IF IN$="" THEN 22290 +22270 REM +22280 PRINT:PRINT:S$="Maak uw keuze.":GOSUB20200 +22290 GOSUB200:IFIN$="" THEN22290 22300 RETURN -22310 REM +22310 REM 22320 REM verbuig -22330 REM -22340 GOSUB 100:PRINT :S$="SUB-MENU VERBUIGEN":GOSUB 20200 +22330 REM +22340 GOSUB100:PRINT:S$="SUB-MENU VERBUIGEN":GOSUB20200 22350 T$="$$Volgens welke groep moet het bijv. nw." -22360 GOSUB 22130:T$="verbogen worden?":GOSUB 22130 -22370 T$="$$Volgens de:":GOSUB 22130 +22360 GOSUB22130:T$="verbogen worden?":GOSUB22130 +22370 T$="$$Volgens de:":GOSUB22130 22380 S=(H-24)/2 -22390 T$="1. eerste of 'der' groep":GOSUB 20320 -22400 T$="2. tweede of 'ein' groep":GOSUB 20320 -22410 T$="3. derde groep":GOSUB 20320 -22420 GOSUB 22260:YY=VAL(IN$)-1 -22430 IF (YY<0) OR(YY>2) THEN 22340 -22440 GOSUB 100:PRINT :S$="SUB-MENU VERBUIGEN":GOSUB 20200 +22390 T$="1. eerste of 'der' groep":GOSUB20320 +22400 T$="2. tweede of 'ein' groep":GOSUB20320 +22410 T$="3. derde groep":GOSUB20320 +22420 GOSUB22260:YY=VAL(IN$)-1 +22430 IF(YY<0) OR(YY>2) THEN22340 +22440 GOSUB100:PRINT:S$="SUB-MENU VERBUIGEN":GOSUB20200 22450 T$="$$Tot welke groep hoort het zelfst. nw?" -22460 GOSUB 22130:REM print 'mooi' +22460 GOSUB22130:REM print 'mooi' 22470 Q=4 -22480 IF YY=0 THEN Q=5 -22490 FOR SR=1 TO Q:GOSUB 300 +22480 IFYY=0 THENQ=5 +22490 FORSR=1 TOQ:GOSUB300 22500 T$=SR$+". "+N$(SR-1,0)+" "+N$(SR-1,1) -22510 GOSUB 20320:NEXT SR:GOSUB 22260:XX=VAL(IN$)-1 -22520 IF (XX=4) AND(YY>0) THEN 22440 -22530 IF (XX<0) OR(XX>4) THEN 22440 -22540 GOSUB 100:PRINT :S$="VERBUIGEN":GOSUB 20200 -22550 T$="$$voer nu het bijv. naamw. in.":GOSUB 22130 +22510 GOSUB20320:NEXTSR:GOSUB22260:XX=VAL(IN$)-1 +22520 IF(XX=4) AND(YY>0) THEN22440 +22530 IF(XX<0) OR(XX>4) THEN22440 +22540 GOSUB100:PRINT:S$="VERBUIGEN":GOSUB20200 +22550 T$="$$voer nu het bijv. naamw. in.":GOSUB22130 22560 T$="$$bijv: gut, treu, alt, kalt, wild enz." -22570 GOSUB 22130:PRINT :PRINT :INPUT S$ -22580 GOSUB 22720:BN$=T$:REM omzet hoodletters -22590 T$="$$Voer nu het zelfst. naamw. in,":GOSUB 22130 -22600 T$="$$bijv: Mann, Frau, Buch, Wetter enz.":GOSUB 22130 -22610 PRINT :PRINT :INPUT S$ -22620 GOSUB 22720:REM omzet hoodletters +22570 GOSUB22130:PRINT:PRINT:INPUTS$ +22580 GOSUB22720:BN$=T$:REM omzet hoodletters +22590 T$="$$Voer nu het zelfst. naamw. in,":GOSUB22130 +22600 T$="$$bijv: Mann, Frau, Buch, Wetter enz.":GOSUB22130 +22610 PRINT:PRINT:INPUTS$ +22620 GOSUB22720:REM omzet hoodletters 22630 ZN$=CHR$(ASC(LEFT$(T$,1))-32)+RIGHT$(T$,TS-2) -22640 GOSUB 100:PRINT :S$="VERBUIGEN":GOSUB 20200 -22650 T$="$$Zo luidt de juiste verbuiging:":GOSUB 22130 -22660 PRINT :PRINT -22670 FOR W=0 TO 3 -22680 PRINT ;W+1;". ";NV$(XX*3+YY,W*3);" ";BN$; -22685 PRINT NV$(XX*3+YY,W*3+1); -22690 PRINT " ";ZN$;NV$(XX*3+YY,W*3+2) -22700 NEXT W:GOSUB 21850:RETURN -22710 REM +22640 GOSUB100:PRINT:S$="VERBUIGEN":GOSUB20200 +22650 T$="$$Zo luidt de juiste verbuiging:":GOSUB22130 +22660 PRINT:PRINT +22670 FORW=0 TO3 +22680 PRINT;W+1;". ";NV$(XX*3+YY,W*3);" ";BN$; +22685 PRINTNV$(XX*3+YY,W*3+1); +22690 PRINT" ";ZN$;NV$(XX*3+YY,W*3+2) +22700 NEXTW:GOSUB21850:RETURN +22710 REM 22720 REM omzet hoofdletters 22730 REM naar kleine letters -22740 REM -22750 T$="":FOR TS=1 TO LEN(S$) +22740 REM +22750 T$="":FORTS=1 TOLEN(S$) 22760 M=ASC(MID$(S$,TS,1)) -22770 IF (M>64) AND(M<91) THEN M=M+32 -22780 T$=T$+CHR$(M):NEXT TS +22770 IF(M>64) AND(M<91) THENM=M+32 +22780 T$=T$+CHR$(M):NEXTTS 22790 RETURN -25000 DATA "#HET BIJVOEGLIJK NAAMWOORD" -25010 DATA "$$eerste of 'der'-groep (z.g. zwakke verbuiging)" -25020 DATA "$$Na een bepalend woord van deze groep krijgt" -25030 DATA "het bijvoeglijk naamwoord 11x -en en 5x -e," -25040 DATA "nl. in de" -25050 DATA "$$1e naamval mannelijk;" -25060 DATA "$1e en 4e naamval vrouwelijk;" -25070 DATA "$1e en 4e naamval onzijdig." -25080 DATA "$$Uitzondering: Na einige, mehrere," -25090 DATA "verschiedene, viele en samtliche krijgt het" -25100 DATA "bijv. nw. in de 1e" -25110 DATA "en 4e nvl. -e in plaats van -en!" -25120 DATA "%Tweede of 'ein'-groep (z.g. gemengde" -25130 DATA "verbuiging)" -25140 DATA "$$Na een bepalend woord van deze groep krijgt" -25150 DATA "het bijv. nw. eveneens en op dezelfde 11" -25160 DATA "plaatsen -en, op de 5 overblijvende plaatsen" -25170 DATA "een andere uitgang, nl." -25180 DATA "$$-er in de 1e naamval mannelijk;" -25190 DATA "$-e in de 1e en 4e naamval vrouwelijk;" -25200 DATA "$-es in de 1e en 4e naamval onzijdig." -25210 DATA "%De derde groep (z.g. sterke verbuiging)" -25220 DATA "$$Wordt het bijv. nw. NIET voorafgegaan door" -25230 DATA "een bepalend woord van de 'der' of 'ein' groep," -25240 DATA "dan krijgt het de uitgangen van dies-er, dies-e," -25250 DATA "dies-es enz." -25260 DATA "$$Uitzondering: In de 2e nvl. mannelijk en" -25270 DATA "onzijdig enkelvoud staat -en in plaats van het" -25280 DATA "te verwachten regelmatige -es." -25290 DATA "%Opmerking:" -25300 DATA "$$Twee of meer bijv. naamwoorden achter elkaar" -25310 DATA "worden op dezelfde wijze verbogen:" -25320 DATA "$$der gut-e alt-e Mann" -25330 DATA "$$gross-e wild-e Tiere." -25340 DATA "%." -25350 DATA "die","des","das","den","dem","der" -25360 DATA "einer","eines","einen","eine ","ein ","einem" -25370 DATA "er","em","e ","s ","n","es","en" -25380 DATA "keiner","keinem","kein " -25390 DATA "keine ","keinen","keines" -25400 DATA "vielem","vieles","viele " -25410 DATA "viel ","vielen","vieler" -25420 DATA 6,11,0,1,10,0,3,11,0,1,23,0,28 -25430 DATA 15,13,13,15,15,15,15,18,18,19,19,15,15 -25440 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0 -25450 DATA 2,8,0,6,7,0,2,8,0,6,20,0,31 -25460 DATA 19,19,19,19,19,13,19,19,19,19,19,13,13 -25470 DATA 18,18,18,0,0,0,18,18,16,0,0,0,0 -25480 DATA 5,12,0,6,7,0,5,12,0,4,24,0,30 -25490 DATA 19,19,14,19,19,13,19,19,14,19,19,19,19 -25500 DATA 0,0,0,0,0,0,0,0,0,17,17,17,17 -25510 DATA 4,9,0,1,10,0,3,11,0,1,23,0,28 -25520 DATA 19,19,19,15,15,15,15,18,18,19,19,15,15 -25530 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0 -25540 DATA "gut","Mann","treu","Hund","rot","Wein" -25550 DATA "gut","Frau","alt","Mutter","heiss","Suppe" -25560 DATA "gut","Buch","klein","Land","kalt","Wetter" -25570 DATA "gut","Leute","gross","Freunde","wild","Tiere" -25580 DATA "gut","Leute" -25590 DATA "mannelijk","enkelvoud","vrouwelijk","enkelvoud" -25600 DATA "onzijdig","enkelvoud","meervoud","","meervoud" -25610 DATA "uitzon." -25620 DATA "nul","een","twee","drie","vier","vijf","zes" -25630 DATA "zeven","acht","negen","tien","elf","twaalf" -30000 REM +25000 DATA"#HET BIJVOEGLIJK NAAMWOORD" +25010 DATA"$$eerste of 'der'-groep (z.g. zwakke verbuiging)" +25020 DATA"$$Na een bepalend woord van deze groep krijgt" +25030 DATA"het bijvoeglijk naamwoord 11x -en en 5x -e," +25040 DATA"nl. in de" +25050 DATA"$$1e naamval mannelijk;" +25060 DATA"$1e en 4e naamval vrouwelijk;" +25070 DATA"$1e en 4e naamval onzijdig." +25080 DATA"$$Uitzondering: Na einige, mehrere," +25090 DATA"verschiedene, viele en samtliche krijgt het" +25100 DATA"bijv. nw. in de 1e" +25110 DATA"en 4e nvl. -e in plaats van -en!" +25120 DATA"%Tweede of 'ein'-groep (z.g. gemengde" +25130 DATA"verbuiging)" +25140 DATA"$$Na een bepalend woord van deze groep krijgt" +25150 DATA"het bijv. nw. eveneens en op dezelfde 11" +25160 DATA"plaatsen -en, op de 5 overblijvende plaatsen" +25170 DATA"een andere uitgang, nl." +25180 DATA"$$-er in de 1e naamval mannelijk;" +25190 DATA"$-e in de 1e en 4e naamval vrouwelijk;" +25200 DATA"$-es in de 1e en 4e naamval onzijdig." +25210 DATA"%De derde groep (z.g. sterke verbuiging)" +25220 DATA"$$Wordt het bijv. nw. NIET voorafgegaan door" +25230 DATA"een bepalend woord van de 'der' of 'ein' groep," +25240 DATA"dan krijgt het de uitgangen van dies-er, dies-e," +25250 DATA"dies-es enz." +25260 DATA"$$Uitzondering: In de 2e nvl. mannelijk en" +25270 DATA"onzijdig enkelvoud staat -en in plaats van het" +25280 DATA"te verwachten regelmatige -es." +25290 DATA"%Opmerking:" +25300 DATA"$$Twee of meer bijv. naamwoorden achter elkaar" +25310 DATA"worden op dezelfde wijze verbogen:" +25320 DATA"$$der gut-e alt-e Mann" +25330 DATA"$$gross-e wild-e Tiere." +25340 DATA"%." +25350 DATA"die","des","das","den","dem","der" +25360 DATA"einer","eines","einen","eine ","ein ","einem" +25370 DATA"er","em","e ","s ","n","es","en" +25380 DATA"keiner","keinem","kein " +25390 DATA"keine ","keinen","keines" +25400 DATA"vielem","vieles","viele " +25410 DATA"viel ","vielen","vieler" +25420 DATA6,11,0,1,10,0,3,11,0,1,23,0,28 +25430 DATA15,13,13,15,15,15,15,18,18,19,19,15,15 +25440 DATA0,0,0,0,0,0,0,0,0,0,0,0,0 +25450 DATA2,8,0,6,7,0,2,8,0,6,20,0,31 +25460 DATA19,19,19,19,19,13,19,19,19,19,19,13,13 +25470 DATA18,18,18,0,0,0,18,18,16,0,0,0,0 +25480 DATA5,12,0,6,7,0,5,12,0,4,24,0,30 +25490 DATA19,19,14,19,19,13,19,19,14,19,19,19,19 +25500 DATA0,0,0,0,0,0,0,0,0,17,17,17,17 +25510 DATA4,9,0,1,10,0,3,11,0,1,23,0,28 +25520 DATA19,19,19,15,15,15,15,18,18,19,19,15,15 +25530 DATA0,0,0,0,0,0,0,0,0,0,0,0,0 +25540 DATA"gut","Mann","treu","Hund","rot","Wein" +25550 DATA"gut","Frau","alt","Mutter","heiss","Suppe" +25560 DATA"gut","Buch","klein","Land","kalt","Wetter" +25570 DATA"gut","Leute","gross","Freunde","wild","Tiere" +25580 DATA"gut","Leute" +25590 DATA"mannelijk","enkelvoud","vrouwelijk","enkelvoud" +25600 DATA"onzijdig","enkelvoud","meervoud","","meervoud" +25610 DATA"uitzon." +25620 DATA"nul","een","twee","drie","vier","vijf","zes" +25630 DATA"zeven","acht","negen","tien","elf","twaalf" +30000 REM 30010 REM dit is een 30020 REM Basicode-2 programma 30030 REM van -30040 REM +30040 REM 30050 REM Iwan van Rienen (15 jaar) 30060 REM van Kijfhoeklaan 94 30070 REM 2597 TE Den Haag -30080 REM +30080 REM 30090 REM Regels 20520-20560 en 30100 REM regels 20570-20610 kunnen 30110 REM eventueel voor uw printer 30120 REM aangepast worden. -30130 REM -30140 REM -30150 REM +30130 REM +30140 REM +30150 REM 30160 REM copyright (c) 1987 30170 REM NOS Hilversum - \ No newline at end of file diff --git a/Best_of_Basicode_4/14_Uitleg_Visitekaartjes.bc2 b/Best_of_Basicode_4/14_Uitleg_Visitekaartjes.bc2 index efcd7f3..489ab06 100644 --- a/Best_of_Basicode_4/14_Uitleg_Visitekaartjes.bc2 +++ b/Best_of_Basicode_4/14_Uitleg_Visitekaartjes.bc2 @@ -1,52 +1,52 @@ -1000 A=100:GOTO 20 -1010 REM UITLEG VISITEKAARTJES -1020 GOSUB 100:VE=3:HO=10:GOSUB 110 -1030 PRINT "VISITEKAARTJES":VE=4:GOSUB 110 -1035 PRINT "**************" -1040 PRINT :PRINT -1050 PRINT "BIJ DE VISITEKAARTJES-PUZZLE KRIJGT U" -1060 PRINT "MEESTAL DE OPGAVE IN DE VOLGENDE VORM" -1070 PRINT :PRINT -1080 FOR I=1 TO 20:PRINT "-";:NEXT I -1090 VE=12:HO=0:GOSUB 110 -1100 FOR I=11 TO 21:PRINT "!":NEXT I -1110 FOR I=12 TO 21:HO=19:VE=I:GOSUB 110:PRINT "!":NEXT I -1120 FOR I=1 TO 20:PRINT "-";:NEXT I -1130 VE=14:HO=3:GOSUB 110:PRINT "R.V.KROOST" -1140 VE=18:HO=13:GOSUB 110:PRINT "EPE" -1150 VE=24:HO=2:GOSUB 110:GOSUB 1350 -1160 PRINT "INDIEN U NU OP DE VRAAG 'WELK WOORD '" -1170 PRINT -1180 PRINT "ALLE LETTERS VAN HET VISITE-KAARTJE" -1190 PRINT -1200 PRINT "ACHTER ELKAAR INTIKT, ZONDER PUNTEN" -1210 PRINT -1220 PRINT "DUS ALS VOLGT :":PRINT :PRINT -1230 HO=10:VE=9:GOSUB 110 -1240 PRINT "RVKROOSTEPE":PRINT :PRINT -1250 PRINT "DAN ZAL DE COMPUTER NA ENIGE TIJD ANT-" -1260 PRINT -1270 PRINT "WOORDEN MET :" -1280 HO=8:VE=16:GOSUB 110:PRINT ">> VERKOOPSTER <<" -1290 PRINT -1300 PRINT :PRINT "U HEEFT DAN HET GEVRAAGDE BEROEP.":PRINT -1305 VE=24:HO=2:GOSUB 110:GOSUB 1350 -1310 PRINT "ER ZULLEN ECHTER VEEL MEER BEROEPEN" -1315 PRINT -1320 PRINT "BESTAAN DAN NU IN HET GEHEUGEN ZITTEN" -1325 PRINT -1330 PRINT "U KUNT ECHTER ZELF IN DE DATA-REGELS" -1331 PRINT -1332 PRINT "NA REGEL 26... NIEUWE BEROEPEN TOEVOE-" -1333 PRINT -1334 PRINT "GEN. ER DIENT ECHTER WEL REKENING MEE" -1335 PRINT -1336 PRINT "GEHOUDEN TE WORDEN DAT DE ALLERLAATSTE" -1337 PRINT :PRINT "DATA 'XX' IS" + +1000 A=100:GOTO20 +1010 REMUITLEG VISITEKAARTJES +1020 GOSUB100:VE=3:HO=10:GOSUB110 +1030 PRINT"VISITEKAARTJES":VE=4:GOSUB110 +1035 PRINT"**************" +1040 PRINT:PRINT +1050 PRINT"BIJ DE VISITEKAARTJES-PUZZLE KRIJGT U" +1060 PRINT"MEESTAL DE OPGAVE IN DE VOLGENDE VORM" +1070 PRINT:PRINT +1080 FORI=1 TO20:PRINT"-";:NEXTI +1090 VE=12:HO=0:GOSUB110 +1100 FORI=11 TO21:PRINT"!":NEXTI +1110 FORI=12 TO21:HO=19:VE=I:GOSUB110:PRINT"!":NEXTI +1120 FORI=1 TO20:PRINT"-";:NEXTI +1130 VE=14:HO=3:GOSUB110:PRINT"R.V.KROOST" +1140 VE=18:HO=13:GOSUB110:PRINT"EPE" +1150 VE=24:HO=2:GOSUB110:GOSUB1350 +1160 PRINT"INDIEN U NU OP DE VRAAG 'WELK WOORD '" +1170 PRINT +1180 PRINT"ALLE LETTERS VAN HET VISITE-KAARTJE" +1190 PRINT +1200 PRINT"ACHTER ELKAAR INTIKT, ZONDER PUNTEN" +1210 PRINT +1220 PRINT"DUS ALS VOLGT :":PRINT:PRINT +1230 HO=10:VE=9:GOSUB110 +1240 PRINT"RVKROOSTEPE":PRINT:PRINT +1250 PRINT"DAN ZAL DE COMPUTER NA ENIGE TIJD ANT-" +1260 PRINT +1270 PRINT"WOORDEN MET :" +1280 HO=8:VE=16:GOSUB110:PRINT">> VERKOOPSTER <<" +1290 PRINT +1300 PRINT:PRINT"U HEEFT DAN HET GEVRAAGDE BEROEP.":PRINT +1305 VE=24:HO=2:GOSUB110:GOSUB1350 +1310 PRINT"ER ZULLEN ECHTER VEEL MEER BEROEPEN" +1315 PRINT +1320 PRINT"BESTAAN DAN NU IN HET GEHEUGEN ZITTEN" +1325 PRINT +1330 PRINT"U KUNT ECHTER ZELF IN DE DATA-REGELS" +1331 PRINT +1332 PRINT"NA REGEL 26... NIEUWE BEROEPEN TOEVOE-" +1333 PRINT +1334 PRINT"GEN. ER DIENT ECHTER WEL REKENING MEE" +1335 PRINT +1336 PRINT"GEHOUDEN TE WORDEN DAT DE ALLERLAATSTE" +1337 PRINT:PRINT"DATA 'XX' IS" 1340 END -1350 PRINT "DRUK OP EEN TOETS ";:GOSUB 210:GOSUB 100 +1350 PRINT"DRUK OP EEN TOETS ";:GOSUB210:GOSUB100 1360 RETURN -1370 REM -30000 REM -30010 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file +1370 REM +30000 REM +30010 REMCOPYRIGHT NOS HILVERSUM diff --git a/Best_of_Basicode_4/15_Visitekaartjes.bc2 b/Best_of_Basicode_4/15_Visitekaartjes.bc2 index c419b65..9aa65a8 100644 --- a/Best_of_Basicode_4/15_Visitekaartjes.bc2 +++ b/Best_of_Basicode_4/15_Visitekaartjes.bc2 @@ -1,295 +1,295 @@ -1000 A=2000:GOTO 20 -1010 E$="":GOSUB 100 -1015 PRINT TAB(14);"VISITEKAARTJES" -1020 PRINT TAB(14);"**************" -1030 PRINT :PRINT :PRINT TAB(14);"EVEN GEDULD" -1040 PRINT :PRINT TAB(9);"EERST WOORDENBOEK LADEN" -1050 DIM A$(2000) + +1000 A=2000:GOTO20 +1010 E$="":GOSUB100 +1015 PRINTTAB(14);"VISITEKAARTJES" +1020 PRINTTAB(14);"**************" +1030 PRINT:PRINT:PRINTTAB(14);"EVEN GEDULD" +1040 PRINT:PRINTTAB(9);"EERST WOORDENBOEK LADEN" +1050 DIMA$(2000) 1060 I=1 -1070 READ A$(I) -1080 IF A$(I)="XX" THEN I=I-1:T=I:GOTO 1100 -1090 I=I+1:GOTO 1070 -1100 PRINT :PRINT TAB(10);"ER ZIJN ";T;" BEROEPEN" -1110 PRINT -1120 A=1:PRINT "WELKE OPGAVE ";:INPUT B$ +1070 READA$(I) +1080 IFA$(I)="XX" THENI=I-1:T=I:GOTO1100 +1090 I=I+1:GOTO1070 +1100 PRINT:PRINTTAB(10);"ER ZIJN ";T;" BEROEPEN" +1110 PRINT +1120 A=1:PRINT"WELKE OPGAVE ";:INPUTB$ 1130 P=0 -1140 PRINT :PRINT :L=LEN(B$) -1150 FOR TT=1 TO T -1180 IF LEN(A$(TT))<>L THEN 1300 +1140 PRINT:PRINT:L=LEN(B$) +1150 FORTT=1 TOT +1180 IFLEN(A$(TT))<>L THEN1300 1190 D$=MID$(A$(TT),A,1) -1200 FOR I=1 TO LEN(A$(TT)) +1200 FORI=1 TOLEN(A$(TT)) 1210 C$=MID$(B$,I,1) -1220 IF C$=D$ THEN E$=D$ -1230 NEXT I +1220 IFC$=D$ THENE$=D$ +1230 NEXTI 1240 F$=F$+E$ -1250 IF A$(TT)=MID$(F$,1,L) THEN PRINT A$(TT):P=1:GOTO 1315 -1260 IF LEN(F$)>L THEN 1290 +1250 IFA$(TT)=MID$(F$,1,L) THENPRINTA$(TT):P=1:GOTO1315 +1260 IFLEN(F$)>L THEN1290 1270 A=A+1 -1280 GOTO 1190 +1280 GOTO1190 1290 A=1:D$="":C$="":F$="" -1300 NEXT TT -1310 IF P=0 THEN HO=2:VE=12:GOSUB 110:GOSUB 1420 +1300 NEXTTT +1310 IFP=0 THENHO=2:VE=12:GOSUB110:GOSUB1420 1315 D$="":C$="":E$="":F$="" -1320 GOSUB 1380:GOTO 1110 -1380 HO=1:VE=22:GOSUB 110 -1390 PRINT "NOG EENS ? (J/N) ";:GOSUB 210 -1400 IF IN$="J" THEN GOSUB 100:RETURN -1410 GOSUB 100:VE=12:HO=8:GOSUB 110 -1415 PRINT "TOT UW DIENST !!!":END -1420 GOSUB 250:GOSUB 250:PRINT "HEB IK NIET":RETURN -25000 DATA "AALMOEZENIER","AANNEMER","AARDAPPELHANDELAAR" -25010 DATA "ACCOUNTANT","ACROBAAT","ACTUARIS","ADJUDANT" -25020 DATA "ADJUNCTDIRECTEUR","ADMINISTRATEUR","ADMIRAAL" -25030 DATA "ADVOCAAT","AFDELINGSCHEF","AFDELINGSHOOFD" -25040 DATA "AFFICHETEKENAAR","AFVALWATERTECHNOLOOG" -25050 DATA "AKKERBOUWDESKUNDIGE","KOPERSLAGER","AMANUENSIS" -25060 DATA "AMBASSADERAAD","AMBASSADESECRETARIS" -25070 DATA "BEVOLKINGSAMBTENAAR","AMBTENAAR","ANALIST" -25080 DATA "ANATOOM","ANDRAGOOG","ANESTHESIST","ANTROPOLOOG" -25090 DATA "APOTHEKER","APOTHEKERSASSISTENT","ARBEIDSANALIST" -25100 DATA "ARBEIDSBEMIDDELAAR","ARBEIDSECONOOM","ARCHEOLOOG" -25110 DATA "ARCHITECT","ARCHIVIST","BEDRIJFSARTS" -25120 DATA "GEMEENTEARTS","HUIDARTS","HUISARTS","KINDERARTS" -25130 DATA "OOGARTS","SCHEEPSARTS","SCHOOLARTS","VROUWENARTS" -25140 DATA "ASFALTTECHNICUS","ASIELBEHEERDER","ASSEMBLEUR" -25150 DATA "ASSURANTIEAGENT","ASSURANTIEBEZORGER","ASTRONOOM" -25160 DATA "ATLETIEKLEIDER","ATLETIEKTRAINER" -25170 DATA "VIDEOTECHNICUS","AUTODIESELTECHNICUS" -25180 DATA "AUTOMATISERINGSDESKUNDIGE","AUTOMONTEUR" -25190 DATA "BACTERIOLOOG","BAGGERAAR","BAKENMEESTER","BAKKER" -25200 DATA "BAKSCHIPPER","BALLETDANSERES","BANDENSPECIALIST" -25210 DATA "POTTENBAKKER","BANKETBAKKERSBEDIENDE" -25220 DATA "BEDRIJFSAALMOEZENIER","BEDRIJFSADMINISTRATEUR" -25230 DATA "BEDRIJFSADVISEUR","BEDRIJFSLEIDER","BEELDHOUWER" -25240 DATA "BEELDTECHNICUS","BEGRAFENISONDERNEMER","BEHANGER" -25250 DATA "BEHANGONTWERPER","BEJAARDENHELPENDE","BELICHTER" -25260 DATA "BEJAARDENVERZORGENDE","BELASTINGADVISEUR" -25270 DATA "BELASTINGAMBTENAAR","BELASTINGCONSULENT" -25280 DATA "BELASTINGINSPECTEUR","BELEGGINGSADVISEUR" -25290 DATA "BEROEPSKEUZEPSYCHOLOOG","BESLISKUNDIGE","BOSBAAS" -25300 DATA "BESTURINGSTECHNICUS","BESTUURSAMBTENAAR" -25310 DATA "BOUWKUNDIGE","BRANDMEESTER","BRANDWACHT" -25320 DATA "BROMFIETSMONTEUR","BRANDVEILIGHEIDSDESKUNDIGE" -25330 DATA "BROODBAKKER","BUREAUREDACTEUR","BUSCHAUFFEUR" -25340 DATA "CALCULATOR","CAMERAMAN","CARDIOLOOG","CARGADOOR" -25350 DATA "CARROSSERIEBPOUWER","CARTOGRAAF" -25360 DATA "CHEMICUS","CHIROPODIST","COMMANDEUR","COMMIES" -25370 DATA "COMMISSARIS","COMPUTERTECHNICUS","CONDUCTEUR" -25380 DATA "CONFERENCIER","CONSERVATOR","CONSTRUCTEUR" -25390 DATA "CONSTRUCTIESCHILDER","CONSULENT","CONTROLEUR" -25400 DATA "COSTUMIER","COUPEUR","COUTURIER","CRIMINOLOOG" -25410 DATA "CROUPIER","CULTUURTECHNICUS","DAGBLADJOURNALIST" -25420 DATA "DAKBEDEKKER","DAMESKAPSTER","DECORATEUR" -25430 DATA "DECORATIESCHILDER","DECORBOUWER","DECORONTWERPER" -25440 DATA "DESSINONTWERPER","DETAILLIST","DEURWAARDER" -25450 DATA "DIEPDRUKETSER","DIEPDRUKMONTEUR","DIERENARTS" -25460 DATA "LANDBOUWVOORLICHTER","LANDMEETKUNDIGE" -25470 DATA "LEESBIBLIOTHEEKHOUDER","LEGERPREDIKANT" -25480 DATA "LITHOGRAAF","LOGOPEDIST","LOODGIETER" -25490 DATA "LOONADMINISTRATEUR","LUCHTBEHANDELINGSTECHNICUS" -25500 DATA "LUCHTMACHTOFFICIER","LUCHTVAARTJOURNALIST" -25510 DATA "LUCHTVERKEERSLEIDER","MAATKLEERMAKER","MACHINIST" -25520 DATA "MACHINEBANKWERKER","MAKELAAR","MANAGER" -25530 DATA "MANNEQUIN","MARECHAUSSEE","MARINIER","MATROOS" -25540 DATA "MARKTONDERZOEKER","MEDIASPECIALIST" -25550 DATA "METAALKUNDIGE","METEOROLOOG","MEUBELMAKER" -25560 DATA "MEUBELSTOFFEERDER","MICROBIOLOOG" -25570 DATA "MINERALOOG","MISSIONARIS","MODEFOTOGRAAF" -25580 DATA "MODEONTWERPER","MODETEKENAAR","MODINETTE" -25590 DATA "MOLENAAR","MOLENBAAS","MONDCHIRURG","MUSICOLOOG" -25600 DATA "MUZIEKDOCENT","MUZIEKPEDAGOOG","MUZIEKUITGEVER" -25610 DATA "MIJNINGENIEUR","NATUURKUNDIGE","NEUROCHIRURG" -25620 DATA "NATUURSTEENBEWERKER","NEUROLOOG","NOTARIS" -25630 DATA "NOTARISKLERK","OBERKELNER","OCEANOGRAAF" -25640 DATA "OFFSETDRUKKER","ONDERHANDELINGSTOLK" -25650 DATA "ONDERHOUDSMONTEUR","ONDERHOUDSTECHNICUS" -25660 DATA "ONDEROFFICIER","ONDERWIJSKUNDIGE","ONDERWIJZER" -25670 DATA "OPBOUWWERKER","OPERATIEKAMERVERPLEEGKUNDIGE" -25680 DATA "OPERAZANGER","OPERAZANGERES","OPMAAKREDACTEUR" -25690 DATA "OPNAMELEIDER","OPPERWACHTMEESTER","OPTICIEN" -25700 DATA "OPTIEKMAKER","OPTOMETRIST","OPVOEDKUNDIGE" -25710 DATA "OPZICHTER","ORGANISATIEDESKUNDIGE","ORGANIST" -25720 DATA "ORGELBOUWER","ORTHODONTIST","ORTHOPEDAGOOG" -25730 DATA "ORTHOPEDIST","PAARDENSLAGER","PAARDENVERZORGER" -25740 DATA "PALEONTOLOOG","PARASITOLOOG","AUTODEALER" -25750 DATA "PARKETSECRETARIS","PARKETWACHTER","PASDAME" -25760 DATA "PARLEMENTSTENOGRAAF","PAROCHIEGEESTELIJKE" -25770 DATA "PATHALOOGANATOOM","PEDAGOOG","PEDICURE" -25780 DATA "PERSFOTOGRAAF","PERSONEELCHEF","PETROLOOG" -25790 DATA "PERSONEELSFUNCTIONARIS","PIKEUR","PLAATLASSER" -25800 DATA "PLAATCONSTRUCTIEWERKER","PLAATWERKER","PLANOLOOG" -25810 DATA "PLANNINGSDESKUNDIGE","DIERENARTS" -25820 DATA "PLANTKUNDIGE","PLASTICDESKUNDIGE","BANKWERKER" -25830 DATA "PLUIMVEEKEURMEESTER","PODOLOOG","POELIER" -25840 DATA "PODOTHERAPEUT","POLITICOLOOG","PORTRETFOTOGRAAF" -25850 DATA "POLYESTERVERWERKER","POTTENBAKKER","PREDIKANT" -25860 DATA "PREHISTORICUS","PRESENTATOR","PRIESTER" -25870 DATA "PRIVESECRETARESSE","PROCESOPERATOR","PROCUREUR" -25880 DATA "PROCESTECHNICUS","PRODUCTIELEIDER" -25890 DATA "PRODUCTMANAGER","PRODUCTONTWERPER" -25900 DATA "PROGRAMMEUR","PROJECTADVISEUR","PROJECTLEIDER" -25910 DATA "PROJECTUITVOERDER","PSYCHIATER","PSYCHOLOOG" -25920 DATA "PUBLICIST","PUBLICITEITSCHEF","PIJPLASSER" -25930 DATA "RABBIJN","RADARPIJLER","RADIOMONTEUR" -25940 DATA "RADIOJOURNALIST","RADIOLOOG","RADIOMEDEWERKER" -25950 DATA "RADIOOMROEPER","RADIOREPARATEUR","DIENSTBODE" -25960 DATA "RANGEERDIENSTLEIDER","RAYONLEIDER","RECEPTIONIST" -25970 DATA "RAYONVERTEGENWOORDIGER","BRUGWACHTER","RECHTER" -25980 DATA "RECHTSGELEERDE","RECLAMEADVISEUR","RECLAMECHEF" -25990 DATA "RECLAMEFOTOGRAAF","RECLAMEONTWERPER" -26000 DATA "RECLAMETEKENAAR","RECLAMEVLIEGER","BRIGADIER" -26010 DATA "RECLASSERINGSAMBTENAAR","TELEVISIEMEDEWERKER" -26020 DATA "TELEVISIEMONTEUR","TELEVISIEPRODUCER" -26030 DATA "TELEVISIEREGISSEUR","TELEVISIETECHNICUS" -26040 DATA "TELEVISIEVERSLAGGEVER","AUDIOTECHNICUS" -26050 DATA "TERRAZZOWERKER","TERREINMEESTER","TESTPSYCHOLOOG" -26060 DATA "THEOLOOG","THERAPEUT","TIMMERMAN","DIEETKOK" -26070 DATA "TONEELDANSER","TONEELMEESTER","TONEELRECENSENT" -26080 DATA "TONEELREGISSEUR","TONEELSPELER","TOONKUNSTENAAR" -26090 DATA "TORPEDOMAKER","TOXICOLOOG","TRANSPORTCHEF" -26100 DATA "TRANSPORTONDERNEMER","TRAPEZEWERKER" -26110 DATA "TUINARCHITECT","TUINBOUWCONSULENT","CONSUL" -26120 DATA "TUINBOUWVOORLICHTER","TIJDSCHRIFTJOURNALIST" -26130 DATA "UITGEVER","UITVOERDER","UNIVERSEELSLIJPER" -26140 DATA "VERKOOPSTER","ACTEUR","POLITIEAGENT","ARCHIVARIS" -26150 DATA "BLOEMIST","BOEKHOUDER","DIRECTEUR","DOMINEE" -26160 DATA "DROGIST","ETALEUR","HOFDAME","HOFMEESTER" -26170 DATA "HOOFDREDACTEUR","HUISMEESTER","LIFTMONTEUR" -26180 DATA "MIJNWERKER","ONDERWIJZERES","FIETSENMAKER" -26190 DATA "LEERLOOIER","KINDERMEISJE","HOOFDONDERWIJZER" -26200 DATA "HANDLANGER","HANDELSREIZIGER" -26210 DATA "RANGEERDER","TEGELZETTER","METSELAAR","WINKELIER" -26220 DATA "STOELENMATTER","SCHOORSTEENVEGER","REPORTER" -26230 DATA "HOTELLIER","TREINBESTUURDER","ELECTROMONTEUR" -26240 DATA "LANDBOUWER","HOUTHAKKER","COLPORTEUR","LOKETTIST" -26250 DATA "WEERKUNDIGE","HORLOGEMAKER","KLOKKENMAKER" -26260 DATA "DIRIGENT","SCHRIJVER","KLOOSTERLING","ZANGERES" -26270 DATA "KLEERMAKER","SCHOENMAKER","FIETSENMAKER" -26280 DATA "FOTOMODEL","MANNEQUIN","BANKETBAKKER" -26290 DATA "SECRETARIS","SECRETARESSE","VERZEKERINGSAGENT" -26300 DATA "VERHUIZER","RIJINSTRUCTEUR" -26310 DATA "KLOKKENGIETER","KACHELSMID","BALLERINA" -26320 DATA "METALLURG","BANKBEDIENDE","PARKEERWACHTER" -26330 DATA "BETAALMEESTER","BIBLIOTHECARIS","ASTROLOOG" -26340 DATA "BIOGRAAF","GLASBLAZER","BLIKSLAGER","SPUITGAST" -26350 DATA "BOEKHANDELAAR","BRANDWEERMAN","BIERBROUWER" -26360 DATA "RECHERCHEUR","DETECTIVE","DIJKGRAAF","DIPLOMAAT" -26370 DATA "CEREMONIEMEESTER","COMMISSIONAIR","DAGLONER" -26380 DATA "DOKWERKER","HAVENARBEIDER","DOODGRAVER" -26390 DATA "PIANOSTEMMER","ECONOOM","EDELSMID","ENTOMOLOOG" -26400 DATA "KOORDDANSER","KEURMEESTER","KLUIZENAAR" -26410 DATA "FABRIKANT","FIGURANT","FILIAALHOUDER","OPERATEUR" -26420 DATA "FILMACTEUR","FILMACTRICE","FLUITSPELER" -26430 DATA "FOTOGRAAF","GASFITTER","GEESTELIJKE","GENEALOOG" -26440 DATA "GENERAAL","GERECHTSBODE","STOFFEERDER" -26450 DATA "GEVANGENBEWAARDER","GEWEERMAKER","GEZAGVOERDER" -26460 DATA "GILDEMEESTER" -26470 DATA "GLAZENIER","GONDELIER","GOUVERNANTE","GRAVEUR" -26480 DATA "GOUVERNEUR","GRAFOLOOG","GRENADIER","KANSELIER" -26490 DATA "GRONDWERKER","HAVENMEESTER","TOLGAARDER" -26500 DATA "HEILSOLDAAT","HELDERZIENDE","AANVOERDER" -26510 DATA "HERBERGIER","HISTORICUS","HOMOEOPAATH" -26520 DATA "HOOFDAGENT","HOOGLERAAR","HOUTVESTER" -26530 DATA "VELDWACHTER","HOVENIER","HUISBEWAARDER" -26540 DATA "HUISDOKTER","HUISHOUDSTER","HUISKNECHT" -26550 DATA "INTERNIST","JACHTOPZIENER","RECHTSGELEERDE" -26560 DATA "JONGLEUR","JOURNALIST","JUWELIER","KAPELAAN" -26570 DATA "STRATENMAKER","CARTOGRAAF","KAMERMEISJE" -26580 DATA "KANSELIER","KANTONNIER","STRATENMAKER" -26590 DATA "KAPELMEESTER","KAPITALIST","KWARTIERMEESTER" -26600 DATA "KARDINAAL","KASTELEIN","KUNSTSCHILDER" -26610 DATA "KLOKKENLUIDER","BEIAARDIER" -26620 DATA "KINDERRECHTER","KODDEBEIER","KOEKENBAKKER" -26630 DATA "KOELTECHNICUS","KOETSIER","KOFFIEBRANDER" -26640 DATA "KOFFIEPLANTER","KOOPVAARDER","BOEKDRUKKER" -26650 DATA "MISDIENAAR","KOORZANGER","ZENDELING","KUNSTENAAR" -26660 DATA "TELEGRAFIST","ALLERGOLOOG","KUNSTSCHILDER" -26670 DATA "KWAKZALVER","KWARTIERMAKER","LABORANT" -26680 DATA "LADINGMEESTER","LETTERZETTER","LIJSTENMAKER" -26690 DATA "LIJFWACHT","LITERATOR","REDENAAR","MINSTREEL" -26700 DATA "LOGOPAEDIST","LOKETTISTE","LOOPJONGEN" -26710 DATA "SMOKKELAAR","VERKEERSLEIDER","MANDENMAKER" -26720 DATA "MAARSCHALK","WAARZEGSTER","MARKETENSTER" -26730 DATA "MARKTKOOPMAN","MARSKRAMER","SCHEIDSRECHTER" -26740 DATA "MECANICIEN","VOETBALLER","PRESIDENT" -26750 DATA "VERFHANDELAAR","MOTORAGENT","MILLIONAIR" -26760 DATA "PENNINGMEESTER","RECENSENT","POSTBESTELLER" -26770 DATA "NACHTWAKER","NARCOTISEUR","NETTENBOETSTER" -26780 DATA "NAVIGATOR","OESTERKWEKER","SUIKERWERKER" -26790 DATA "KAMERHEER","STALMEESTER","VERTEGENWOORDIGER" -26800 DATA "FILMOPERATEUR","WACHTMEESTER","ORGELDRAAIER" -26810 DATA "ORTHOPAEDIST","VERPLEEGSTER","RECEPTIONISTE" -26820 DATA "TELEFONISTE","PENNINGMEESTER","PAARDENFOKKER" -26830 DATA "PAEDAGOOG","PALFRENIER","PANDJESBAAS" -26840 DATA "PARAGNOST","PARELDUIKER","PARLEVINKER" -26850 DATA "PERSCOMMENTATOR","PLANTENKWEKER","PLATEELBAKKER" -26860 DATA "STUCADOOR","DIJKWERKER","POLDERWERKER" -26870 DATA "POLITICUS","POPPENDOKTER","POSTBEAMBTE" -26880 DATA "ZAAKWAARNEMER","PROCURATIEHOUDER","PROFESSOR" -26890 DATA "PROPAGANDIST","PROSPECTOR","PRUIKENMAKER" -26900 DATA "PUINRUIMER","REFERENDARIS","VERSLAGGEVER" -26910 DATA "REGISSEUR","RENTENIER","RENTMEESTER","REPELAAR" -26920 DATA "RIJKNECHT","RIJNSCHIPPER","BINNENSCHIPPER" -26930 DATA "RITMEESTER","ROERGANGER","ROMANSCHRIJVER" -26940 DATA "SABOTEUR","SAMENZWEERDER","SASMEESTER" -26950 DATA "SLUISWACHTER","HEKELDICHTER","SCHAAKMEESTER" -26960 DATA "SCHAAPHERDER","SCHAAKSPELER","HERENKAPPER" -26970 DATA "SCHEIKUNDIGE","SCHELPENVISSER","SCHERPRECHTER" -26980 DATA "SCHERPSCHUTTER","SCHILLENBOER","SCHOENPOETSER" -26990 DATA "SCHOOLMEESTER","SCHOOLHOOFD","SCHOONMAAKSTER" -27000 DATA "SCHRIJNWERKER","SEINWACHTER","VLEESHOUWER" -27010 DATA "SLOTENMAKER","SNEEUWRUIMER","SORTEERDER" -27020 DATA "SOUFFLEUR","SPECIALIST","SPOORZOEKER" -27030 DATA "STANDWERKER","STATIONCHEF","STEENHOUWER" -27040 DATA "STENOGRAAF","STERRENKUNDIGE","STRAATVEGER" -27050 DATA "STRAATVENTER","STRAFRECHTER","STRANDVONDER" -27060 DATA "STUKADOOR","STUNTVLIEGER","STUWADOOR" -27070 DATA "ZAALWACHTER","TAALGELEERDE","TAALKUNDIGE" -27080 DATA "TABAKHANDELAAR","TABAKTELER","TANDARTS" -27090 DATA "TANDHEELKUNDIGE","TANDTECHNICUS","TENORZANGER" -27100 DATA "TAXATEUR","TEMPELIER","TERRAZZOWERKER" -27110 DATA "TERREINKNECHT","TERRORIST","TONEELSPEELSTER" -27120 DATA "TESTPILOOT","TOONDICHTER","STIERENVECHTER" -27130 DATA "COMPONIST","TOPOGRAAF","TOUWSLAGER","TYPOGRAAF" -27140 DATA "TROMBONIST","TROMPETTIST","HOORNBLAZER" -27150 DATA "TURFSCHIPPER","VRACHTRIJDER","UITSMIJTER" -27160 DATA "UITVINDER","VAANDELDRAGER","BEURTSCHIPPER" -27170 DATA "VALKENIER","VARENSGEZEL","VEEHANDELAAR" -27180 DATA "VEEFOKKER","VEENARBEIDER","VEILINGHOUDER" -27190 DATA "VEILINGMEESTER","VELDMAARSCHALK","VERSPIEDER" -27200 DATA "ZIEKENVERPLEGER","VERSTELNAAISTER","VERZAMELAAR" -27210 DATA "VERZEKERAAR","VIOOLSPELER","KLARINETTIST" -27220 DATA "VIOOLBOUWER","VISHANDELAAR","VUURTORENWACHTER" -27230 DATA "VISVENTER","VLIEGENIER","VODDENRAPER" -27240 DATA "WAGENMENNER","VOORZITTER","VRIJBUITER" -27250 DATA "AVONTURIER","VROEDVROUW","WAFELBAKKER" -27260 DATA "WAGENMEESTER","WAGENMAKER","WAPENHANDELAAR" -27270 DATA "WEGWERKER","WERKTUIGKUNDIGE","WIJKVERPLEEGSTER" -27280 DATA "WETHOUDER","WIJNHANDELAAR","WISKUNDELERAAR" -27290 DATA "WISKUNDIGE","KAARSENMAKER" -27300 DATA "BOSWACHTER","RECLAMESCHILDER","PLUIMVEEHOUDER" -27310 DATA "CHAMPIGNONTELER","PRODUCTIEPLANNER","HOEFSMID" -27320 DATA "RADIOVERSLAGGEVER","BETONTIMMERMAN","MANICURE" -27330 DATA "PARKETADMINISTRATEUR","MILIEUDESKUNDIGE" -27340 DATA "TELEVISIEMAKER","TUINBOUWKUNDIGE","LANDMETER" -27350 DATA "TREINDIENSTLEIDER","MELKHANDELAAR","HUISBAAS" -27360 DATA "MODELMAKER","MODELLEUR","PROFIELSLIJPER" -27370 DATA "LICHTDRUKKER","LIJNGRAVEUR","ONDERNEMER" -27380 DATA "UROLOOG","PERSCHEF" -29990 DATA "XX" +1320 GOSUB1380:GOTO1110 +1380 HO=1:VE=22:GOSUB110 +1390 PRINT"NOG EENS ? (J/N) ";:GOSUB210 +1400 IFIN$="J" THENGOSUB100:RETURN +1410 GOSUB100:VE=12:HO=8:GOSUB110 +1415 PRINT"TOT UW DIENST !!!":END +1420 GOSUB250:GOSUB250:PRINT"HEB IK NIET":RETURN +25000 DATA"AALMOEZENIER","AANNEMER","AARDAPPELHANDELAAR" +25010 DATA"ACCOUNTANT","ACROBAAT","ACTUARIS","ADJUDANT" +25020 DATA"ADJUNCTDIRECTEUR","ADMINISTRATEUR","ADMIRAAL" +25030 DATA"ADVOCAAT","AFDELINGSCHEF","AFDELINGSHOOFD" +25040 DATA"AFFICHETEKENAAR","AFVALWATERTECHNOLOOG" +25050 DATA"AKKERBOUWDESKUNDIGE","KOPERSLAGER","AMANUENSIS" +25060 DATA"AMBASSADERAAD","AMBASSADESECRETARIS" +25070 DATA"BEVOLKINGSAMBTENAAR","AMBTENAAR","ANALIST" +25080 DATA"ANATOOM","ANDRAGOOG","ANESTHESIST","ANTROPOLOOG" +25090 DATA"APOTHEKER","APOTHEKERSASSISTENT","ARBEIDSANALIST" +25100 DATA"ARBEIDSBEMIDDELAAR","ARBEIDSECONOOM","ARCHEOLOOG" +25110 DATA"ARCHITECT","ARCHIVIST","BEDRIJFSARTS" +25120 DATA"GEMEENTEARTS","HUIDARTS","HUISARTS","KINDERARTS" +25130 DATA"OOGARTS","SCHEEPSARTS","SCHOOLARTS","VROUWENARTS" +25140 DATA"ASFALTTECHNICUS","ASIELBEHEERDER","ASSEMBLEUR" +25150 DATA"ASSURANTIEAGENT","ASSURANTIEBEZORGER","ASTRONOOM" +25160 DATA"ATLETIEKLEIDER","ATLETIEKTRAINER" +25170 DATA"VIDEOTECHNICUS","AUTODIESELTECHNICUS" +25180 DATA"AUTOMATISERINGSDESKUNDIGE","AUTOMONTEUR" +25190 DATA"BACTERIOLOOG","BAGGERAAR","BAKENMEESTER","BAKKER" +25200 DATA"BAKSCHIPPER","BALLETDANSERES","BANDENSPECIALIST" +25210 DATA"POTTENBAKKER","BANKETBAKKERSBEDIENDE" +25220 DATA"BEDRIJFSAALMOEZENIER","BEDRIJFSADMINISTRATEUR" +25230 DATA"BEDRIJFSADVISEUR","BEDRIJFSLEIDER","BEELDHOUWER" +25240 DATA"BEELDTECHNICUS","BEGRAFENISONDERNEMER","BEHANGER" +25250 DATA"BEHANGONTWERPER","BEJAARDENHELPENDE","BELICHTER" +25260 DATA"BEJAARDENVERZORGENDE","BELASTINGADVISEUR" +25270 DATA"BELASTINGAMBTENAAR","BELASTINGCONSULENT" +25280 DATA"BELASTINGINSPECTEUR","BELEGGINGSADVISEUR" +25290 DATA"BEROEPSKEUZEPSYCHOLOOG","BESLISKUNDIGE","BOSBAAS" +25300 DATA"BESTURINGSTECHNICUS","BESTUURSAMBTENAAR" +25310 DATA"BOUWKUNDIGE","BRANDMEESTER","BRANDWACHT" +25320 DATA"BROMFIETSMONTEUR","BRANDVEILIGHEIDSDESKUNDIGE" +25330 DATA"BROODBAKKER","BUREAUREDACTEUR","BUSCHAUFFEUR" +25340 DATA"CALCULATOR","CAMERAMAN","CARDIOLOOG","CARGADOOR" +25350 DATA"CARROSSERIEBPOUWER","CARTOGRAAF" +25360 DATA"CHEMICUS","CHIROPODIST","COMMANDEUR","COMMIES" +25370 DATA"COMMISSARIS","COMPUTERTECHNICUS","CONDUCTEUR" +25380 DATA"CONFERENCIER","CONSERVATOR","CONSTRUCTEUR" +25390 DATA"CONSTRUCTIESCHILDER","CONSULENT","CONTROLEUR" +25400 DATA"COSTUMIER","COUPEUR","COUTURIER","CRIMINOLOOG" +25410 DATA"CROUPIER","CULTUURTECHNICUS","DAGBLADJOURNALIST" +25420 DATA"DAKBEDEKKER","DAMESKAPSTER","DECORATEUR" +25430 DATA"DECORATIESCHILDER","DECORBOUWER","DECORONTWERPER" +25440 DATA"DESSINONTWERPER","DETAILLIST","DEURWAARDER" +25450 DATA"DIEPDRUKETSER","DIEPDRUKMONTEUR","DIERENARTS" +25460 DATA"LANDBOUWVOORLICHTER","LANDMEETKUNDIGE" +25470 DATA"LEESBIBLIOTHEEKHOUDER","LEGERPREDIKANT" +25480 DATA"LITHOGRAAF","LOGOPEDIST","LOODGIETER" +25490 DATA"LOONADMINISTRATEUR","LUCHTBEHANDELINGSTECHNICUS" +25500 DATA"LUCHTMACHTOFFICIER","LUCHTVAARTJOURNALIST" +25510 DATA"LUCHTVERKEERSLEIDER","MAATKLEERMAKER","MACHINIST" +25520 DATA"MACHINEBANKWERKER","MAKELAAR","MANAGER" +25530 DATA"MANNEQUIN","MARECHAUSSEE","MARINIER","MATROOS" +25540 DATA"MARKTONDERZOEKER","MEDIASPECIALIST" +25550 DATA"METAALKUNDIGE","METEOROLOOG","MEUBELMAKER" +25560 DATA"MEUBELSTOFFEERDER","MICROBIOLOOG" +25570 DATA"MINERALOOG","MISSIONARIS","MODEFOTOGRAAF" +25580 DATA"MODEONTWERPER","MODETEKENAAR","MODINETTE" +25590 DATA"MOLENAAR","MOLENBAAS","MONDCHIRURG","MUSICOLOOG" +25600 DATA"MUZIEKDOCENT","MUZIEKPEDAGOOG","MUZIEKUITGEVER" +25610 DATA"MIJNINGENIEUR","NATUURKUNDIGE","NEUROCHIRURG" +25620 DATA"NATUURSTEENBEWERKER","NEUROLOOG","NOTARIS" +25630 DATA"NOTARISKLERK","OBERKELNER","OCEANOGRAAF" +25640 DATA"OFFSETDRUKKER","ONDERHANDELINGSTOLK" +25650 DATA"ONDERHOUDSMONTEUR","ONDERHOUDSTECHNICUS" +25660 DATA"ONDEROFFICIER","ONDERWIJSKUNDIGE","ONDERWIJZER" +25670 DATA"OPBOUWWERKER","OPERATIEKAMERVERPLEEGKUNDIGE" +25680 DATA"OPERAZANGER","OPERAZANGERES","OPMAAKREDACTEUR" +25690 DATA"OPNAMELEIDER","OPPERWACHTMEESTER","OPTICIEN" +25700 DATA"OPTIEKMAKER","OPTOMETRIST","OPVOEDKUNDIGE" +25710 DATA"OPZICHTER","ORGANISATIEDESKUNDIGE","ORGANIST" +25720 DATA"ORGELBOUWER","ORTHODONTIST","ORTHOPEDAGOOG" +25730 DATA"ORTHOPEDIST","PAARDENSLAGER","PAARDENVERZORGER" +25740 DATA"PALEONTOLOOG","PARASITOLOOG","AUTODEALER" +25750 DATA"PARKETSECRETARIS","PARKETWACHTER","PASDAME" +25760 DATA"PARLEMENTSTENOGRAAF","PAROCHIEGEESTELIJKE" +25770 DATA"PATHALOOGANATOOM","PEDAGOOG","PEDICURE" +25780 DATA"PERSFOTOGRAAF","PERSONEELCHEF","PETROLOOG" +25790 DATA"PERSONEELSFUNCTIONARIS","PIKEUR","PLAATLASSER" +25800 DATA"PLAATCONSTRUCTIEWERKER","PLAATWERKER","PLANOLOOG" +25810 DATA"PLANNINGSDESKUNDIGE","DIERENARTS" +25820 DATA"PLANTKUNDIGE","PLASTICDESKUNDIGE","BANKWERKER" +25830 DATA"PLUIMVEEKEURMEESTER","PODOLOOG","POELIER" +25840 DATA"PODOTHERAPEUT","POLITICOLOOG","PORTRETFOTOGRAAF" +25850 DATA"POLYESTERVERWERKER","POTTENBAKKER","PREDIKANT" +25860 DATA"PREHISTORICUS","PRESENTATOR","PRIESTER" +25870 DATA"PRIVESECRETARESSE","PROCESOPERATOR","PROCUREUR" +25880 DATA"PROCESTECHNICUS","PRODUCTIELEIDER" +25890 DATA"PRODUCTMANAGER","PRODUCTONTWERPER" +25900 DATA"PROGRAMMEUR","PROJECTADVISEUR","PROJECTLEIDER" +25910 DATA"PROJECTUITVOERDER","PSYCHIATER","PSYCHOLOOG" +25920 DATA"PUBLICIST","PUBLICITEITSCHEF","PIJPLASSER" +25930 DATA"RABBIJN","RADARPIJLER","RADIOMONTEUR" +25940 DATA"RADIOJOURNALIST","RADIOLOOG","RADIOMEDEWERKER" +25950 DATA"RADIOOMROEPER","RADIOREPARATEUR","DIENSTBODE" +25960 DATA"RANGEERDIENSTLEIDER","RAYONLEIDER","RECEPTIONIST" +25970 DATA"RAYONVERTEGENWOORDIGER","BRUGWACHTER","RECHTER" +25980 DATA"RECHTSGELEERDE","RECLAMEADVISEUR","RECLAMECHEF" +25990 DATA"RECLAMEFOTOGRAAF","RECLAMEONTWERPER" +26000 DATA"RECLAMETEKENAAR","RECLAMEVLIEGER","BRIGADIER" +26010 DATA"RECLASSERINGSAMBTENAAR","TELEVISIEMEDEWERKER" +26020 DATA"TELEVISIEMONTEUR","TELEVISIEPRODUCER" +26030 DATA"TELEVISIEREGISSEUR","TELEVISIETECHNICUS" +26040 DATA"TELEVISIEVERSLAGGEVER","AUDIOTECHNICUS" +26050 DATA"TERRAZZOWERKER","TERREINMEESTER","TESTPSYCHOLOOG" +26060 DATA"THEOLOOG","THERAPEUT","TIMMERMAN","DIEETKOK" +26070 DATA"TONEELDANSER","TONEELMEESTER","TONEELRECENSENT" +26080 DATA"TONEELREGISSEUR","TONEELSPELER","TOONKUNSTENAAR" +26090 DATA"TORPEDOMAKER","TOXICOLOOG","TRANSPORTCHEF" +26100 DATA"TRANSPORTONDERNEMER","TRAPEZEWERKER" +26110 DATA"TUINARCHITECT","TUINBOUWCONSULENT","CONSUL" +26120 DATA"TUINBOUWVOORLICHTER","TIJDSCHRIFTJOURNALIST" +26130 DATA"UITGEVER","UITVOERDER","UNIVERSEELSLIJPER" +26140 DATA"VERKOOPSTER","ACTEUR","POLITIEAGENT","ARCHIVARIS" +26150 DATA"BLOEMIST","BOEKHOUDER","DIRECTEUR","DOMINEE" +26160 DATA"DROGIST","ETALEUR","HOFDAME","HOFMEESTER" +26170 DATA"HOOFDREDACTEUR","HUISMEESTER","LIFTMONTEUR" +26180 DATA"MIJNWERKER","ONDERWIJZERES","FIETSENMAKER" +26190 DATA"LEERLOOIER","KINDERMEISJE","HOOFDONDERWIJZER" +26200 DATA"HANDLANGER","HANDELSREIZIGER" +26210 DATA"RANGEERDER","TEGELZETTER","METSELAAR","WINKELIER" +26220 DATA"STOELENMATTER","SCHOORSTEENVEGER","REPORTER" +26230 DATA"HOTELLIER","TREINBESTUURDER","ELECTROMONTEUR" +26240 DATA"LANDBOUWER","HOUTHAKKER","COLPORTEUR","LOKETTIST" +26250 DATA"WEERKUNDIGE","HORLOGEMAKER","KLOKKENMAKER" +26260 DATA"DIRIGENT","SCHRIJVER","KLOOSTERLING","ZANGERES" +26270 DATA"KLEERMAKER","SCHOENMAKER","FIETSENMAKER" +26280 DATA"FOTOMODEL","MANNEQUIN","BANKETBAKKER" +26290 DATA"SECRETARIS","SECRETARESSE","VERZEKERINGSAGENT" +26300 DATA"VERHUIZER","RIJINSTRUCTEUR" +26310 DATA"KLOKKENGIETER","KACHELSMID","BALLERINA" +26320 DATA"METALLURG","BANKBEDIENDE","PARKEERWACHTER" +26330 DATA"BETAALMEESTER","BIBLIOTHECARIS","ASTROLOOG" +26340 DATA"BIOGRAAF","GLASBLAZER","BLIKSLAGER","SPUITGAST" +26350 DATA"BOEKHANDELAAR","BRANDWEERMAN","BIERBROUWER" +26360 DATA"RECHERCHEUR","DETECTIVE","DIJKGRAAF","DIPLOMAAT" +26370 DATA"CEREMONIEMEESTER","COMMISSIONAIR","DAGLONER" +26380 DATA"DOKWERKER","HAVENARBEIDER","DOODGRAVER" +26390 DATA"PIANOSTEMMER","ECONOOM","EDELSMID","ENTOMOLOOG" +26400 DATA"KOORDDANSER","KEURMEESTER","KLUIZENAAR" +26410 DATA"FABRIKANT","FIGURANT","FILIAALHOUDER","OPERATEUR" +26420 DATA"FILMACTEUR","FILMACTRICE","FLUITSPELER" +26430 DATA"FOTOGRAAF","GASFITTER","GEESTELIJKE","GENEALOOG" +26440 DATA"GENERAAL","GERECHTSBODE","STOFFEERDER" +26450 DATA"GEVANGENBEWAARDER","GEWEERMAKER","GEZAGVOERDER" +26460 DATA"GILDEMEESTER" +26470 DATA"GLAZENIER","GONDELIER","GOUVERNANTE","GRAVEUR" +26480 DATA"GOUVERNEUR","GRAFOLOOG","GRENADIER","KANSELIER" +26490 DATA"GRONDWERKER","HAVENMEESTER","TOLGAARDER" +26500 DATA"HEILSOLDAAT","HELDERZIENDE","AANVOERDER" +26510 DATA"HERBERGIER","HISTORICUS","HOMOEOPAATH" +26520 DATA"HOOFDAGENT","HOOGLERAAR","HOUTVESTER" +26530 DATA"VELDWACHTER","HOVENIER","HUISBEWAARDER" +26540 DATA"HUISDOKTER","HUISHOUDSTER","HUISKNECHT" +26550 DATA"INTERNIST","JACHTOPZIENER","RECHTSGELEERDE" +26560 DATA"JONGLEUR","JOURNALIST","JUWELIER","KAPELAAN" +26570 DATA"STRATENMAKER","CARTOGRAAF","KAMERMEISJE" +26580 DATA"KANSELIER","KANTONNIER","STRATENMAKER" +26590 DATA"KAPELMEESTER","KAPITALIST","KWARTIERMEESTER" +26600 DATA"KARDINAAL","KASTELEIN","KUNSTSCHILDER" +26610 DATA"KLOKKENLUIDER","BEIAARDIER" +26620 DATA"KINDERRECHTER","KODDEBEIER","KOEKENBAKKER" +26630 DATA"KOELTECHNICUS","KOETSIER","KOFFIEBRANDER" +26640 DATA"KOFFIEPLANTER","KOOPVAARDER","BOEKDRUKKER" +26650 DATA"MISDIENAAR","KOORZANGER","ZENDELING","KUNSTENAAR" +26660 DATA"TELEGRAFIST","ALLERGOLOOG","KUNSTSCHILDER" +26670 DATA"KWAKZALVER","KWARTIERMAKER","LABORANT" +26680 DATA"LADINGMEESTER","LETTERZETTER","LIJSTENMAKER" +26690 DATA"LIJFWACHT","LITERATOR","REDENAAR","MINSTREEL" +26700 DATA"LOGOPAEDIST","LOKETTISTE","LOOPJONGEN" +26710 DATA"SMOKKELAAR","VERKEERSLEIDER","MANDENMAKER" +26720 DATA"MAARSCHALK","WAARZEGSTER","MARKETENSTER" +26730 DATA"MARKTKOOPMAN","MARSKRAMER","SCHEIDSRECHTER" +26740 DATA"MECANICIEN","VOETBALLER","PRESIDENT" +26750 DATA"VERFHANDELAAR","MOTORAGENT","MILLIONAIR" +26760 DATA"PENNINGMEESTER","RECENSENT","POSTBESTELLER" +26770 DATA"NACHTWAKER","NARCOTISEUR","NETTENBOETSTER" +26780 DATA"NAVIGATOR","OESTERKWEKER","SUIKERWERKER" +26790 DATA"KAMERHEER","STALMEESTER","VERTEGENWOORDIGER" +26800 DATA"FILMOPERATEUR","WACHTMEESTER","ORGELDRAAIER" +26810 DATA"ORTHOPAEDIST","VERPLEEGSTER","RECEPTIONISTE" +26820 DATA"TELEFONISTE","PENNINGMEESTER","PAARDENFOKKER" +26830 DATA"PAEDAGOOG","PALFRENIER","PANDJESBAAS" +26840 DATA"PARAGNOST","PARELDUIKER","PARLEVINKER" +26850 DATA"PERSCOMMENTATOR","PLANTENKWEKER","PLATEELBAKKER" +26860 DATA"STUCADOOR","DIJKWERKER","POLDERWERKER" +26870 DATA"POLITICUS","POPPENDOKTER","POSTBEAMBTE" +26880 DATA"ZAAKWAARNEMER","PROCURATIEHOUDER","PROFESSOR" +26890 DATA"PROPAGANDIST","PROSPECTOR","PRUIKENMAKER" +26900 DATA"PUINRUIMER","REFERENDARIS","VERSLAGGEVER" +26910 DATA"REGISSEUR","RENTENIER","RENTMEESTER","REPELAAR" +26920 DATA"RIJKNECHT","RIJNSCHIPPER","BINNENSCHIPPER" +26930 DATA"RITMEESTER","ROERGANGER","ROMANSCHRIJVER" +26940 DATA"SABOTEUR","SAMENZWEERDER","SASMEESTER" +26950 DATA"SLUISWACHTER","HEKELDICHTER","SCHAAKMEESTER" +26960 DATA"SCHAAPHERDER","SCHAAKSPELER","HERENKAPPER" +26970 DATA"SCHEIKUNDIGE","SCHELPENVISSER","SCHERPRECHTER" +26980 DATA"SCHERPSCHUTTER","SCHILLENBOER","SCHOENPOETSER" +26990 DATA"SCHOOLMEESTER","SCHOOLHOOFD","SCHOONMAAKSTER" +27000 DATA"SCHRIJNWERKER","SEINWACHTER","VLEESHOUWER" +27010 DATA"SLOTENMAKER","SNEEUWRUIMER","SORTEERDER" +27020 DATA"SOUFFLEUR","SPECIALIST","SPOORZOEKER" +27030 DATA"STANDWERKER","STATIONCHEF","STEENHOUWER" +27040 DATA"STENOGRAAF","STERRENKUNDIGE","STRAATVEGER" +27050 DATA"STRAATVENTER","STRAFRECHTER","STRANDVONDER" +27060 DATA"STUKADOOR","STUNTVLIEGER","STUWADOOR" +27070 DATA"ZAALWACHTER","TAALGELEERDE","TAALKUNDIGE" +27080 DATA"TABAKHANDELAAR","TABAKTELER","TANDARTS" +27090 DATA"TANDHEELKUNDIGE","TANDTECHNICUS","TENORZANGER" +27100 DATA"TAXATEUR","TEMPELIER","TERRAZZOWERKER" +27110 DATA"TERREINKNECHT","TERRORIST","TONEELSPEELSTER" +27120 DATA"TESTPILOOT","TOONDICHTER","STIERENVECHTER" +27130 DATA"COMPONIST","TOPOGRAAF","TOUWSLAGER","TYPOGRAAF" +27140 DATA"TROMBONIST","TROMPETTIST","HOORNBLAZER" +27150 DATA"TURFSCHIPPER","VRACHTRIJDER","UITSMIJTER" +27160 DATA"UITVINDER","VAANDELDRAGER","BEURTSCHIPPER" +27170 DATA"VALKENIER","VARENSGEZEL","VEEHANDELAAR" +27180 DATA"VEEFOKKER","VEENARBEIDER","VEILINGHOUDER" +27190 DATA"VEILINGMEESTER","VELDMAARSCHALK","VERSPIEDER" +27200 DATA"ZIEKENVERPLEGER","VERSTELNAAISTER","VERZAMELAAR" +27210 DATA"VERZEKERAAR","VIOOLSPELER","KLARINETTIST" +27220 DATA"VIOOLBOUWER","VISHANDELAAR","VUURTORENWACHTER" +27230 DATA"VISVENTER","VLIEGENIER","VODDENRAPER" +27240 DATA"WAGENMENNER","VOORZITTER","VRIJBUITER" +27250 DATA"AVONTURIER","VROEDVROUW","WAFELBAKKER" +27260 DATA"WAGENMEESTER","WAGENMAKER","WAPENHANDELAAR" +27270 DATA"WEGWERKER","WERKTUIGKUNDIGE","WIJKVERPLEEGSTER" +27280 DATA"WETHOUDER","WIJNHANDELAAR","WISKUNDELERAAR" +27290 DATA"WISKUNDIGE","KAARSENMAKER" +27300 DATA"BOSWACHTER","RECLAMESCHILDER","PLUIMVEEHOUDER" +27310 DATA"CHAMPIGNONTELER","PRODUCTIEPLANNER","HOEFSMID" +27320 DATA"RADIOVERSLAGGEVER","BETONTIMMERMAN","MANICURE" +27330 DATA"PARKETADMINISTRATEUR","MILIEUDESKUNDIGE" +27340 DATA"TELEVISIEMAKER","TUINBOUWKUNDIGE","LANDMETER" +27350 DATA"TREINDIENSTLEIDER","MELKHANDELAAR","HUISBAAS" +27360 DATA"MODELMAKER","MODELLEUR","PROFIELSLIJPER" +27370 DATA"LICHTDRUKKER","LIJNGRAVEUR","ONDERNEMER" +27380 DATA"UROLOOG","PERSCHEF" +29990 DATA"XX" 30000 REM VISITE-KAARTJE 30010 REM GEMAAKT OP EEN 30015 REM ITT 2020 -30016 REM +30016 REM 30017 REM DOOR -30018 REM +30018 REM 30020 REM JOOP HITZ 30030 REM LEYWEG 552 -30040 REM 2545 EK DEN HAAG -30050 REM TEL.: 070-298616 +30040 REM2545 EK DEN HAAG +30050 REMTEL.: 070-298616 30060 REM OF 30070 REM FIDO-NODE 104 30080 REM CP/M-SWBOSS -30090 REM TEL.: 070-694081 +30090 REMTEL.: 070-694081 30100 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/16_Vermenigvuldigen.bc2 b/Best_of_Basicode_4/16_Vermenigvuldigen.bc2 index e8b105a..9e5cd6f 100644 --- a/Best_of_Basicode_4/16_Vermenigvuldigen.bc2 +++ b/Best_of_Basicode_4/16_Vermenigvuldigen.bc2 @@ -1,118 +1,118 @@ -1000 A=300:GOTO 20:REM "VERMENIGVULDIG" -1010 DIM PP$(8) -1020 FO=0:GOSUB 100:PRINT -1030 PRINT " WE GAAN SAMEN VERMENIGVULDIGEN.":PRINT -1040 PRINT " Wil je kijken of zelf rekenen (K/R) "; -1050 GOSUB 210:PRINT IN$:PRINT -1060 IF (IN$<>"R") AND(IN$<>"r") THEN FO=-1:GOTO 1180 -1070 PRINT " Jij mag twee getallen geven." -1080 PRINT " Die schrijf ik dan onder elkaar." -1090 PRINT " Dan mag jij de getallen intikken," -1100 PRINT " maar ik reken mee!":PRINT -1110 PRINT " Als je een fout cijfertje intikt" -1120 PRINT " Dan houd ik dat tegen." -1130 PRINT " Dan kun je gewoon het goede cijfertje" -1140 PRINT " intikken, en dan krijgen we allemaal" -1150 PRINT " goede sommen!" -1160 PRINT " Als je geen enkel foutje maakt" -1170 PRINT " dan zeg ik 'GOED GEDAAN!'":PRINT -1180 PRINT " Geef maar twee getallen.":PRINT -1190 PRINT " EERSTE GETAL ";:GOSUB 1270 -1200 AA$=AO$:LA=LEN(AA$):PRINT -1210 PRINT :PRINT " TWEEDE GETAL ";:GOSUB 1270 -1220 BB$=AO$:LB=LEN(BB$):PRINT -1230 PRINT :PRINT " Dank je wel. TIK OP RETURN "; -1240 GOSUB 210:IF IN$<>CHR$(13) THEN 1240 -1250 GOTO 1350 + +1000 A=300:GOTO20:REM"VERMENIGVULDIG" +1010 DIMPP$(8) +1020 FO=0:GOSUB100:PRINT +1030 PRINT" WE GAAN SAMEN VERMENIGVULDIGEN.":PRINT +1040 PRINT" Wil je kijken of zelf rekenen (K/R) "; +1050 GOSUB210:PRINTIN$:PRINT +1060 IF(IN$<>"R") AND(IN$<>"r") THENFO=-1:GOTO1180 +1070 PRINT" Jij mag twee getallen geven." +1080 PRINT" Die schrijf ik dan onder elkaar." +1090 PRINT" Dan mag jij de getallen intikken," +1100 PRINT" maar ik reken mee!":PRINT +1110 PRINT" Als je een fout cijfertje intikt" +1120 PRINT" Dan houd ik dat tegen." +1130 PRINT" Dan kun je gewoon het goede cijfertje" +1140 PRINT" intikken, en dan krijgen we allemaal" +1150 PRINT" goede sommen!" +1160 PRINT" Als je geen enkel foutje maakt" +1170 PRINT" dan zeg ik 'GOED GEDAAN!'":PRINT +1180 PRINT" Geef maar twee getallen.":PRINT +1190 PRINT" EERSTE GETAL ";:GOSUB1270 +1200 AA$=AO$:LA=LEN(AA$):PRINT +1210 PRINT:PRINT" TWEEDE GETAL ";:GOSUB1270 +1220 BB$=AO$:LB=LEN(BB$):PRINT +1230 PRINT:PRINT" Dank je wel. TIK OP RETURN "; +1240 GOSUB210:IFIN$<>CHR$(13) THEN1240 +1250 GOTO1350 1260 : 1270 REM === SUBR.INNEMEN GETAL === -1280 GOSUB 210:IF (ASC(IN$)<49) OR(ASC(IN$)>57) THEN 1280 -1290 AI=ASC(IN$)-48:PRINT IN$;:AO$=IN$ -1300 GOSUB 210:IF (IN$=CHR$(13)) OR(LEN(AO$)>5) THEN 1330 -1310 IF (ASC(IN$)<48) OR(ASC(IN$)>57) THEN 1300 -1320 AO$=AO$+IN$:PRINT IN$;:AI=AI*10+ASC(IN$)-48:GOTO 1300 +1280 GOSUB210:IF(ASC(IN$)<49) OR(ASC(IN$)>57) THEN1280 +1290 AI=ASC(IN$)-48:PRINTIN$;:AO$=IN$ +1300 GOSUB210:IF(IN$=CHR$(13)) OR(LEN(AO$)>5) THEN1330 +1310 IF(ASC(IN$)<48) OR(ASC(IN$)>57) THEN1300 +1320 AO$=AO$+IN$:PRINTIN$;:AI=AI*10+ASC(IN$)-48:GOTO1300 1330 RETURN 1340 : 1350 REM === HOOFDPROGRAMMA === -1360 GOSUB 100 -1370 HO=12:VE=8:GOSUB 110 -1380 AP$=RIGHT$(" "+AA$,14):PRINT AP$ -1390 VE=9:GOSUB 110 -1400 BP$=RIGHT$(" "+BB$,14):PRINT BP$ -1410 LC=LA:IF (LB>LA) THEN LC=LB -1420 HO=26:VE=10:GOSUB 110:PRINT " x" -1430 FOR N=1 TO LC:HO=HO-1:GOSUB 110:PRINT "-";:NEXT N:TT=0 +1360 GOSUB100 +1370 HO=12:VE=8:GOSUB110 +1380 AP$=RIGHT$(" "+AA$,14):PRINTAP$ +1390 VE=9:GOSUB110 +1400 BP$=RIGHT$(" "+BB$,14):PRINTBP$ +1410 LC=LA:IF(LB>LA) THENLC=LB +1420 HO=26:VE=10:GOSUB110:PRINT" x" +1430 FORN=1 TOLC:HO=HO-1:GOSUB110:PRINT"-";:NEXTN:TT=0 1440 : 1450 REM --- de vermenigvuldiglus --- -1460 FOR M=LB TO 1 STEP -1:VE=VE+1:HO=25:GOSUB 110:TT=TT+1 -1465 IF TT=1 THEN PP$(TT)="":GOTO 1480 +1460 FORM=LB TO1 STEP-1:VE=VE+1:HO=25:GOSUB110:TT=TT+1 +1465 IFTT=1 THENPP$(TT)="":GOTO1480 1470 PP$(TT)=RIGHT$("00000000",TT-1) 1480 B=ASC(MID$(BB$,M,1))-48:BW=0 -1490 IF B=0 THEN VE=VE-1:GOTO 1640 -1500 IF TT=1 THEN 1530 -1510 FOR KK=1 TO TT-1:G$="0":GOSUB 2020:PRINT G$; -1520 HO=HO-1:GOSUB 110:NEXT KK -1530 FOR N=LA TO 1 STEP -1 +1490 IFB=0 THENVE=VE-1:GOTO1640 +1500 IFTT=1 THEN1530 +1510 FORKK=1 TOTT-1:G$="0":GOSUB2020:PRINTG$; +1520 HO=HO-1:GOSUB110:NEXTKK +1530 FORN=LA TO1 STEP-1 1540 A=ASC(MID$(AA$,N,1))-48 -1550 C=BW+A*B:SR=C:GOSUB 300:SR$=RIGHT$("0"+SR$,2) +1550 C=BW+A*B:SR=C:GOSUB300:SR$=RIGHT$("0"+SR$,2) 1560 D=ASC(MID$(SR$,2,1))-48:E=ASC(MID$(SR$,1,1))-48 -1570 SR=D:GOSUB 300:G$=SR$:GOSUB 2020 -1580 PRINT G$:HO=HO-1:GOSUB 110 +1570 SR=D:GOSUB300:G$=SR$:GOSUB2020 +1580 PRINTG$:HO=HO-1:GOSUB110 1590 PP$(TT)=SR$+PP$(TT):BW=E -1600 NEXT N -1610 IF E=0 THEN 1640 -1620 SR=BW:GOSUB 300:G$=SR$:GOSUB 2020 -1630 PRINT G$:PP$(TT)=SR$+PP$(TT) -1640 NEXT M +1600 NEXTN +1610 IFE=0 THEN1640 +1620 SR=BW:GOSUB300:G$=SR$:GOSUB2020 +1630 PRINTG$:PP$(TT)=SR$+PP$(TT) +1640 NEXTM 1650 : 1660 REM --- onderstrepen --- -1670 VE=VE+1:GOSUB 110 -1680 IF HO<>26 THEN HO=HO+1:PRINT "-";:GOTO 1680 -1690 PRINT " +":HO=HO-1:GOSUB 110 -1700 FOR N=TT TO 1 STEP -1 -1710 PP$(N)=RIGHT$("00000000000000"+PP$(N),14):NEXT N +1670 VE=VE+1:GOSUB110 +1680 IFHO<>26 THENHO=HO+1:PRINT"-";:GOTO1680 +1690 PRINT" +":HO=HO-1:GOSUB110 +1700 FORN=TT TO1 STEP-1 +1710 PP$(N)=RIGHT$("00000000000000"+PP$(N),14):NEXTN 1720 : 1730 REM --- de optellus --- -1740 BW=0:UI$="":VE=VE+1:GOSUB 110 -1750 FOR M=14 TO 1 STEP -1:G=0 -1760 FOR N=1 TO TT +1740 BW=0:UI$="":VE=VE+1:GOSUB110 +1750 FORM=14 TO1 STEP-1:G=0 +1760 FORN=1 TOTT 1770 H=ASC(MID$(PP$(N),M,1))-48 1780 G=G+H -1790 NEXT N +1790 NEXTN 1800 G=G+BW -1810 SR=G:GOSUB 300 +1810 SR=G:GOSUB300 1820 G$=RIGHT$(SR$,1) 1830 UI$=UI$+G$ 1840 BW=INT(G/10) -1850 NEXT M +1850 NEXTM 1860 : 1870 L=LEN(UI$) -1880 IF MID$(UI$,L,1)="0" THEN L=L-1:GOTO 1880 +1880 IFMID$(UI$,L,1)="0" THENL=L-1:GOTO1880 1890 UI$=LEFT$(UI$,L) 1900 : 1910 REM --- uitkomst printen --- 1920 HO=26 -1930 FOR N=1 TO LEN(UI$) +1930 FORN=1 TOLEN(UI$) 1940 G$=MID$(UI$,N,1) -1950 HO=HO-1:GOSUB 110:GOSUB 2020:PRINT G$ -1960 NEXT N:PRINT " KLAAR !" -1970 HO=3:VE=21:GOSUB 110:IF FO=0 THEN PRINT " GOED GEDAAN!"; -1980 PRINT " TIK OP RETURN "; -1990 GOSUB 210:IF IN$<>CHR$(13) THEN 1990 -2000 GOTO 1020 +1950 HO=HO-1:GOSUB110:GOSUB2020:PRINTG$ +1960 NEXTN:PRINT" KLAAR !" +1970 HO=3:VE=21:GOSUB110:IFFO=0 THENPRINT" GOED GEDAAN!"; +1980 PRINT" TIK OP RETURN "; +1990 GOSUB210:IFIN$<>CHR$(13) THEN1990 +2000 GOTO1020 2010 : 2020 REM === SUBR.TIKCONTROLE === -2030 IF FO=-1 THEN FOR W=1 TO 200:NEXT W:RETURN +2030 IFFO=-1 THENFORW=1 TO200:NEXTW:RETURN 2040 REM KIJK-WACHTLUS; AANPASSEN AAN COMPUTER! -2050 GOSUB 210:IF IN$<>G$ THEN FO=FO+1:GOTO 2050 +2050 GOSUB210:IFIN$<>G$ THENFO=FO+1:GOTO2050 2060 RETURN 2070 : 30000 REM GEMAAKT 4 JANUARI 1987 30010 REM OP EEN BBC-B COMPUTER -30020 REM +30020 REM 30030 REM door Ch.W.Brederode 30040 REM Von Bonninhausenlaan 33 30050 REM 2161 ES LISSE -30060 REM +30060 REM 30070 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/17_Breuken.bc2 b/Best_of_Basicode_4/17_Breuken.bc2 index ffefe1d..3070ba9 100644 --- a/Best_of_Basicode_4/17_Breuken.bc2 +++ b/Best_of_Basicode_4/17_Breuken.bc2 @@ -1,104 +1,104 @@ -1000 A=200:GOTO 20:REM "BREUKEN" -1010 DIM F(100) -1020 GOSUB 1770 -1030 GOSUB 100:U=1:L=0:PRINT -1040 PRINT "WE GAAN EEN BREUK VEREENVOUDIGEN":PRINT -1050 PRINT "GEEF DE TELLER ";:INPUT X:X=ABS(INT(X)) -1060 IF X>999999! THEN 1030 -1070 PRINT "GEEF DE NOEMER ";:INPUT Y:Y=ABS(INT(Y)) -1080 IF (Y=0) OR(Y>999999!) THEN 1030 -1090 SR=X:GOSUB 300:A$=SR$ -1100 SR=Y:GOSUB 300:B$=SR$ -1110 REM --- heel getal afsplitsen? --- -1120 HL=0:A=X:B=Y:PRINT -1130 IF X>=Y THEN X=X-Y:HL=HL+1:GOTO 1130 -1140 SR=HL:GOSUB 300:HL$=SR$ -1150 BR=X/Y:IF BR=0 THEN PRINT A$;"/";B$;" = ";HL$:GOTO 1290 -1160 SR=X:GOSUB 300:X$=SR$ -1170 SR=Y:GOSUB 300:Y$=SR$ -1180 IF HL=0 THEN 1210 -1190 PRINT "WE HALEN EERST DE HELEN ER UIT:" -1200 PRINT A$;"/";B$;" = ";HL$;", REST ";X$;"/";Y$ -1210 PRINT -1220 E=X:GOSUB 1340:T=U:PRINT :PRINT -1230 E=Y:GOSUB 1340:PRINT -1240 PRINT -1250 GOSUB 1570 -1260 PRINT :PRINT "DUS ";A$;"/";B$" = "; -1270 IF HL>0 THEN PRINT ;HL$;" "; -1280 PRINT ;X$;"/";Y$ -1290 PRINT :PRINT :PRINT -1300 PRINT TAB(8)"NOG EEN KEER?"; -1310 GOSUB 210:IF (IN$="N") OR(IN$="n") THEN GOSUB 100:END -1320 GOTO 1030 + +1000 A=200:GOTO20:REM"BREUKEN" +1010 DIMF(100) +1020 GOSUB1770 +1030 GOSUB100:U=1:L=0:PRINT +1040 PRINT"WE GAAN EEN BREUK VEREENVOUDIGEN":PRINT +1050 PRINT"GEEF DE TELLER ";:INPUTX:X=ABS(INT(X)) +1060 IFX>999999 THEN1030 +1070 PRINT"GEEF DE NOEMER ";:INPUTY:Y=ABS(INT(Y)) +1080 IF(Y=0) OR(Y>999999) THEN1030 +1090 SR=X:GOSUB300:A$=SR$ +1100 SR=Y:GOSUB300:B$=SR$ +1110 REM--- heel getal afsplitsen? --- +1120 HL=0:A=X:B=Y:PRINT +1130 IFX>=Y THENX=X-Y:HL=HL+1:GOTO1130 +1140 SR=HL:GOSUB300:HL$=SR$ +1150 BR=X/Y:IFBR=0 THENPRINTA$;"/";B$;" = ";HL$:GOTO1290 +1160 SR=X:GOSUB300:X$=SR$ +1170 SR=Y:GOSUB300:Y$=SR$ +1180 IFHL=0 THEN1210 +1190 PRINT"WE HALEN EERST DE HELEN ER UIT:" +1200 PRINTA$;"/";B$;" = ";HL$;", REST ";X$;"/";Y$ +1210 PRINT +1220 E=X:GOSUB1340:T=U:PRINT:PRINT +1230 E=Y:GOSUB1340:PRINT +1240 PRINT +1250 GOSUB1570 +1260 PRINT:PRINT"DUS ";A$;"/";B$" = "; +1270 IFHL>0 THENPRINT;HL$;" "; +1280 PRINT;X$;"/";Y$ +1290 PRINT:PRINT:PRINT +1300 PRINTTAB(8)"NOG EEN KEER?"; +1310 GOSUB210:IF(IN$="N") OR(IN$="n") THENGOSUB100:END +1320 GOTO1030 1330 : 1340 REM === ONTBINDEN IN FACTOREN == -1350 IF E=1 THEN PRINT "1 = 1";:RETURN -1360 IF E=2 THEN PRINT "2 = 2";:F(U)=2:U=U+1:RETURN +1350 IFE=1 THENPRINT"1 = 1";:RETURN +1360 IFE=2 THENPRINT"2 = 2";:F(U)=2:U=U+1:RETURN 1370 V=1:D=2:P=SQR(E) -1380 SR=E:GOSUB 300:E$=SR$ -1390 PRINT ;E$;" = "; -1400 GOSUB 1490 -1410 IF D=2 THEN D=3:GOTO 1430 +1380 SR=E:GOSUB300:E$=SR$ +1390 PRINT;E$;" = "; +1400 GOSUB1490 +1410 IFD=2 THEND=3:GOTO1430 1420 D=D+2 -1430 IF D<=P THEN 1400 -1440 IF E=1 THEN GOSUB 120:HO=HO-3:GOSUB 110:PRINT " " -1450 IF E>1 THEN PRINT ;E$;:F(U)=E:U=U+1 -1460 IF V=1 THEN PRINT " (priemgetal)"; +1430 IFD<=P THEN1400 +1440 IFE=1 THENGOSUB120:HO=HO-3:GOSUB110:PRINT" " +1450 IFE>1 THENPRINT;E$;:F(U)=E:U=U+1 +1460 IFV=1 THENPRINT" (priemgetal)"; 1470 RETURN 1480 : -1490 P=E/D:IF P<>INT(P) THEN RETURN -1500 SR=D:GOSUB 300:D$=SR$ -1510 V=0:PRINT ;D$;" x ";:F(U)=D:U=U+1 +1490 P=E/D:IFP<>INT(P) THENRETURN +1500 SR=D:GOSUB300:D$=SR$ +1510 V=0:PRINT;D$;" x ";:F(U)=D:U=U+1 1520 E=INT(E/D):P=SQR(E) -1530 SR=E:GOSUB 300:E$=SR$ -1540 GOTO 1490 +1530 SR=E:GOSUB300:E$=SR$ +1540 GOTO1490 1550 : 1560 REM === VEREENVOUDIGEN === -1570 IF T=1 THEN 1650 -1580 D$="":FOR N=1 TO T-1 +1570 IFT=1 THEN1650 +1580 D$="":FORN=1 TOT-1 1590 M=T -1600 IF F(N)<>F(M) THEN 1610 -1604 SR=F(N):GOSUB 300:D$=D$+SR$+" x ":F(M)=1:F(N)=1 -1610 M=M+1:IF M=3 THEN D$=LEFT$(D$,L-2) -1630 X=1:FOR N=1 TO T-1:X=X*F(N):NEXT N -1640 Y=1:FOR N=T TO U-1:Y=Y*F(N):NEXT N +1600 IFF(N)<>F(M) THEN1610 +1604 SR=F(N):GOSUB300:D$=D$+SR$+" x ":F(M)=1:F(N)=1 +1610 M=M+1:IFM=3 THEND$=LEFT$(D$,L-2) +1630 X=1:FORN=1 TOT-1:X=X*F(N):NEXTN +1640 Y=1:FORN=T TOU-1:Y=Y*F(N):NEXTN 1650 Z$="REST " -1660 IF HL=0 THEN Z$="BREUK " -1670 IF Y<>B THEN 1710 -1680 PRINT "GEEN GELIJKE FACTOREN," -1690 PRINT Z$;"NIET TE VEREENVOUDIGEN" +1660 IFHL=0 THENZ$="BREUK " +1670 IFY<>B THEN1710 +1680 PRINT"GEEN GELIJKE FACTOREN," +1690 PRINTZ$;"NIET TE VEREENVOUDIGEN" 1700 RETURN -1710 LL=LEN(D$):IF LL<2 THEN 1715 -1712 IF RIGHT$(D$,2)="x " THEN D$=LEFT$(D$,LL-2) -1715 PRINT "ALLEBEI DEELBAAR DOOR: ";D$ -1720 PRINT "VEREENVOUDIGDE ";Z$; -1730 SR=X:GOSUB 300:X$=SR$ -1740 SR=Y:GOSUB 300:Y$=SR$ -1750 PRINT ;X$;"/";Y$:RETURN +1710 LL=LEN(D$):IFLL<2 THEN1715 +1712 IFRIGHT$(D$,2)="x " THEND$=LEFT$(D$,LL-2) +1715 PRINT"ALLEBEI DEELBAAR DOOR: ";D$ +1720 PRINT"VEREENVOUDIGDE ";Z$; +1730 SR=X:GOSUB300:X$=SR$ +1740 SR=Y:GOSUB300:Y$=SR$ +1750 PRINT;X$;"/";Y$:RETURN 1760 : 1770 REM === INLEIDING === -1780 GOSUB 100 -1790 FOR N=1 TO 18:READ A$:PRINT A$:NEXT N -1800 DATA " "," Ik kan een breuk vereenvoudigen." -1810 DATA " "," Als je mij twee getallen geeft," -1820 DATA " "," zal ik het laten zien." -1830 DATA " "," Eerst haal ik de helen er uit." -1840 DATA " "," Dan ontbind ik de teller en de" -1850 DATA " "," noemer in factoren." -1860 DATA " "," Ik deel teller en noemer door hun" -1870 DATA " "," gemeenschappelijke factoren." -1880 DATA " "," De uitkomst schrijf ik netjes op." -1890 PRINT :PRINT "--> TIK OP 'N TOETS"; -1900 GOSUB 210:RETURN -30000 REM ============================ +1780 GOSUB100 +1790 FORN=1 TO18:READA$:PRINTA$:NEXTN +1800 DATA" "," Ik kan een breuk vereenvoudigen." +1810 DATA" "," Als je mij twee getallen geeft," +1820 DATA" "," zal ik het laten zien." +1830 DATA" "," Eerst haal ik de helen er uit." +1840 DATA" "," Dan ontbind ik de teller en de" +1850 DATA" "," noemer in factoren." +1860 DATA" "," Ik deel teller en noemer door hun" +1870 DATA" "," gemeenschappelijke factoren." +1880 DATA" "," De uitkomst schrijf ik netjes op." +1890 PRINT:PRINT"--> TIK OP 'N TOETS"; +1900 GOSUB210:RETURN +30000 REM============================ 30010 REM GEMAAKT OP EEN BBC COMPUTER 30020 REM 27 JANUARI 1987 30030 REM DOOR 30040 REM Ch.W.Brederode 30050 REM Von Bonninghausenlaan 33 30060 REM 2161 ES LISSE -30070 REM +30070 REM 30080 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/18_Ontbinden_in_faktoren.bc2 b/Best_of_Basicode_4/18_Ontbinden_in_faktoren.bc2 index 5b65739..f1d9845 100644 --- a/Best_of_Basicode_4/18_Ontbinden_in_faktoren.bc2 +++ b/Best_of_Basicode_4/18_Ontbinden_in_faktoren.bc2 @@ -1,60 +1,60 @@ -1000 A=200:GOTO 20:REM "ONTBIND IN FACT" -1010 GOSUB 100 -1020 GOSUB 1340 -1030 GOSUB 100 -1040 PRINT "WE GAAN ONTBINDEN IN FACTOREN" -1045 PRINT "Alleen RETURN tikken = stoppen.":PRINT -1050 PRINT "GEEF EEN GETAL ";:INPUT E -1055 IF E=0 THEN END -1060 IF (E<2) OR(E>99999999#) THEN 1050 -1070 PRINT -1080 GOSUB 1120 -1090 PRINT :PRINT -1100 GOTO 1050 + +1000 A=200:GOTO20:REM"ONTBIND IN FACT" +1010 GOSUB100 +1020 GOSUB1340 +1030 GOSUB100 +1040 PRINT"WE GAAN ONTBINDEN IN FACTOREN" +1045 PRINT"Alleen RETURN tikken = stoppen.":PRINT +1050 PRINT"GEEF EEN GETAL ";:INPUTE +1055 IFE=0 THENEND +1060 IF(E<2) OR(E>99999999) THEN1050 +1070 PRINT +1080 GOSUB1120 +1090 PRINT:PRINT +1100 GOTO1050 1110 : 1120 REM === ONTBINDEN IN FACTOREN == -1130 IF E=1 THEN PRINT "1 = 1";:RETURN -1140 IF E=2 THEN PRINT "2 = 2 (priemgetal)";:RETURN +1130 IFE=1 THENPRINT"1 = 1";:RETURN +1140 IFE=2 THENPRINT"2 = 2 (priemgetal)";:RETURN 1150 V=1:D=2:P=SQR(E) -1160 SR=E:GOSUB 300:E$=SR$ -1170 PRINT ;E$;" = "; -1180 GOSUB 1270 -1190 IF D=2 THEN D=3:GOTO 1210 +1160 SR=E:GOSUB300:E$=SR$ +1170 PRINT;E$;" = "; +1180 GOSUB1270 +1190 IFD=2 THEND=3:GOTO1210 1200 D=D+2 -1210 IF D<=P THEN 1180 -1220 IF E=1 THEN GOSUB 120:HO=HO-3:GOSUB 110:PRINT " " -1230 IF E>1 THEN PRINT ;E$; -1240 IF V=1 THEN PRINT " (priemgetal)"; +1210 IFD<=P THEN1180 +1220 IFE=1 THENGOSUB120:HO=HO-3:GOSUB110:PRINT" " +1230 IFE>1 THENPRINT;E$; +1240 IFV=1 THENPRINT" (priemgetal)"; 1250 RETURN 1260 : -1270 P=E/D:IF P<>INT(P) THEN RETURN -1280 SR=D:GOSUB 300:D$=SR$ -1290 V=0:PRINT ;D$;" x "; +1270 P=E/D:IFP<>INT(P) THENRETURN +1280 SR=D:GOSUB300:D$=SR$ +1290 V=0:PRINT;D$;" x "; 1300 E=INT(E/D):P=SQR(E) -1310 SR=E:GOSUB 300:E$=SR$ -1320 GOTO 1270 +1310 SR=E:GOSUB300:E$=SR$ +1320 GOTO1270 1330 : 1340 REM === INLEIDING === -1350 GOSUB 100 -1360 FOR N=1 TO 18:READ A$:PRINT A$:NEXT N -1370 DATA " "," IK KAN ONTBINDEN IN FACTOREN" -1380 DATA " ============================"," " -1390 DATA " "," Als je mij een getal geeft, dan" -1400 DATA " "," zal ik het laten zien." -1410 DATA " "," Ik deel het getal door alle" -1420 DATA " "," PRIEMGETALLEN die er op passen." -1430 DATA " "," Ik probeer eerst 2, dan 3, dan 5" -1440 DATA " "," en zo maar door." -1450 DATA " "," De factoren schrijf ik voor je op." -1460 PRINT :PRINT "--> TIK OP 'N TOETS"; -1470 GOSUB 210:RETURN -1480 REM ============================ +1350 GOSUB100 +1360 FORN=1 TO18:READA$:PRINTA$:NEXTN +1370 DATA" "," IK KAN ONTBINDEN IN FACTOREN" +1380 DATA" ============================"," " +1390 DATA" "," Als je mij een getal geeft, dan" +1400 DATA" "," zal ik het laten zien." +1410 DATA" "," Ik deel het getal door alle" +1420 DATA" "," PRIEMGETALLEN die er op passen." +1430 DATA" "," Ik probeer eerst 2, dan 3, dan 5" +1440 DATA" "," en zo maar door." +1450 DATA" "," De factoren schrijf ik voor je op." +1460 PRINT:PRINT"--> TIK OP 'N TOETS"; +1470 GOSUB210:RETURN +1480 REM============================ 30000 REM GEMAAKT OP EEN BBC COMPUTER 30010 REM 30 JANUARI 1987 30020 REM DOOR 30030 REM Ch.W.Brederode 30040 REM Von Bonninghausenlaan 33 30050 REM 2161 ES LISSE -30060 REM +30060 REM 30070 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/19_Staartdelingen.bc2 b/Best_of_Basicode_4/19_Staartdelingen.bc2 index ed8e7d5..ef9a2d9 100644 --- a/Best_of_Basicode_4/19_Staartdelingen.bc2 +++ b/Best_of_Basicode_4/19_Staartdelingen.bc2 @@ -1,13 +1,14 @@ -1000 A=1000:GOTO 20:REM STAARTDELINGEN -1010 DIM D$(4),T$(8),U$(8),A$(4),B$(4),S$(4) + +1000 A=1000:GOTO20:REM STAARTDELINGEN +1010 DIMD$(4),T$(8),U$(8),A$(4),B$(4),S$(4) 1020 W=0:Z=0 -1030 GOSUB 10200:REM BEGINSCHERM -1040 GOSUB 10140:REM WACHTLUS -1050 HO=6:VE=15:GOSUB 110 -1060 PRINT "Wil je uitleg ? (J/N) "; -1070 GOSUB 210 -1080 IF (IN$="J") OR(IN$="j") THEN GOSUB 10300:GOTO 1100 -1090 IF (IN$<>"N") AND(IN$<>"n") THEN 1070 +1030 GOSUB10200:REM BEGINSCHERM +1040 GOSUB10140:REM WACHTLUS +1050 HO=6:VE=15:GOSUB110 +1060 PRINT"Wil je uitleg ? (J/N) "; +1070 GOSUB210 +1080 IF(IN$="J") OR(IN$="j") THENGOSUB10300:GOTO1100 +1090 IF(IN$<>"N") AND(IN$<>"n") THEN1070 1100 REM INITIALISATIE 1110 D=0:D1=0:LD=0:WD=0:DC$="" 1120 REM deler @@ -26,523 +27,523 @@ 1250 M=0:REM verm.factor 1260 K1=0:K2=0:REM keuze 1270 F1=0:F2=0:F3=0:FO=0:REM fout -1290 REM -1300 GOSUB 10200 -1310 PRINT :PRINT -1320 PRINT " Wil je zelf getallen invoeren," -1330 PRINT :PRINT " druk dan <1>" -1340 PRINT :PRINT -1350 PRINT " Wil je het de computer laten doen," -1360 PRINT :PRINT " druk dan <2>" -1370 HO=6:VE=20:GOSUB 110 -1380 PRINT "KIES 1 OF 2 ";:GOSUB 210 -1390 IF (IN$<"1") OR(IN$>"2") THEN 1370 +1290 REM +1300 GOSUB10200 +1310 PRINT:PRINT +1320 PRINT" Wil je zelf getallen invoeren," +1330 PRINT:PRINT" druk dan <1>" +1340 PRINT:PRINT +1350 PRINT" Wil je het de computer laten doen," +1360 PRINT:PRINT" druk dan <2>" +1370 HO=6:VE=20:GOSUB110 +1380 PRINT"KIES 1 OF 2 ";:GOSUB210 +1390 IF(IN$<"1") OR(IN$>"2") THEN1370 1400 K1=VAL(IN$) -1490 REM -1500 GOSUB 10200 -1510 PRINT :PRINT :PRINT -1520 PRINT " Druk <1> om zelf te rekenen." -1530 PRINT :PRINT :PRINT " Druk <2> om de computer te" -1540 PRINT :PRINT " te laten rekenen." -1550 HO=6:VE=20:GOSUB 110 -1560 PRINT "Kies 1 of 2 ";:GOSUB 210 -1570 IF (IN$<"1") OR(IN$>"2") THEN 1550 +1490 REM +1500 GOSUB10200 +1510 PRINT:PRINT:PRINT +1520 PRINT" Druk <1> om zelf te rekenen." +1530 PRINT:PRINT:PRINT" Druk <2> om de computer te" +1540 PRINT:PRINT" te laten rekenen." +1550 HO=6:VE=20:GOSUB110 +1560 PRINT"Kies 1 of 2 ";:GOSUB210 +1570 IF(IN$<"1") OR(IN$>"2") THEN1550 1580 K2=VAL(IN$) -1600 IF (K2=2) THEN Z=Z+1 -1610 GOSUB 14100:REM PRINTER -1670 REM +1600 IF(K2=2) THENZ=Z+1 +1610 GOSUB14100:REM PRINTER +1670 REM 1680 REM GETALLEN KIEZEN -1690 ON K1 GOTO 1700,5400 -1700 GOSUB 10200 -1710 PRINT :PRINT " GETALLEN KIEZEN" -1720 PRINT :PRINT " deler/ deeltal \uitkomst" -1730 HO=6:VE=14:GOSUB 110 -1740 PRINT "Geef de deler..(+RETURN)" -1750 PRINT " (max. 4 cijfers) "; -1760 HO=25:VE=15:GOSUB 9000 +1690 ONK1 GOTO1700,5400 +1700 GOSUB10200 +1710 PRINT:PRINT" GETALLEN KIEZEN" +1720 PRINT:PRINT" deler/ deeltal \uitkomst" +1730 HO=6:VE=14:GOSUB110 +1740 PRINT"Geef de deler..(+RETURN)" +1750 PRINT" (max. 4 cijfers) "; +1760 HO=25:VE=15:GOSUB9000 1770 D$=G$:D=VAL(D$) -1780 HO=6:VE=17:GOSUB 110 -1790 PRINT "Geef 't deeltal..(+RETURN)" -1800 PRINT " (max. 6 cijfers) "; -1810 HO=25:VE=18:GOSUB 9000 +1780 HO=6:VE=17:GOSUB110 +1790 PRINT"Geef 't deeltal..(+RETURN)" +1800 PRINT" (max. 6 cijfers) "; +1810 HO=25:VE=18:GOSUB9000 1820 T$=G$:T=VAL(T$) -1830 HO=6:VE=12:GOSUB 110 -1840 PRINT D$;" / ";T$;" \ ??" -1850 GOSUB 10060 -1880 GOTO 8000:REM GETALLEN CONTROLEREN -1890 REM -1900 FOR J=6 TO 0 STEP -1 -1910 GOSUB 100 -1920 HO=7-Q1:VE=12-Q2:GOSUB 110 -1930 PRINT D$;"/";T$;"\" -1940 GOSUB 10140 +1830 HO=6:VE=12:GOSUB110 +1840 PRINTD$;" / ";T$;" \ ??" +1850 GOSUB10060 +1880 GOTO8000:REM GETALLEN CONTROLEREN +1890 REM +1900 FORJ=6 TO0 STEP-1 +1910 GOSUB100 +1920 HO=7-Q1:VE=12-Q2:GOSUB110 +1930 PRINTD$;"/";T$;"\" +1940 GOSUB10140 1950 Q1=Q1+1:Q2=Q2+2 -1960 NEXT J +1960 NEXTJ 1990 REM *** BEGIN DEELROUTINE -2000 IF PR=1 THEN GOSUB 14200 +2000 IFPR=1 THENGOSUB14200 2010 PU=PU+LD+LT+2 -2050 IF VAL(MID$(T$,1,LD))/WD<1 THEN R=1 -2060 IF LEFT$(U$,1)="0" THEN R=0 -2070 IF PR=1 THEN GOSUB 14230 +2050 IFVAL(MID$(T$,1,LD))/WD<1 THENR=1 +2060 IFLEFT$(U$,1)="0" THENR=0 +2070 IFPR=1 THENGOSUB14230 2080 B$=MID$(T$,1,LD+R) -2090 IF (Z>4) THEN K2=1:GOSUB 9400 +2090 IF(Z>4) THENK2=1:GOSUB9400 2100 REM ** CIJFER UITKOMST -2110 ON K2 GOSUB 5010,5310 -2120 HO=PU+P:VE=0:GOSUB 110 -2130 PRINT MID$(U$,P,1):GOSUB 250 -2140 GOSUB 10120 +2110 ONK2 GOSUB5010,5310 +2120 HO=PU+P:VE=0:GOSUB110 +2130 PRINTMID$(U$,P,1):GOSUB250 +2140 GOSUB10120 2150 GU=VAL(MID$(U$,P,1)) 2160 AG=GU*WD -2170 SR=AG:GOSUB 300:A$=SR$ +2170 SR=AG:GOSUB300:A$=SR$ 2180 Q=0 2190 REM ** VERMENIGVULDIGING -2200 IF PR=1 THEN GOSUB 14240 -2210 FOR I=LEN(A$) TO 1 STEP -1 -2220 ON K2 GOSUB 5110,5310 -2230 HO=2*LD+P-Q+R:VE=RE:GOSUB 110 -2235 PRINT MID$(A$,I,1) +2200 IFPR=1 THENGOSUB14240 +2210 FORI=LEN(A$) TO1 STEP-1 +2220 ONK2 GOSUB5110,5310 +2230 HO=2*LD+P-Q+R:VE=RE:GOSUB110 +2235 PRINTMID$(A$,I,1) 2240 Q=Q+1 -2250 GOSUB 250 -2260 NEXT I +2250 GOSUB250 +2260 NEXTI 2270 Q=0 2280 REM ** LIJN -2290 IF PR=1 THEN GOSUB 14270 -2320 FOR I=LEN(B$) TO 1 STEP -1 -2330 HO=2*LD+P-Q+R:VE=RE+1:GOSUB 110:PRINT "-" +2290 IFPR=1 THENGOSUB14270 +2320 FORI=LEN(B$) TO1 STEP-1 +2330 HO=2*LD+P-Q+R:VE=RE+1:GOSUB110:PRINT"-" 2340 Q=Q+1 -2350 NEXT I +2350 NEXTI 2370 RE=RE+2:Q=0 2380 AF=VAL(B$)-AG -2390 SR=AF:GOSUB 300:S$=SR$ +2390 SR=AF:GOSUB300:S$=SR$ 2400 REM ** AFTREKKING -2410 GOSUB 7110:IF PR=1 THEN GOSUB 14320 -2420 FOR I=LEN(S$) TO 1 STEP -1 -2430 ON K2 GOSUB 5210,5310 -2440 HO=2*LD+P-Q+R:VE=RE:GOSUB 110:PRINT MID$(S$,I,1) +2410 GOSUB7110:IFPR=1 THENGOSUB14320 +2420 FORI=LEN(S$) TO1 STEP-1 +2430 ONK2 GOSUB5210,5310 +2440 HO=2*LD+P-Q+R:VE=RE:GOSUB110:PRINTMID$(S$,I,1) 2450 Q=Q+1 -2460 GOSUB 250 -2470 NEXT I -2480 IF P=LEN(U$) THEN 2670 -2490 GOSUB 10130 +2460 GOSUB250 +2470 NEXTI +2480 IFP=LEN(U$) THEN2670 +2490 GOSUB10130 2500 REM ** AANHALEN -2510 IF MID$(T$,LD+P+R,1)="." THEN GOSUB 4000 -2520 IF PR=1 THEN GOSUB 14370 -2530 HO=2*LD+P+R+1:VE=0:GOSUB 110:PRINT " ":GOSUB 10140 -2540 HO=2*LD+P+R+1:VE=0:GOSUB 110:PRINT MID$(T$,LD+P+R,1) -2550 FOR F=1 TO RE-1 -2560 HO=2*LD+P+R+1:VE=F:GOSUB 110:PRINT MID$(T$,LD+P+R,1) -2570 GOSUB 10120 -2580 HO=2*LD+P+R+1:VE=F:GOSUB 110:PRINT " " -2590 GOSUB 10120 -2600 NEXT F -2610 HO=2*LD+P+R+1:VE=F:GOSUB 110:PRINT MID$(T$,LD+P+R,1) +2510 IFMID$(T$,LD+P+R,1)="." THENGOSUB4000 +2520 IFPR=1 THENGOSUB14370 +2530 HO=2*LD+P+R+1:VE=0:GOSUB110:PRINT" ":GOSUB10140 +2540 HO=2*LD+P+R+1:VE=0:GOSUB110:PRINTMID$(T$,LD+P+R,1) +2550 FORF=1 TORE-1 +2560 HO=2*LD+P+R+1:VE=F:GOSUB110:PRINTMID$(T$,LD+P+R,1) +2570 GOSUB10120 +2580 HO=2*LD+P+R+1:VE=F:GOSUB110:PRINT" " +2590 GOSUB10120 +2600 NEXTF +2610 HO=2*LD+P+R+1:VE=F:GOSUB110:PRINTMID$(T$,LD+P+R,1) 2620 B$=S$+MID$(T$,LD+P+R,1) 2630 RE=RE+1 2640 P=P+1 2650 REM ** EINDE DEELROUTINE -2660 GOTO 2100 -2670 IF (LD+P-4)<0 THEN P=10 -2680 HO=LD+P-4:VE=RE:GOSUB 110:PRINT "REST" -2690 IF K2=2 THEN 2900 -2700 GOSUB 7100:GOSUB 110 -2710 PRINT "! R E S U L T A A T" -2720 GOSUB 7030 -2730 HO=21:VE=4:GOSUB 110:PRINT "SCHATTEN :";F1;"x F." -2740 VE=6:GOSUB 110:PRINT "KEER :";F2;"x F." -2750 VE=8:GOSUB 110:PRINT "AFTREKKEN:";F3;"x F." +2660 GOTO2100 +2670 IF(LD+P-4)<0 THENP=10 +2680 HO=LD+P-4:VE=RE:GOSUB110:PRINT"REST" +2690 IFK2=2 THEN2900 +2700 GOSUB7100:GOSUB110 +2710 PRINT"! R E S U L T A A T" +2720 GOSUB7030 +2730 HO=21:VE=4:GOSUB110:PRINT"SCHATTEN :";F1;"x F." +2740 VE=6:GOSUB110:PRINT"KEER :";F2;"x F." +2750 VE=8:GOSUB110:PRINT"AFTREKKEN:";F3;"x F." 2760 FO=F1+F2+F3 -2770 VE=9:GOSUB 110:PRINT " -----" -2780 VE=11:GOSUB 110:PRINT " TOTAAL :";FO;"FOUT" -2790 IF (FO=0) THEN FU$=" HEEL GOED" -2800 IF (FO=1) THEN FU$=" GOED" -2810 IF (FO=2) THEN FU$=" REDELIJK" -2820 IF (FO=3) OR(FO=4) THEN FU$=" VOLDOENDE" -2830 IF (FO>=5) THEN FU$=" ONVOLDOENDE !" -2840 VE=14:GOSUB 110:PRINT FU$ -2900 IF PR=1 THEN GOSUB 14390 -2910 HO=8:VE=23:GOSUB 110 -2920 PRINT "NOG EEN DELING ? (J/N)"; -2930 GOSUB 210 -2940 IF (IN$="J") OR(IN$="j") THEN 1100 -2950 IF (IN$="N") OR(IN$="n") THEN 2970 -2960 GOTO 2930 -2970 GOSUB 100:END +2770 VE=9:GOSUB110:PRINT" -----" +2780 VE=11:GOSUB110:PRINT" TOTAAL :";FO;"FOUT" +2790 IF(FO=0) THENFU$=" HEEL GOED" +2800 IF(FO=1) THENFU$=" GOED" +2810 IF(FO=2) THENFU$=" REDELIJK" +2820 IF(FO=3) OR(FO=4) THENFU$=" VOLDOENDE" +2830 IF(FO>=5) THENFU$=" ONVOLDOENDE !" +2840 VE=14:GOSUB110:PRINTFU$ +2900 IFPR=1 THENGOSUB14390 +2910 HO=8:VE=23:GOSUB110 +2920 PRINT"NOG EEN DELING ? (J/N)"; +2930 GOSUB210 +2940 IF(IN$="J") OR(IN$="j") THEN1100 +2950 IF(IN$="N") OR(IN$="n") THEN2970 +2960 GOTO2930 +2970 GOSUB100:END 3990 REM * KOMMA IN DEELTAL 4000 P=P+1 -4010 HO=2*LD+P+R-Q:VE=RE:GOSUB 110 -4020 FOR I=1 TO LEN(S$):PRINT " ":NEXT I -4030 HO=2*LD+P+R-Q+1:VE=RE:GOSUB 110 -4040 PRINT S$ -4050 HO=PU+P:VE=0:GOSUB 110 -4060 PRINT MID$(U$,P,1):GOSUB 250 -4070 GOSUB 10120:RETURN +4010 HO=2*LD+P+R-Q:VE=RE:GOSUB110 +4020 FORI=1 TOLEN(S$):PRINT" ":NEXTI +4030 HO=2*LD+P+R-Q+1:VE=RE:GOSUB110 +4040 PRINTS$ +4050 HO=PU+P:VE=0:GOSUB110 +4060 PRINTMID$(U$,P,1):GOSUB250 +4070 GOSUB10120:RETURN 5000 REM ** ZELF REKENEN -5010 HO=22:VE=0:GOSUB 110:PRINT "( K = KLADBLOK) " -5020 HO=PU+P:VE=0:GOSUB 110 -5030 GOSUB 210:IF IN$=MID$(U$,P,1) THEN RETURN -5040 IF (IN$="K") OR(IN$="k") THEN GOSUB 6000:GOTO 5020 -5050 IF (IN$<"0") OR(IN$>"9") THEN 5020 -5060 GOSUB 9200 -5070 GOTO 5020 -5100 REM -5110 HO=22:VE=0:GOSUB 110:PRINT "( K = KLADBLOK) " -5120 HO=2*LD+P-Q+R:VE=RE:GOSUB 110 -5130 GOSUB 210:IF IN$=MID$(A$,I,1) THEN RETURN -5140 IF (IN$="K") OR(IN$="k") THEN GOSUB 6300:GOTO 5120 -5150 IF (IN$<"0") OR(IN$>"9") THEN 5120 -5160 GOSUB 9250 -5170 GOTO 5120 -5200 REM -5210 REM -5220 HO=2*LD+P-Q+R:VE=RE:GOSUB 110 -5230 GOSUB 210:IF IN$=MID$(S$,I,1) THEN RETURN -5240 IF (IN$<"0") OR(IN$>"9") THEN 5220 -5250 GOSUB 9300 -5260 GOTO 5220 -5290 REM +5010 HO=22:VE=0:GOSUB110:PRINT"( K = KLADBLOK) " +5020 HO=PU+P:VE=0:GOSUB110 +5030 GOSUB210:IFIN$=MID$(U$,P,1) THENRETURN +5040 IF(IN$="K") OR(IN$="k") THENGOSUB6000:GOTO5020 +5050 IF(IN$<"0") OR(IN$>"9") THEN5020 +5060 GOSUB9200 +5070 GOTO5020 +5100 REM +5110 HO=22:VE=0:GOSUB110:PRINT"( K = KLADBLOK) " +5120 HO=2*LD+P-Q+R:VE=RE:GOSUB110 +5130 GOSUB210:IFIN$=MID$(A$,I,1) THENRETURN +5140 IF(IN$="K") OR(IN$="k") THENGOSUB6300:GOTO5120 +5150 IF(IN$<"0") OR(IN$>"9") THEN5120 +5160 GOSUB9250 +5170 GOTO5120 +5200 REM +5210 REM +5220 HO=2*LD+P-Q+R:VE=RE:GOSUB110 +5230 GOSUB210:IFIN$=MID$(S$,I,1) THENRETURN +5240 IF(IN$<"0") OR(IN$>"9") THEN5220 +5250 GOSUB9300 +5260 GOTO5220 +5290 REM 5300 REM * COMPUTER REKENT -5310 GOSUB 10140:RETURN -5390 REM +5310 GOSUB10140:RETURN +5390 REM 5400 REM COMPUTER KIEST -5410 GOSUB 260:D=INT(RV*100) -5420 SR=D:GOSUB 300:D$=SR$ -5430 GOSUB 260:T=INT(RV*1000000!) -5440 SR=T:GOSUB 300:T$=SR$ -5450 GOTO 8070 -5990 REM -6000 GOSUB 7000:GOSUB 7080:REM KLADBLOK +5410 GOSUB260:D=INT(RV*100) +5420 SR=D:GOSUB300:D$=SR$ +5430 GOSUB260:T=INT(RV*1000000) +5440 SR=T:GOSUB300:T$=SR$ +5450 GOTO8070 +5990 REM +6000 GOSUB7000:GOSUB7080:REM KLADBLOK 6010 GU=VAL(MID$(U$,P,1)):Q=0 -6020 HO=21:VE=2:GOSUB 110 -6030 PRINT D$;"/";B$;"\"; +6020 HO=21:VE=2:GOSUB110 +6030 PRINTD$;"/";B$;"\"; 6040 PL=LD+LEN(B$)+2 -6050 GOSUB 210 -6060 IF (IN$="T") OR(IN$="t") THEN GOSUB 7150:RETURN -6070 IF (IN$<"0") OR(IN$>"9") THEN 6050 -6080 U2$=IN$:PRINT U2$:GOSUB 250 -6090 HO=21+PL+3:GOSUB 110:PRINT D$ -6100 HO=HO+LD-1:VE=3:GOSUB 110:PRINT U2$;"x" -6110 HO=21+PL+3:VE=4:GOSUB 110 -6120 FOR J=1 TO LD:PRINT "-";:NEXT J +6050 GOSUB210 +6060 IF(IN$="T") OR(IN$="t") THENGOSUB7150:RETURN +6070 IF(IN$<"0") OR(IN$>"9") THEN6050 +6080 U2$=IN$:PRINTU2$:GOSUB250 +6090 HO=21+PL+3:GOSUB110:PRINTD$ +6100 HO=HO+LD-1:VE=3:GOSUB110:PRINTU2$;"x" +6110 HO=21+PL+3:VE=4:GOSUB110 +6120 FORJ=1 TOLD:PRINT"-";:NEXTJ 6130 U3=VAL(U2$)*WD -6140 SR=U3:GOSUB 300:U4$=SR$ -6150 FOR J=LEN(U4$) TO 1 STEP -1 -6160 GOSUB 7150:GOSUB 7200 -6180 PRINT MID$(U4$,J,1):GOSUB 250 +6140 SR=U3:GOSUB300:U4$=SR$ +6150 FORJ=LEN(U4$) TO1 STEP-1 +6160 GOSUB7150:GOSUB7200 +6180 PRINTMID$(U4$,J,1):GOSUB250 6190 Q=Q+1 -6200 NEXT J +6200 NEXTJ 6210 Q=0 -6220 HO=22:VE=7:GOSUB 110 -6230 IF (VAL(U2$)=GU) THEN PRINT U2$;"x is GOED.":RETURN -6240 IF (VAL(U2$)GU) THEN PRINT U2$;"x is te HOOG.":RETURN +6220 HO=22:VE=7:GOSUB110 +6230 IF(VAL(U2$)=GU) THENPRINTU2$;"x is GOED.":RETURN +6240 IF(VAL(U2$)GU) THENPRINTU2$;"x is te HOOG.":RETURN 6290 REM VERMENIGV. -6300 GOSUB 7000 -6310 HO=23:VE=3:GOSUB 110:PRINT D$ -6320 HO=23+LD-1:VE=4:GOSUB 110 -6330 PRINT MID$(U$,P,1)+" x" -6340 HO=23:VE=5:GOSUB 110 -6350 FOR J=1 TO LD:PRINT "-";:NEXT J -6360 U5=VAL(A$):GOSUB 300:U5$=SR$ -6371 FOR J=LEN(U5$) TO 1 STEP -1 -6380 HO=23+LD-1-Q3:VE=6:GOSUB 110 -6390 GOSUB 7300 -6400 PRINT MID$(U5$,J,1):GOSUB 250 +6300 GOSUB7000 +6310 HO=23:VE=3:GOSUB110:PRINTD$ +6320 HO=23+LD-1:VE=4:GOSUB110 +6330 PRINTMID$(U$,P,1)+" x" +6340 HO=23:VE=5:GOSUB110 +6350 FORJ=1 TOLD:PRINT"-";:NEXTJ +6360 U5=VAL(A$):GOSUB300:U5$=SR$ +6371 FORJ=LEN(U5$) TO1 STEP-1 +6380 HO=23+LD-1-Q3:VE=6:GOSUB110 +6390 GOSUB7300 +6400 PRINTMID$(U5$,J,1):GOSUB250 6410 Q3=Q3+1 -6420 NEXT J +6420 NEXTJ 6430 Q3=0 -6450 HO=24:VE=8:GOSUB 110 -6460 PRINT "GOED":RETURN -6500 GOSUB 7000 -6510 HO=26-LEN(B$):VE=3:GOSUB 110 -6520 PRINT B$ -6530 HO=26-LEN(A$):VE=4:GOSUB 110 -6540 PRINT A$+"-" -6550 HO=26-LEN(B$):VE=5:GOSUB 110 -6560 FOR J=1 TO LEN(B$) -6570 PRINT "-";:NEXT J -6580 FOR J=LEN(S$) TO 1 STEP -1 -6590 HO=26-1-Q3:VE=6:GOSUB 110 -6600 GOSUB 7400 -6610 PRINT MID$(S$,J,1):GOSUB 250 +6450 HO=24:VE=8:GOSUB110 +6460 PRINT"GOED":RETURN +6500 GOSUB7000 +6510 HO=26-LEN(B$):VE=3:GOSUB110 +6520 PRINTB$ +6530 HO=26-LEN(A$):VE=4:GOSUB110 +6540 PRINTA$+"-" +6550 HO=26-LEN(B$):VE=5:GOSUB110 +6560 FORJ=1 TOLEN(B$) +6570 PRINT"-";:NEXTJ +6580 FORJ=LEN(S$) TO1 STEP-1 +6590 HO=26-1-Q3:VE=6:GOSUB110 +6600 GOSUB7400 +6610 PRINTMID$(S$,J,1):GOSUB250 6620 Q3=Q3+1 -6630 NEXT J:Q3=0 -6640 HO=24:VE=8:GOSUB 110 -6650 PRINT "GOED":RETURN +6630 NEXTJ:Q3=0 +6640 HO=24:VE=8:GOSUB110 +6650 PRINT"GOED":RETURN 6990 REM * KLADBLOK -7000 GOSUB 7100 -7010 GOSUB 110 -7020 PRINT "! K L A D B L O K" -7030 FOR J=1 TO 19:VE=J:GOSUB 110 -7040 PRINT "! " -7050 NEXT J -7060 GOSUB 7100:VE=VE+20:GOSUB 110 -7070 PRINT "--------------------" +7000 GOSUB7100 +7010 GOSUB110 +7020 PRINT"! K L A D B L O K" +7030 FORJ=1 TO19:VE=J:GOSUB110 +7040 PRINT"! " +7050 NEXTJ +7060 GOSUB7100:VE=VE+20:GOSUB110 +7070 PRINT"--------------------" 7075 RETURN -7080 HO=24:VE=21:GOSUB 110 -7090 PRINT "( T = terug )":RETURN +7080 HO=24:VE=21:GOSUB110 +7090 PRINT"( T = terug )":RETURN 7100 HO=20:VE=0:RETURN -7110 GOSUB 7100 -7120 FOR J=0 TO 21:VE=J:GOSUB 110 -7130 PRINT " " -7140 NEXT J:RETURN -7150 HO=24:VE=21:GOSUB 110 -7160 PRINT " ":RETURN -7200 HO=21+PL+3+LD-1-Q:VE=5:GOSUB 110 -7210 GOSUB 210 -7230 IF (IN$<"0") OR(IN$>"9") THEN 7210 -7240 IF (IN$=MID$(U4$,J,1)) THEN RETURN -7260 HO=26:VE=7:GOSUB 110:PRINT IN$" is FOUT" -7270 GOSUB 10100 -7280 HO=26:VE=7:GOSUB 110:PRINT " " -7290 GOTO 7200 -7300 HO=23+LD-1-Q3:VE=6:GOSUB 110 -7310 GOSUB 210 -7330 IF (IN$<"0") OR(IN$>"9") THEN 7310 -7340 IF (IN$=MID$(U5$,J,1)) THEN RETURN -7360 HO=26:VE=8:GOSUB 110:PRINT IN$" is FOUT" -7370 GOSUB 10100 -7380 HO=26:VE=8:GOSUB 110:PRINT " " -7390 GOTO 7300 -7400 HO=26-1-Q3:VE=6:GOSUB 110 -7410 GOSUB 210 -7420 IF (IN$<"0") OR(IN$>"9") THEN 7410 -7430 IF (IN$=MID$(S$,J,1)) THEN RETURN -7440 HO=26:VE=8:GOSUB 110:PRINT IN$" is FOUT" -7450 GOSUB 10100 -7460 HO=26:VE=8:GOSUB 110:PRINT " " -7470 GOTO 7400 +7110 GOSUB7100 +7120 FORJ=0 TO21:VE=J:GOSUB110 +7130 PRINT" " +7140 NEXTJ:RETURN +7150 HO=24:VE=21:GOSUB110 +7160 PRINT" ":RETURN +7200 HO=21+PL+3+LD-1-Q:VE=5:GOSUB110 +7210 GOSUB210 +7230 IF(IN$<"0") OR(IN$>"9") THEN7210 +7240 IF(IN$=MID$(U4$,J,1)) THENRETURN +7260 HO=26:VE=7:GOSUB110:PRINTIN$" is FOUT" +7270 GOSUB10100 +7280 HO=26:VE=7:GOSUB110:PRINT" " +7290 GOTO7200 +7300 HO=23+LD-1-Q3:VE=6:GOSUB110 +7310 GOSUB210 +7330 IF(IN$<"0") OR(IN$>"9") THEN7310 +7340 IF(IN$=MID$(U5$,J,1)) THENRETURN +7360 HO=26:VE=8:GOSUB110:PRINTIN$" is FOUT" +7370 GOSUB10100 +7380 HO=26:VE=8:GOSUB110:PRINT" " +7390 GOTO7300 +7400 HO=26-1-Q3:VE=6:GOSUB110 +7410 GOSUB210 +7420 IF(IN$<"0") OR(IN$>"9") THEN7410 +7430 IF(IN$=MID$(S$,J,1)) THENRETURN +7440 HO=26:VE=8:GOSUB110:PRINTIN$" is FOUT" +7450 GOSUB10100 +7460 HO=26:VE=8:GOSUB110:PRINT" " +7470 GOTO7400 8000 REM GETALLEN CONTROLEREN -8010 IF (D=0) OR(T=0) THEN GOSUB 8300:GOTO 8320 -8020 GOSUB 8500:REM DELER CONTROLEREN -8030 IF LEN(D$)>4 THEN GOSUB 8300:GOSUB 10060:GOTO 8350 -8040 IF LEN(D$)>LEN(T$) THEN GOSUB 8300:GOSUB 10060:GOTO 8440 -8050 IF LEN(T$)>8 THEN GOSUB 8300:GOSUB 10060:GOTO 8380 +8010 IF(D=0) OR(T=0) THENGOSUB8300:GOTO8320 +8020 GOSUB8500:REM DELER CONTROLEREN +8030 IFLEN(D$)>4 THENGOSUB8300:GOSUB10060:GOTO8350 +8040 IFLEN(D$)>LEN(T$) THENGOSUB8300:GOSUB10060:GOTO8440 +8050 IFLEN(T$)>8 THENGOSUB8300:GOSUB10060:GOTO8380 8070 LD=LEN(D$):WD=VAL(D$) 8080 LT=LEN(T$):WT=VAL(T$) -8090 GOSUB 8700 -8100 IF LEN(U$)>6 THEN GOSUB 8300:GOSUB 10060:GOTO 8410 -8110 IF WT<>INT(WT) THEN GOSUB 8900 -8120 IF LEFT$(T$,2)="00" THEN GOSUB 8300:GOSUB 10060:GOTO 8320 -8130 IF (WT<.01) THEN GOSUB 8300:GOSUB 10060:GOTO 8320 -8140 GOTO 1900 -8300 IF F=3 THEN PRINT " AL 4x FOUT....":GOSUB 10000:GOTO 1000 +8090 GOSUB8700 +8100 IFLEN(U$)>6 THENGOSUB8300:GOSUB10060:GOTO8410 +8110 IFWT<>INT(WT) THENGOSUB8900 +8120 IFLEFT$(T$,2)="00" THENGOSUB8300:GOSUB10060:GOTO8320 +8130 IF(WT<.01) THENGOSUB8300:GOSUB10060:GOTO8320 +8140 GOTO1900 +8300 IFF=3 THENPRINT" AL 4x FOUT....":GOSUB10000:GOTO1000 8310 RETURN -8320 GOSUB 8490:PRINT "GETALLEN ZIJN NIET IN ORDE." -8330 F=F+1:GOSUB 10000:GOTO 1700 -8340 REM -8350 GOSUB 8490:PRINT "DELER IS TE GROOT." -8360 F=F+1:GOSUB 10000:GOTO 1700 -8370 REM -8380 GOSUB 8490:PRINT "DEELTAL IS TE GROOT." -8390 F=F+1:GOSUB 10000:GOTO 1700 -8400 REM -8410 GOSUB 8490:PRINT "UITKOMST IS TE GROOT." -8420 F=F+1:GOSUB 10000:GOTO 1700 -8430 REM -8440 GOSUB 8490:PRINT "DEELTAL VOOR PUNT IS TE KLEIN." -8450 F=F+1:GOSUB 10000:GOTO 1700 -8490 HO=5:VE=18:GOSUB 110:RETURN -8500 IF D<>INT(D) THEN 8550 -8510 SR=D:GOSUB 300:D$=SR$ -8520 SR=T:GOSUB 300:T$=SR$ -8530 IF LEFT$(T$,1)="." THEN T$="0"+T$ +8320 GOSUB8490:PRINT"GETALLEN ZIJN NIET IN ORDE." +8330 F=F+1:GOSUB10000:GOTO1700 +8340 REM +8350 GOSUB8490:PRINT"DELER IS TE GROOT." +8360 F=F+1:GOSUB10000:GOTO1700 +8370 REM +8380 GOSUB8490:PRINT"DEELTAL IS TE GROOT." +8390 F=F+1:GOSUB10000:GOTO1700 +8400 REM +8410 GOSUB8490:PRINT"UITKOMST IS TE GROOT." +8420 F=F+1:GOSUB10000:GOTO1700 +8430 REM +8440 GOSUB8490:PRINT"DEELTAL VOOR PUNT IS TE KLEIN." +8450 F=F+1:GOSUB10000:GOTO1700 +8490 HO=5:VE=18:GOSUB110:RETURN +8500 IFD<>INT(D) THEN8550 +8510 SR=D:GOSUB300:D$=SR$ +8520 SR=T:GOSUB300:T$=SR$ +8530 IFLEFT$(T$,1)="." THENT$="0"+T$ 8540 RETURN 8550 REM * KOMMA UIT DELER -8560 FOR I=1 TO LEN(D$) -8570 IF MID$(D$,I,1)="." THEN GH=I -8580 NEXT I +8560 FORI=1 TOLEN(D$) +8570 IFMID$(D$,I,1)="." THENGH=I +8580 NEXTI 8590 DC$=RIGHT$(D$,LEN(D$)-GH) 8600 L1=LEN(DC$):M=10^L1 -8610 GOSUB 8490:PRINT "DELER EN DEELTAL WORDEN" -8620 PRINT :PRINT " ";M;"x ZO GROOT." +8610 GOSUB8490:PRINT"DELER EN DEELTAL WORDEN" +8620 PRINT:PRINT" ";M;"x ZO GROOT." 8630 D1=M*D:T1=M*T -8640 SR=D1:GOSUB 300:D$=SR$ -8650 SR=T1:GOSUB 300:T$=SR$ -8660 IF LEFT$(T$,1)="." THEN T$="0"+T$ -8670 GOSUB 10000:GOSUB 8860:RETURN -8700 IF (K1=2) OR(WT=INT(WT)) THEN 8850 -8710 FOR I=1 TO LEN(T$) -8720 IF MID$(T$,I,1)="." THEN TH=I -8730 NEXT I:IF TH=0 THEN TH=LEN(T$) +8640 SR=D1:GOSUB300:D$=SR$ +8650 SR=T1:GOSUB300:T$=SR$ +8660 IFLEFT$(T$,1)="." THENT$="0"+T$ +8670 GOSUB10000:GOSUB8860:RETURN +8700 IF(K1=2) OR(WT=INT(WT)) THEN8850 +8710 FORI=1 TOLEN(T$) +8720 IFMID$(T$,I,1)="." THENTH=I +8730 NEXTI:IFTH=0 THENTH=LEN(T$) 8735 TH$=LEFT$(T$,TH-1):L2=LEN(TH$) 8740 TC$=RIGHT$(T$,LEN(T$)-TH) 8750 L3=LEN(TC$) -8755 UI=WT/WD:SR=UI:GOSUB 300:U$=SR$ -8760 IF LEFT$(U$,1)="." THEN U$="0"+U$ -8770 FOR J=1 TO LEN(U$) -8780 IF MID$(U$,J,1)="." THEN UH=J -8790 NEXT J +8755 UI=WT/WD:SR=UI:GOSUB300:U$=SR$ +8760 IFLEFT$(U$,1)="." THENU$="0"+U$ +8770 FORJ=1 TOLEN(U$) +8780 IFMID$(U$,J,1)="." THENUH=J +8790 NEXTJ 8800 UH$=LEFT$(U$,UH) 8810 UC$=MID$(U$,LEN(UH$)+1,L3) 8820 U$=UH$+UC$ 8830 RETURN -8850 UI=INT(WT/WD):SR=UI:GOSUB 300:U$=SR$ -8860 HO=6:VE=12:GOSUB 110 -8870 PRINT D$;" / ";T$;" \ ??" -8880 GOSUB 10060 +8850 UI=INT(WT/WD):SR=UI:GOSUB300:U$=SR$ +8860 HO=6:VE=12:GOSUB110 +8870 PRINTD$;" / ";T$;" \ ??" +8880 GOSUB10060 8890 RETURN 8900 REM "0" VOOR DEELTAL -8910 IF (L2=LD) OR(L2>LD) THEN RETURN -8920 IF LD-L2=1 THEN T$="0"+T$:PU=1:RETURN -8930 GOSUB 8300:GOSUB 10060:GOTO 8440 +8910 IF(L2=LD) OR(L2>LD) THENRETURN +8920 IFLD-L2=1 THENT$="0"+T$:PU=1:RETURN +8930 GOSUB8300:GOSUB10060:GOTO8440 8990 REM INVOERROUTINE SOM 9000 G$="":I=0 -9010 GOSUB 110:GOSUB 210 -9020 IF (IN$=CHR$(8)) AND(I=0) THEN 9010 -9030 IF (IN$=CHR$(8)) THEN 9090 -9040 IF (IN$=CHR$(13)) AND(I>0) THEN RETURN -9050 IF (IN$<".") OR(IN$>"9") OR(IN$="/") THEN 9010 -9060 PRINT IN$;:G$=G$+IN$ -9070 I=I+1:HO=HO+1:IF (I>8) THEN RETURN -9080 GOTO 9010 +9010 GOSUB110:GOSUB210 +9020 IF(IN$=CHR$(8)) AND(I=0) THEN9010 +9030 IF(IN$=CHR$(8)) THEN9090 +9040 IF(IN$=CHR$(13)) AND(I>0) THENRETURN +9050 IF(IN$<".") OR(IN$>"9") OR(IN$="/") THEN9010 +9060 PRINTIN$;:G$=G$+IN$ +9070 I=I+1:HO=HO+1:IF(I>8) THENRETURN +9080 GOTO9010 9090 G$=LEFT$(G$,LEN(G$)-1) -9100 HO=HO-1:GOSUB 110:I=I-1:PRINT " " -9110 GOTO 9010 +9100 HO=HO-1:GOSUB110:I=I-1:PRINT" " +9110 GOTO9010 9200 REM FOUT UITKOMST 9210 F1=F1+1 -9220 GOSUB 9350:GOSUB 6000:GOSUB 9360 +9220 GOSUB9350:GOSUB6000:GOSUB9360 9230 RETURN 9250 REM FOUT KEER 9260 F2=F2+1 -9270 GOSUB 9350:GOSUB 6300:GOSUB 9360 +9270 GOSUB9350:GOSUB6300:GOSUB9360 9280 RETURN 9300 REM FOUT AFTREKKEN 9310 F3=F3+1 -9320 GOSUB 9350:GOSUB 6500:GOSUB 9360 +9320 GOSUB9350:GOSUB6500:GOSUB9360 9330 RETURN -9350 GOSUB 9370:PRINT "FOUT":RETURN -9360 GOSUB 9370:PRINT " ":RETURN -9370 HO=15:VE=4:GOSUB 110:RETURN -9400 HO=20:VE=4:GOSUB 110 -9410 PRINT "Ik heb 4 sommen" -9420 VE=6:GOSUB 110:PRINT " gemaakt." -9430 VE=8:GOSUB 110:PRINT "NU JIJ DUS." +9350 GOSUB9370:PRINT"FOUT":RETURN +9360 GOSUB9370:PRINT" ":RETURN +9370 HO=15:VE=4:GOSUB110:RETURN +9400 HO=20:VE=4:GOSUB110 +9410 PRINT"Ik heb 4 sommen" +9420 VE=6:GOSUB110:PRINT" gemaakt." +9430 VE=8:GOSUB110:PRINT"NU JIJ DUS." 9440 RETURN 9990 REM SUBROUTINES -10000 HO=0:VE=23:GOSUB 110 -10010 PRINT " Druk op de spatiebalk..."; -10020 GOSUB 210 -10030 IF (IN$<>" ") THEN 10020 -10040 GOSUB 100:RETURN +10000 HO=0:VE=23:GOSUB110 +10010 PRINT" Druk op de spatiebalk..."; +10020 GOSUB210 +10030 IF(IN$<>" ") THEN10020 +10040 GOSUB100:RETURN 10050 REM * WISSEN -10060 HO=0:VE=14:GOSUB 110 -10070 FOR J=1 TO 68:PRINT " "; -10080 NEXT J:RETURN +10060 HO=0:VE=14:GOSUB110 +10070 FORJ=1 TO68:PRINT" "; +10080 NEXTJ:RETURN 10090 REM WACHTLUSSEN -10100 FOR W=1 TO 1000:NEXT W:RETURN -10110 FOR W=1 TO 2000:NEXT W:RETURN -10120 FOR W=1 TO 50:NEXT W:RETURN -10130 FOR W=1 TO 500:NEXT W:RETURN -10140 FOR W=1 TO 100:NEXT W:RETURN +10100 FORW=1 TO1000:NEXTW:RETURN +10110 FORW=1 TO2000:NEXTW:RETURN +10120 FORW=1 TO50:NEXTW:RETURN +10130 FORW=1 TO500:NEXTW:RETURN +10140 FORW=1 TO100:NEXTW:RETURN 10190 REM BEGINSCHERM -10200 GOSUB 100 -10210 HO=0:VE=2:GOSUB 110 -10220 PRINT " **********************" -10230 PRINT " * *" -10240 PRINT " * STAARTDELINGEN *" -10250 PRINT " * *" -10260 PRINT " **********************" +10200 GOSUB100 +10210 HO=0:VE=2:GOSUB110 +10220 PRINT" **********************" +10230 PRINT" * *" +10240 PRINT" * STAARTDELINGEN *" +10250 PRINT" * *" +10260 PRINT" **********************" 10270 RETURN 10290 REM INSTRUKTIE -10300 GOSUB 100 -10310 PRINT :PRINT " > > U I T L E G < <" -10320 PRINT :PRINT " Ik wil je helpen bij het maken van" -10330 PRINT :PRINT " staartdelingen." -10340 PRINT :PRINT " De vorm ziet er zo uit:" -10350 PRINT :PRINT " 18/2345\130" -10360 PRINT " 18" -10370 PRINT " --" -10380 PRINT " 54" -10390 PRINT " 54" -10400 PRINT " --" -10410 PRINT " 05" -10420 PRINT " 0" -10430 PRINT " --" -10440 PRINT " REST 5" -10450 PRINT " Aanhalen doe ik zelf!" -10460 GOSUB 10000 -10470 PRINT :PRINT " Je kunt zelf de som samenstellen" -10480 PRINT :PRINT " en je kunt het mij laten doen." -10490 PRINT :PRINT -10500 PRINT :PRINT " Als je in een getal een komma zet" -10510 PRINT :PRINT " moet je er voor zorgen dat je" -10520 PRINT :PRINT " een PUNT typt." -10530 PRINT :PRINT " KOMMA'S IN GETALLEN ZIJN EEN PUNT !!" -10540 PRINT :PRINT -10550 PRINT :PRINT " Een punt in de deler haal ik er uit." -10560 PRINT :PRINT " De getallen veranderen vanzelf !" -10570 GOSUB 10000 -10580 PRINT :PRINT " De deler en het deeltal mogen" -10590 PRINT :PRINT " niet 0 zijn." -10600 PRINT :PRINT " De deler mag 1 cijfer groter zijn dan" -10610 PRINT :PRINT " 't hele getal van het deeltal." -10620 PRINT :PRINT :PRINT " Als een som niet gaat moet je" -10630 PRINT :PRINT " opnieuw getallen opgeven." -10640 PRINT :PRINT :PRINT " Maak de getallen ook niet groter" -10650 PRINT :PRINT " dan aangegeven is." -10660 GOSUB 10000 -10670 PRINT :PRINT " Als je niet uit het hoofd kunt" -10680 PRINT :PRINT " uitrekenen hoeveel keer iets gaat," -10690 PRINT :PRINT " kun je op de > K < drukken." -10700 PRINT :PRINT " Je krijgt dan een KLADBLOK waarop" -10710 PRINT :PRINT " je kunt oefenen." -10720 PRINT :PRINT " Fouten worden hier niet meegeteld." -10730 PRINT :PRINT " Als je een fout maakt krijg je" -10740 PRINT :PRINT " automatisch de kladblok." -10750 GOSUB 10000 -10760 PRINT :PRINT " Je kunt mij ook laten rekenen." -10770 PRINT :PRINT " Maar.... ik reken niet alles voor." -10780 PRINT :PRINT " Ik reken 4 sommen voor je uit;" -10790 PRINT :PRINT " de rest mag jij doen." -10800 PRINT :PRINT :PRINT " VEEL SUCCES..." -10810 GOSUB 10000 +10300 GOSUB100 +10310 PRINT:PRINT" > > U I T L E G < <" +10320 PRINT:PRINT" Ik wil je helpen bij het maken van" +10330 PRINT:PRINT" staartdelingen." +10340 PRINT:PRINT" De vorm ziet er zo uit:" +10350 PRINT:PRINT" 18/2345\130" +10360 PRINT" 18" +10370 PRINT" --" +10380 PRINT" 54" +10390 PRINT" 54" +10400 PRINT" --" +10410 PRINT" 05" +10420 PRINT" 0" +10430 PRINT" --" +10440 PRINT" REST 5" +10450 PRINT" Aanhalen doe ik zelf!" +10460 GOSUB10000 +10470 PRINT:PRINT" Je kunt zelf de som samenstellen" +10480 PRINT:PRINT" en je kunt het mij laten doen." +10490 PRINT:PRINT +10500 PRINT:PRINT" Als je in een getal een komma zet" +10510 PRINT:PRINT" moet je er voor zorgen dat je" +10520 PRINT:PRINT" een PUNT typt." +10530 PRINT:PRINT" KOMMA'S IN GETALLEN ZIJN EEN PUNT !!" +10540 PRINT:PRINT +10550 PRINT:PRINT" Een punt in de deler haal ik er uit." +10560 PRINT:PRINT" De getallen veranderen vanzelf !" +10570 GOSUB10000 +10580 PRINT:PRINT" De deler en het deeltal mogen" +10590 PRINT:PRINT" niet 0 zijn." +10600 PRINT:PRINT" De deler mag 1 cijfer groter zijn dan" +10610 PRINT:PRINT" 't hele getal van het deeltal." +10620 PRINT:PRINT:PRINT" Als een som niet gaat moet je" +10630 PRINT:PRINT" opnieuw getallen opgeven." +10640 PRINT:PRINT:PRINT" Maak de getallen ook niet groter" +10650 PRINT:PRINT" dan aangegeven is." +10660 GOSUB10000 +10670 PRINT:PRINT" Als je niet uit het hoofd kunt" +10680 PRINT:PRINT" uitrekenen hoeveel keer iets gaat," +10690 PRINT:PRINT" kun je op de > K < drukken." +10700 PRINT:PRINT" Je krijgt dan een KLADBLOK waarop" +10710 PRINT:PRINT" je kunt oefenen." +10720 PRINT:PRINT" Fouten worden hier niet meegeteld." +10730 PRINT:PRINT" Als je een fout maakt krijg je" +10740 PRINT:PRINT" automatisch de kladblok." +10750 GOSUB10000 +10760 PRINT:PRINT" Je kunt mij ook laten rekenen." +10770 PRINT:PRINT" Maar.... ik reken niet alles voor." +10780 PRINT:PRINT" Ik reken 4 sommen voor je uit;" +10790 PRINT:PRINT" de rest mag jij doen." +10800 PRINT:PRINT:PRINT" VEEL SUCCES..." +10810 GOSUB10000 10820 RETURN -14000 REM +14000 REM 14090 REM SUBROUTINE PRINTER -14100 GOSUB 10200 -14110 HO=6:VE=15:GOSUB 110 -14120 PRINT "Wil je een afdruk" -14130 PRINT :PRINT " op de printer? (J/N) "; -14140 GOSUB 210 -14150 IF (IN$="J") OR(IN$="j") THEN PR=1:RETURN -14160 IF (IN$="N") OR(IN$="n") THEN PR=0:RETURN -14170 GOTO 14140 +14100 GOSUB10200 +14110 HO=6:VE=15:GOSUB110 +14120 PRINT"Wil je een afdruk" +14130 PRINT:PRINT" op de printer? (J/N) "; +14140 GOSUB210 +14150 IF(IN$="J") OR(IN$="j") THENPR=1:RETURN +14160 IF(IN$="N") OR(IN$="n") THENPR=0:RETURN +14170 GOTO14140 14190 REM SUBROUTINES PRINTER -14200 SR$=" "+D$+" / "+T$+" \ ":GOSUB 350 +14200 SR$=" "+D$+" / "+T$+" \ ":GOSUB350 14210 RETURN -14230 SR$=U$:GOSUB 350:GOSUB 360:RETURN +14230 SR$=U$:GOSUB350:GOSUB360:RETURN 14240 SP=2*LD+P-LEN(A$)+R+3 -14250 FOR J=1 TO SP:SR$=" ":GOSUB 350:NEXT J -14260 SR$=A$:GOSUB 350:GOSUB 360:RETURN +14250 FORJ=1 TOSP:SR$=" ":GOSUB350:NEXTJ +14260 SR$=A$:GOSUB350:GOSUB360:RETURN 14270 SP=2*LD+P+R+3-LEN(B$) -14280 FOR J=1 TO SP:SR$=" ":GOSUB 350:NEXT J -14290 FOR I=1 TO LEN(B$) -14300 SR$="-":GOSUB 350:NEXT I -14310 GOSUB 360:RETURN +14280 FORJ=1 TOSP:SR$=" ":GOSUB350:NEXTJ +14290 FORI=1 TOLEN(B$) +14300 SR$="-":GOSUB350:NEXTI +14310 GOSUB360:RETURN 14320 SP=2*LD+P-LEN(S$)+R+3 -14330 FOR J=1 TO SP:SR$=" ":GOSUB 350:NEXT J -14340 SR$=S$:GOSUB 350:RETURN -14370 SR$=MID$(T$,LD+T+R,1):GOSUB 350 -14380 GOSUB 360:RETURN -14390 GOSUB 360:SP=2*LD+P-LEN(S$)+R+2 -14400 FOR J=1 TO SP:SR$=" ":GOSUB 350:NEXT J -14410 FOR I=1 TO LEN(S$)+2 -14420 SR$="=":GOSUB 350:NEXT I -14430 GOSUB 360:GOSUB 360:RETURN -14990 REM +14330 FORJ=1 TOSP:SR$=" ":GOSUB350:NEXTJ +14340 SR$=S$:GOSUB350:RETURN +14370 SR$=MID$(T$,LD+T+R,1):GOSUB350 +14380 GOSUB360:RETURN +14390 GOSUB360:SP=2*LD+P-LEN(S$)+R+2 +14400 FORJ=1 TOSP:SR$=" ":GOSUB350:NEXTJ +14410 FORI=1 TOLEN(S$)+2 +14420 SR$="=":GOSUB350:NEXTI +14430 GOSUB360:GOSUB360:RETURN +14990 REM 30000 REM AANPASSING "\" 30010 REM Op enkele computers zal de 30020 REM schuine streep (CODE 92) 30030 REM aangepast moeten worden. -30040 REM +30040 REM 30050 REM WIS/DELETE is in dit prog. 30060 REM CHR$(8) in 9020 en 9030 -30070 REM +30070 REM 30100 REM EDUCATIEF PROGRAMMA VOOR 30110 REM O.A. BASISSCHOOL GROEP 7/8 30120 REM GEMAAKT OP MSX-1 30130 REM JANUARI 1987 -30140 REM +30140 REM 30150 REM *********************** 30160 REM * * 30170 REM * LEO JANSSEN * @@ -551,6 +552,5 @@ 30200 REM * 04760-72692 * 30210 REM * * 30220 REM *********************** -30230 REM +30230 REM 30240 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/20_Rekenfriek.bc2 b/Best_of_Basicode_4/20_Rekenfriek.bc2 index 181fdc6..f3c77a9 100644 --- a/Best_of_Basicode_4/20_Rekenfriek.bc2 +++ b/Best_of_Basicode_4/20_Rekenfriek.bc2 @@ -1,924 +1,924 @@ -1000 A=1000:GOTO 20:REM REKENFRIEK -1010 DIM LC$(25):DIM W(10),X(10),Y(10),Z(10),AF(10) -1015 GOSUB 100 -1020 HO=6:VE=4:GOSUB 110:PRINT "**************" -1030 HO=6:VE=5:GOSUB 110:PRINT "* *" -1040 HO=6:VE=6:GOSUB 110:PRINT "* REKENFRIEK *" -1050 HO=6:VE=7:GOSUB 110:PRINT "* *" -1060 HO=6:VE=8:GOSUB 110:PRINT "**************" -1070 HO=0:VE=12:GOSUB 110:PRINT " */^?=%+-*/^?=%+-/^?=" -1080 HO=3:VE=15:GOSUB 110:PRINT "Hallo,mijn naam is" -1090 HO=7:VE=17:GOSUB 110:PRINT "REKENFRIEK" -1100 HO=3:VE=21:GOSUB 110:PRINT "Hoe heet jij";:INPUT NA$ -1110 IF NA$<>"" THEN 1160 -1120 HO=3:VE=21:GOSUB 110:PRINT "Heb jij geen naam???" -1130 FOR J=1 TO 1000:NEXT J -1140 HO=3:VE=21:GOSUB 110:PRINT " " -1150 GOTO 1100 -1160 GOSUB 100 -1170 HO=3:VE=3:GOSUB 110:PRINT "Hallo ";NA$ -1180 HO=1:VE=5:GOSUB 110 -1190 PRINT "Leuk dat je met mij wilt rekenen." -1200 HO=1:VE=9:GOSUB 110:PRINT "Wil je eerst uitleg (j/n)?" -1210 GOSUB 210:F$=IN$ -1220 IF F$="S" THEN 6410 -1230 IF F$="s" THEN 6410 -1240 IF F$="J" THEN 1290 -1250 IF F$="j" THEN 1290 -1260 IF F$="N" THEN 1710 -1270 IF F$="n" THEN 1710 -1280 GOTO 1210 -1290 GOSUB 100 -1300 PRINT " "NA$;"," -1310 PRINT :PRINT "ik zal het net zo moeilijk" -1320 PRINT "maken als je zelf wenst." -1330 PRINT :PRINT "Welke rekenbewerking je wilt gaan" -1340 PRINT "doen kun je op het" -1350 PRINT "-MENU-scherm kiezen." -1360 PRINT :PRINT "Bij het berekenen van de antwoorden" -1370 PRINT "mag je net zoveel kladpapier" -1380 PRINT "gebruiken als je wilt" -1390 PRINT "maar probeer het zoveel" -1400 PRINT "mogelijk uit je hoofd te doen." -1410 GOSUB 5120 -1420 PRINT "Het gebruiken van een zakrekenmachine" -1430 PRINT "voor het vinden van de antwoorden" -1440 PRINT "maakt me ziek.Ik neem aan dat je" -1450 PRINT "me dat niet wilt aandoen!" -1460 PRINT :PRINT "Je krijgt steeds blokken van 10" -1470 PRINT "vragen,waarna je kunt kiezen om door" -1480 PRINT "te gaan met dezelfde of met een" -1490 PRINT "een andere rekenkundige bewerking." -1500 PRINT :PRINT "Na 10 vragen vertel ik je hoe hoog" -1510 PRINT "je score is. Als je het antwoord" -1520 PRINT "direkt goed hebt krijg je 10 punten." -1530 PRINT "Is je 2e antwoord goed dan" -1540 PRINT "krijg je 5 punten." -1550 GOSUB 5120 -1560 PRINT :PRINT "De score wordt bepaald door" -1570 PRINT "het totaal aantal behaalde punten" -1580 PRINT "te delen door het aantal " -1590 PRINT "gestelde vragen." -1600 PRINT :PRINT "Naar aanleiding van jouw score geef" -1610 PRINT "ik je advies om je speelniveau" -1620 PRINT "te verhogen,te verlagen,of" -1630 PRINT "hetzelfde te laten." -1640 PRINT :PRINT "Elke keer als ik je een antwoord" -1650 PRINT "vraag,kun je stoppen. In plaats" -1660 PRINT "van een antwoord druk je dan -S- in." -1670 GOSUB 5120:REM Volgende scherm' -1680 PRINT :PRINT "Na ieder antwoord moet je -RETURN-" -1690 PRINT "indrukken,anders krijg ik jouw" -1700 PRINT "antwoord niet tezien." -1710 GOSUB 100:HO=6:VE=10:GOSUB 110:PRINT "SUCCES ";NA$ -1720 GOSUB 5120:REM Volgende scherm' -1730 GOSUB 100:K=0 -1740 HO=10:VE=2:GOSUB 110:PRINT "MENU" -1750 HO=4:VE=12:GOSUB 110:PRINT "-M-MACHTSVERHEFFEN." -1760 HO=4:VE=14:GOSUB 110:PRINT "-W-WORTELTREKKEN." -1770 HO=4:VE=16:GOSUB 110:PRINT "-S-STOPPEN." -1780 HO=5:VE=22:GOSUB 110:PRINT NA$;",maak je keuze." -1790 GOSUB 210:A$=IN$ -1800 IF A$="M" THEN H=12:GOSUB 9510:K=3:GOTO 1870 -1810 IF A$="m" THEN H=12:GOSUB 9510:K=3:GOTO 1870 -1820 IF A$="W" THEN H=14:GOSUB 9510:K=4:GOTO 2440 -1830 IF A$="w" THEN H=14:GOSUB 9510:K=4:GOTO 2440 -1840 IF A$="S" THEN H=16:GOSUB 9510:GOTO 6410 -1850 IF A$="s" THEN H=16:GOSUB 9510:GOTO 6410 -1860 GOTO 1790 -1870 REM + +1000 A=1000:GOTO20:REM REKENFRIEK +1010 DIMLC$(25):DIMW(10),X(10),Y(10),Z(10),AF(10) +1015 GOSUB100 +1020 HO=6:VE=4:GOSUB110:PRINT"**************" +1030 HO=6:VE=5:GOSUB110:PRINT"* *" +1040 HO=6:VE=6:GOSUB110:PRINT"* REKENFRIEK *" +1050 HO=6:VE=7:GOSUB110:PRINT"* *" +1060 HO=6:VE=8:GOSUB110:PRINT"**************" +1070 HO=0:VE=12:GOSUB110:PRINT" */^?=%+-*/^?=%+-/^?=" +1080 HO=3:VE=15:GOSUB110:PRINT"Hallo,mijn naam is" +1090 HO=7:VE=17:GOSUB110:PRINT"REKENFRIEK" +1100 HO=3:VE=21:GOSUB110:PRINT"Hoe heet jij";:INPUTNA$ +1110 IFNA$<>"" THEN1160 +1120 HO=3:VE=21:GOSUB110:PRINT"Heb jij geen naam???" +1130 FORJ=1 TO1000:NEXTJ +1140 HO=3:VE=21:GOSUB110:PRINT" " +1150 GOTO1100 +1160 GOSUB100 +1170 HO=3:VE=3:GOSUB110:PRINT"Hallo ";NA$ +1180 HO=1:VE=5:GOSUB110 +1190 PRINT"Leuk dat je met mij wilt rekenen." +1200 HO=1:VE=9:GOSUB110:PRINT"Wil je eerst uitleg (j/n)?" +1210 GOSUB210:F$=IN$ +1220 IFF$="S" THEN6410 +1230 IFF$="s" THEN6410 +1240 IFF$="J" THEN1290 +1250 IFF$="j" THEN1290 +1260 IFF$="N" THEN1710 +1270 IFF$="n" THEN1710 +1280 GOTO1210 +1290 GOSUB100 +1300 PRINT" "NA$;"," +1310 PRINT:PRINT"ik zal het net zo moeilijk" +1320 PRINT"maken als je zelf wenst." +1330 PRINT:PRINT"Welke rekenbewerking je wilt gaan" +1340 PRINT"doen kun je op het" +1350 PRINT"-MENU-scherm kiezen." +1360 PRINT:PRINT"Bij het berekenen van de antwoorden" +1370 PRINT"mag je net zoveel kladpapier" +1380 PRINT"gebruiken als je wilt" +1390 PRINT"maar probeer het zoveel" +1400 PRINT"mogelijk uit je hoofd te doen." +1410 GOSUB5120 +1420 PRINT"Het gebruiken van een zakrekenmachine" +1430 PRINT"voor het vinden van de antwoorden" +1440 PRINT"maakt me ziek.Ik neem aan dat je" +1450 PRINT"me dat niet wilt aandoen!" +1460 PRINT:PRINT"Je krijgt steeds blokken van 10" +1470 PRINT"vragen,waarna je kunt kiezen om door" +1480 PRINT"te gaan met dezelfde of met een" +1490 PRINT"een andere rekenkundige bewerking." +1500 PRINT:PRINT"Na 10 vragen vertel ik je hoe hoog" +1510 PRINT"je score is. Als je het antwoord" +1520 PRINT"direkt goed hebt krijg je 10 punten." +1530 PRINT"Is je 2e antwoord goed dan" +1540 PRINT"krijg je 5 punten." +1550 GOSUB5120 +1560 PRINT:PRINT"De score wordt bepaald door" +1570 PRINT"het totaal aantal behaalde punten" +1580 PRINT"te delen door het aantal " +1590 PRINT"gestelde vragen." +1600 PRINT:PRINT"Naar aanleiding van jouw score geef" +1610 PRINT"ik je advies om je speelniveau" +1620 PRINT"te verhogen,te verlagen,of" +1630 PRINT"hetzelfde te laten." +1640 PRINT:PRINT"Elke keer als ik je een antwoord" +1650 PRINT"vraag,kun je stoppen. In plaats" +1660 PRINT"van een antwoord druk je dan -S- in." +1670 GOSUB5120:REMVolgende scherm' +1680 PRINT:PRINT"Na ieder antwoord moet je -RETURN-" +1690 PRINT"indrukken,anders krijg ik jouw" +1700 PRINT"antwoord niet tezien." +1710 GOSUB100:HO=6:VE=10:GOSUB110:PRINT"SUCCES ";NA$ +1720 GOSUB5120:REMVolgende scherm' +1730 GOSUB100:K=0 +1740 HO=10:VE=2:GOSUB110:PRINT"MENU" +1750 HO=4:VE=12:GOSUB110:PRINT"-M-MACHTSVERHEFFEN." +1760 HO=4:VE=14:GOSUB110:PRINT"-W-WORTELTREKKEN." +1770 HO=4:VE=16:GOSUB110:PRINT"-S-STOPPEN." +1780 HO=5:VE=22:GOSUB110:PRINTNA$;",maak je keuze." +1790 GOSUB210:A$=IN$ +1800 IFA$="M" THENH=12:GOSUB9510:K=3:GOTO1870 +1810 IFA$="m" THENH=12:GOSUB9510:K=3:GOTO1870 +1820 IFA$="W" THENH=14:GOSUB9510:K=4:GOTO2440 +1830 IFA$="w" THENH=14:GOSUB9510:K=4:GOTO2440 +1840 IFA$="S" THENH=16:GOSUB9510:GOTO6410 +1850 IFA$="s" THENH=16:GOSUB9510:GOTO6410 +1860 GOTO1790 +1870 REM 1880 REM Machtsverheffen -1890 REM -1900 GOSUB 100:R$="0" -1910 HO=3:VE=3:GOSUB 110:PRINT NA$;"," -1920 HO=1:VE=5:GOSUB 110 -1930 PRINT " wil je eerst uitleg over" -1940 PRINT " machtsverheffen (j/n)?" -1950 GOSUB 210:A$=IN$ -1960 IF A$="S" THEN 6410 -1970 IF A$="s" THEN 6410 -1980 IF A$="J" THEN 2030 -1990 IF A$="j" THEN 2030 -2000 IF A$="N" THEN 2040 -2010 IF A$="n" THEN 2040 -2020 GOTO 1950 -2030 GOSUB 6650:REM Uitleg' -2040 GOSUB 3070:REM Moeilijkheids graad' -2050 GOSUB 7040:REM Grootte van de macht' -2060 GOSUB 4240:REM Getalsoort' -2070 GOSUB 4660:REM Getallen genereren' -2080 GOSUB 100:N=0 -2090 FOR I=1 TO 10 +1890 REM +1900 GOSUB100:R$="0" +1910 HO=3:VE=3:GOSUB110:PRINTNA$;"," +1920 HO=1:VE=5:GOSUB110 +1930 PRINT" wil je eerst uitleg over" +1940 PRINT" machtsverheffen (j/n)?" +1950 GOSUB210:A$=IN$ +1960 IFA$="S" THEN6410 +1970 IFA$="s" THEN6410 +1980 IFA$="J" THEN2030 +1990 IFA$="j" THEN2030 +2000 IFA$="N" THEN2040 +2010 IFA$="n" THEN2040 +2020 GOTO1950 +2030 GOSUB6650:REMUitleg' +2040 GOSUB3070:REMMoeilijkheids graad' +2050 GOSUB7040:REMGrootte van de macht' +2060 GOSUB4240:REMGetalsoort' +2070 GOSUB4660:REMGetallen genereren' +2080 GOSUB100:N=0 +2090 FORI=1 TO10 2100 B$="0" 2110 AW=(INT((W(I)^X(I)+.5/GW)*GW))/GW -2120 GOSUB 5060:REM Vraag bij opgaven' -2130 HO=0:VE=8:GOSUB 110:PRINT W(I);"^";X(I);"=";:INPUT B$ -2140 IF B$="S" THEN 6410 -2150 IF B$="s" THEN 6410 +2120 GOSUB5060:REMVraag bij opgaven' +2130 HO=0:VE=8:GOSUB110:PRINTW(I);"^";X(I);"=";:INPUTB$ +2140 IFB$="S" THEN6410 +2150 IFB$="s" THEN6410 2160 B=(INT((VAL(B$)+.5/GW)*GW))/GW -2170 GOSUB 5210:REM Controle antwoord' -2180 GOSUB 100 -2190 NEXT I -2200 GOSUB 6150:REM Advies' -2210 HO=2:VE=20:GOSUB 110 -2220 PRINT "Wil je met machtsverheffen" -2230 PRINT " door gaan (j/n)?" -2240 GOSUB 210:A$=IN$ -2250 IF A$="S" THEN 6410 -2260 IF A$="s" THEN 6410 -2270 IF A$="J" THEN 1870 -2280 IF A$="j" THEN 1870 -2290 IF A$="N" THEN 2320 -2300 IF A$="n" THEN 2320 -2310 GOTO 2240 -2320 GOSUB 100 -2330 HO=2:VE=20:GOSUB 110 -2340 PRINT "Wil je een andere" -2350 PRINT " rekenbewerking doen (j/n)?" -2360 GOSUB 210:A$=IN$ -2370 IF A$="J" THEN 1730 -2380 IF A$="j" THEN 1730 -2390 IF A$="N" THEN 6410 -2400 IF A$="n" THEN 6410 -2410 IF A$="S" THEN 6410 -2420 IF A$="s" THEN 6410 -2430 GOTO 2360 -2440 REM +2170 GOSUB5210:REMControle antwoord' +2180 GOSUB100 +2190 NEXTI +2200 GOSUB6150:REMAdvies' +2210 HO=2:VE=20:GOSUB110 +2220 PRINT"Wil je met machtsverheffen" +2230 PRINT" door gaan (j/n)?" +2240 GOSUB210:A$=IN$ +2250 IFA$="S" THEN6410 +2260 IFA$="s" THEN6410 +2270 IFA$="J" THEN1870 +2280 IFA$="j" THEN1870 +2290 IFA$="N" THEN2320 +2300 IFA$="n" THEN2320 +2310 GOTO2240 +2320 GOSUB100 +2330 HO=2:VE=20:GOSUB110 +2340 PRINT"Wil je een andere" +2350 PRINT" rekenbewerking doen (j/n)?" +2360 GOSUB210:A$=IN$ +2370 IFA$="J" THEN1730 +2380 IFA$="j" THEN1730 +2390 IFA$="N" THEN6410 +2400 IFA$="n" THEN6410 +2410 IFA$="S" THEN6410 +2420 IFA$="s" THEN6410 +2430 GOTO2360 +2440 REM 2450 REM Worteltrekken -2460 REM -2470 GOSUB 100:R$="0" -2480 HO=3:VE=3:GOSUB 110:PRINT NA$;"," -2490 HO=2:VE=5:GOSUB 110 -2500 PRINT "wil je eerst uitleg over" -2510 PRINT " worteltrekken (j/n)?" -2520 GOSUB 210:A$=IN$ -2530 IF A$="S" THEN 6410 -2540 IF A$="s" THEN 6410 -2550 IF A$="J" THEN 2600 -2560 IF A$="j" THEN 2600 -2570 IF A$="N" THEN 2610 -2580 IF A$="n" THEN 2610 -2590 GOTO 2520 -2600 GOSUB 7380:REM Uitleg' -2610 GOSUB 3070:REM Moeilijkheids graad' -2620 GOSUB 9830:REM Grootte van de macht' -2630 GOSUB 4240:REM Getalsoort' +2460 REM +2470 GOSUB100:R$="0" +2480 HO=3:VE=3:GOSUB110:PRINTNA$;"," +2490 HO=2:VE=5:GOSUB110 +2500 PRINT"wil je eerst uitleg over" +2510 PRINT" worteltrekken (j/n)?" +2520 GOSUB210:A$=IN$ +2530 IFA$="S" THEN6410 +2540 IFA$="s" THEN6410 +2550 IFA$="J" THEN2600 +2560 IFA$="j" THEN2600 +2570 IFA$="N" THEN2610 +2580 IFA$="n" THEN2610 +2590 GOTO2520 +2600 GOSUB7380:REMUitleg' +2610 GOSUB3070:REMMoeilijkheids graad' +2620 GOSUB9830:REMGrootte van de macht' +2630 GOSUB4240:REMGetalsoort' 2640 AG$="1" -2650 GOSUB 4660:REM Getallen genereren' -2660 GOSUB 100:N=0 -2670 FOR I=1 TO 10 +2650 GOSUB4660:REMGetallen genereren' +2660 GOSUB100:N=0 +2670 FORI=1 TO10 2680 B$="0" -2690 IF G=1 THEN 2720 -2700 IF Q>2 THEN 2720 -2710 GOTO 2730 +2690 IFG=1 THEN2720 +2700 IFQ>2 THEN2720 +2710 GOTO2730 2720 W(I)=(INT(W(I)^(1/Q)))^Q 2730 AW=(INT((W(I)^(1/Q)+.5/GW)*GW))/GW -2740 GOSUB 5060:REM Vraag bij opgaven' -2750 IF Q<>2 THEN HO=1:VE=8:GOSUB 110:PRINT Q -2760 HO=2:VE=9:GOSUB 110:PRINT "V";W(I);"=";:INPUT B$ -2770 IF B$="S" THEN 6410 -2780 IF B$="s" THEN 6410 +2740 GOSUB5060:REMVraag bij opgaven' +2750 IFQ<>2 THENHO=1:VE=8:GOSUB110:PRINTQ +2760 HO=2:VE=9:GOSUB110:PRINT"V";W(I);"=";:INPUTB$ +2770 IFB$="S" THEN6410 +2780 IFB$="s" THEN6410 2790 B=(INT((VAL(B$)+.5/GW)*GW))/GW -2800 GOSUB 5210:REM Controle antwoord' -2810 GOSUB 100 -2820 NEXT I -2830 GOSUB 6150:REM Advies' -2840 HO=2:VE=20:GOSUB 110 -2850 PRINT "Wil je met worteltrekken" -2860 PRINT " door gaan (j/n)?" -2870 GOSUB 210:A$=IN$ -2880 IF A$="S" THEN 6410 -2890 IF A$="s" THEN 6410 -2900 IF A$="J" THEN 2440 -2910 IF A$="j" THEN 2440 -2920 IF A$="N" THEN 2950 -2930 IF A$="n" THEN 2950 -2940 GOTO 2870 -2950 GOSUB 100 -2960 HO=2:VE=20:GOSUB 110 -2970 PRINT "Wil je een andere" -2980 PRINT " rekenbewerking doen (j/n)?" -2990 GOSUB 210:A$=IN$ -3000 IF A$="J" THEN 1730 -3010 IF A$="j" THEN 1730 -3020 IF A$="N" THEN 6410 -3030 IF A$="n" THEN 6410 -3040 IF A$="S" THEN 6410 -3050 IF A$="s" THEN 6410 -3060 GOTO 2990 -3070 REM +2800 GOSUB5210:REMControle antwoord' +2810 GOSUB100 +2820 NEXTI +2830 GOSUB6150:REMAdvies' +2840 HO=2:VE=20:GOSUB110 +2850 PRINT"Wil je met worteltrekken" +2860 PRINT" door gaan (j/n)?" +2870 GOSUB210:A$=IN$ +2880 IFA$="S" THEN6410 +2890 IFA$="s" THEN6410 +2900 IFA$="J" THEN2440 +2910 IFA$="j" THEN2440 +2920 IFA$="N" THEN2950 +2930 IFA$="n" THEN2950 +2940 GOTO2870 +2950 GOSUB100 +2960 HO=2:VE=20:GOSUB110 +2970 PRINT"Wil je een andere" +2980 PRINT" rekenbewerking doen (j/n)?" +2990 GOSUB210:A$=IN$ +3000 IFA$="J" THEN1730 +3010 IFA$="j" THEN1730 +3020 IFA$="N" THEN6410 +3030 IFA$="n" THEN6410 +3040 IFA$="S" THEN6410 +3050 IFA$="s" THEN6410 +3060 GOTO2990 +3070 REM 3080 REM Moeilijkheidsgraad -3090 REM -3100 GOSUB 100 -3110 HO=3:VE=2:GOSUB 110:PRINT NA$;"," -3120 HO=1:VE=4:GOSUB 110:PRINT "je moet nu de" -3130 PRINT " moeilijkheidsgraad kiezen.Ik wil" -3140 PRINT " graag weten hoe groot de getallen," -3150 PRINT " waarmee je wilt rekenen,moeten" -3160 PRINT " zijn.Op het volgende scherm kun" -3170 PRINT " je jouw keuze aangeven met 0,1,..of 9" -3180 IF K<>4 THEN 3220 -3190 HO=1:VE=14:GOSUB 110:PRINT "Advies:kies tenminste -3-" -3200 PRINT " anders krijg je bijna steeds" -3210 PRINT " dezelfde opgaven." -3220 GOSUB 5120:REM Volgende scherm' -3230 HO=5:VE=0:GOSUB 110:PRINT "MOEILIJKHEIDSGRAAD" -3240 HO=2:VE=2:GOSUB 110:PRINT "-1-Getallen van 0 t/m 5" -3250 HO=2:VE=4:GOSUB 110:PRINT "-2-Getallen van 0 t/m 10" -3260 HO=2:VE=6:GOSUB 110:PRINT "-3-Getallen van 0 t/m 20" -3270 HO=2:VE=8:GOSUB 110:PRINT "-4-Getallen van 0 t/m 50" -3280 HO=2:VE=10:GOSUB 110:PRINT "-5-Getallen van 0 t/m 100" -3290 HO=2:VE=12:GOSUB 110:PRINT "-6-Getallen van 0 t/m 500" -3300 HO=2:VE=14:GOSUB 110:PRINT "-7-Getallen van 0 t/m 1.000" -3310 HO=2:VE=16:GOSUB 110:PRINT "-8-Getallen van 0 t/m 5.000" -3320 HO=2:VE=18:GOSUB 110:PRINT "-9-Getallen van 0 t/m 10.000" -3330 HO=2:VE=20:GOSUB 110:PRINT "-0-Getallen zelf bepalen" -3340 HO=2:VE=22:GOSUB 110:PRINT NA$;",wat kies je?" -3350 GOSUB 210:M$=IN$ -3360 IF M$="S" THEN 6410 -3370 IF M$="s" THEN 6410 -3380 IF M$="1" THEN H=2:GOSUB 9620:MH=5:GOTO 3490 -3390 IF M$="2" THEN H=4:GOSUB 9620:MH=10:GOTO 3490 -3400 IF M$="3" THEN H=6:GOSUB 9620:MH=20:GOTO 3490 -3410 IF M$="4" THEN H=8:GOSUB 9620:MH=50:GOTO 3490 -3420 IF M$="5" THEN H=10:GOSUB 9620:MH=100:GOTO 3490 -3430 IF M$="6" THEN H=12:GOSUB 9620:MH=500:GOTO 3490 -3440 IF M$="7" THEN H=14:GOSUB 9620:MH=1000:GOTO 3490 -3450 IF M$="8" THEN H=16:GOSUB 9620:MH=5000:GOTO 3490 -3460 IF M$="9" THEN H=18:GOSUB 9620:MH=10000:GOTO 3490 -3470 IF M$="0" THEN H=20:GOSUB 9620:GOTO 3510 -3480 GOTO 3350 +3090 REM +3100 GOSUB100 +3110 HO=3:VE=2:GOSUB110:PRINTNA$;"," +3120 HO=1:VE=4:GOSUB110:PRINT"je moet nu de" +3130 PRINT" moeilijkheidsgraad kiezen.Ik wil" +3140 PRINT" graag weten hoe groot de getallen," +3150 PRINT" waarmee je wilt rekenen,moeten" +3160 PRINT" zijn.Op het volgende scherm kun" +3170 PRINT" je jouw keuze aangeven met 0,1,..of 9" +3180 IFK<>4 THEN3220 +3190 HO=1:VE=14:GOSUB110:PRINT"Advies:kies tenminste -3-" +3200 PRINT" anders krijg je bijna steeds" +3210 PRINT" dezelfde opgaven." +3220 GOSUB5120:REMVolgende scherm' +3230 HO=5:VE=0:GOSUB110:PRINT"MOEILIJKHEIDSGRAAD" +3240 HO=2:VE=2:GOSUB110:PRINT"-1-Getallen van 0 t/m 5" +3250 HO=2:VE=4:GOSUB110:PRINT"-2-Getallen van 0 t/m 10" +3260 HO=2:VE=6:GOSUB110:PRINT"-3-Getallen van 0 t/m 20" +3270 HO=2:VE=8:GOSUB110:PRINT"-4-Getallen van 0 t/m 50" +3280 HO=2:VE=10:GOSUB110:PRINT"-5-Getallen van 0 t/m 100" +3290 HO=2:VE=12:GOSUB110:PRINT"-6-Getallen van 0 t/m 500" +3300 HO=2:VE=14:GOSUB110:PRINT"-7-Getallen van 0 t/m 1.000" +3310 HO=2:VE=16:GOSUB110:PRINT"-8-Getallen van 0 t/m 5.000" +3320 HO=2:VE=18:GOSUB110:PRINT"-9-Getallen van 0 t/m 10.000" +3330 HO=2:VE=20:GOSUB110:PRINT"-0-Getallen zelf bepalen" +3340 HO=2:VE=22:GOSUB110:PRINTNA$;",wat kies je?" +3350 GOSUB210:M$=IN$ +3360 IFM$="S" THEN6410 +3370 IFM$="s" THEN6410 +3380 IFM$="1" THENH=2:GOSUB9620:MH=5:GOTO3490 +3390 IFM$="2" THENH=4:GOSUB9620:MH=10:GOTO3490 +3400 IFM$="3" THENH=6:GOSUB9620:MH=20:GOTO3490 +3410 IFM$="4" THENH=8:GOSUB9620:MH=50:GOTO3490 +3420 IFM$="5" THENH=10:GOSUB9620:MH=100:GOTO3490 +3430 IFM$="6" THENH=12:GOSUB9620:MH=500:GOTO3490 +3440 IFM$="7" THENH=14:GOSUB9620:MH=1000:GOTO3490 +3450 IFM$="8" THENH=16:GOSUB9620:MH=5000:GOTO3490 +3460 IFM$="9" THENH=18:GOSUB9620:MH=10000:GOTO3490 +3470 IFM$="0" THENH=20:GOSUB9620:GOTO3510 +3480 GOTO3350 3490 ML=0 -3500 GOTO 4230 -3510 GOSUB 100 -3520 HO=5:VE=2:GOSUB 110:PRINT "MOEILIJKHEIDSGRAAD" -3530 HO=3:VE=5:GOSUB 110:PRINT NA$;"," -3540 PRINT :PRINT "vertel me maar wat het kleinste" -3550 PRINT "en grootste getal is waarmee" -3560 PRINT "je wilt rekenen." -3570 HO=3:VE=12:GOSUB 110:PRINT "Kleinste getal is"; -3580 INPUT ML$ -3590 IF ML$="S" THEN 6410 -3600 IF ML$="s" THEN 6410 -3610 RESTORE -3620 FOR I=1 TO 10 -3630 READ L$(I) -3640 NEXT I +3500 GOTO4230 +3510 GOSUB100 +3520 HO=5:VE=2:GOSUB110:PRINT"MOEILIJKHEIDSGRAAD" +3530 HO=3:VE=5:GOSUB110:PRINTNA$;"," +3540 PRINT:PRINT"vertel me maar wat het kleinste" +3550 PRINT"en grootste getal is waarmee" +3560 PRINT"je wilt rekenen." +3570 HO=3:VE=12:GOSUB110:PRINT"Kleinste getal is"; +3580 INPUTML$ +3590 IFML$="S" THEN6410 +3600 IFML$="s" THEN6410 +3610 RESTORE +3620 FORI=1 TO10 +3630 READL$(I) +3640 NEXTI 3650 L=LEN(ML$) 3660 LG=0 -3670 FOR J=1 TO L +3670 FORJ=1 TOL 3680 LC$(J)=MID$(ML$,J,1) -3690 FOR I=1 TO 10 -3700 IF LC$(J)=L$(I) THEN 3900 -3710 NEXT I -3720 IF LC$(J)="E" THEN 3740 -3730 GOTO 3770 -3740 IF J<>1 THEN 3760 -3750 GOTO 3770 -3760 IF J<>L THEN LG=LG+1:IF LG<2 THEN 3900 -3770 IF LC$(J)="+" THEN 3790 -3780 GOTO 3810 -3790 IF J=1 THEN 3900 -3800 IF LC$(J-1)="E" THEN 3900 -3810 IF LC$(J)="-" THEN 3830 -3820 GOTO 3850 -3830 IF J=1 THEN 3900 -3840 IF LC$(J-1)="E" THEN 3900 -3850 IF LC$(J)="." THEN 3870 -3860 GOTO 3880 -3870 IF LG=0 THEN 3900 -3880 HO=3:VE=12:GOSUB 110:PRINT " " -3890 GOTO 3570 -3900 NEXT J +3690 FORI=1 TO10 +3700 IFLC$(J)=L$(I) THEN3900 +3710 NEXTI +3720 IFLC$(J)="E" THEN3740 +3730 GOTO3770 +3740 IFJ<>1 THEN3760 +3750 GOTO3770 +3760 IFJ<>L THENLG=LG+1:IFLG<2 THEN3900 +3770 IFLC$(J)="+" THEN3790 +3780 GOTO3810 +3790 IFJ=1 THEN3900 +3800 IFLC$(J-1)="E" THEN3900 +3810 IFLC$(J)="-" THEN3830 +3820 GOTO3850 +3830 IFJ=1 THEN3900 +3840 IFLC$(J-1)="E" THEN3900 +3850 IFLC$(J)="." THEN3870 +3860 GOTO3880 +3870 IFLG=0 THEN3900 +3880 HO=3:VE=12:GOSUB110:PRINT" " +3890 GOTO3570 +3900 NEXTJ 3910 ML=VAL(ML$) -3920 HO=3:VE=15:GOSUB 110:PRINT "Grootste getal is"; -3930 INPUT MH$ -3940 IF MH$="S" THEN 6410 -3950 IF MH$="s" THEN 6410 +3920 HO=3:VE=15:GOSUB110:PRINT"Grootste getal is"; +3930 INPUTMH$ +3940 IFMH$="S" THEN6410 +3950 IFMH$="s" THEN6410 3960 L=LEN(MH$) 3970 LG=0 -3980 FOR J=1 TO L +3980 FORJ=1 TOL 3990 LC$(J)=MID$(MH$,J,1) -4000 FOR I=1 TO 10 -4010 IF LC$(J)=L$(I) THEN 4210 -4020 NEXT I -4030 IF LC$(J)="E" THEN 4050 -4040 GOTO 4080 -4050 IF J<>1 THEN 4070 -4060 GOTO 4080 -4070 IF J<>L THEN LG=LG+1:IF LG<2 THEN 4210 -4080 IF LC$(J)="+" THEN 4100 -4090 GOTO 4120 -4100 IF J=1 THEN 4210 -4110 IF LC$(J-1)="E" THEN 4210 -4120 IF LC$(J)="-" THEN 4140 -4130 GOTO 4160 -4140 IF J=1 THEN 4210 -4150 IF LC$(J-1)="E" THEN 4210 -4160 IF LC$(J)="." THEN 4180 -4170 GOTO 4190 -4180 IF LG=0 THEN 4210 -4190 HO=3:VE=15:GOSUB 110:PRINT " " -4200 GOTO 3920 -4210 NEXT J +4000 FORI=1 TO10 +4010 IFLC$(J)=L$(I) THEN4210 +4020 NEXTI +4030 IFLC$(J)="E" THEN4050 +4040 GOTO4080 +4050 IFJ<>1 THEN4070 +4060 GOTO4080 +4070 IFJ<>L THENLG=LG+1:IFLG<2 THEN4210 +4080 IFLC$(J)="+" THEN4100 +4090 GOTO4120 +4100 IFJ=1 THEN4210 +4110 IFLC$(J-1)="E" THEN4210 +4120 IFLC$(J)="-" THEN4140 +4130 GOTO4160 +4140 IFJ=1 THEN4210 +4150 IFLC$(J-1)="E" THEN4210 +4160 IFLC$(J)="." THEN4180 +4170 GOTO4190 +4180 IFLG=0 THEN4210 +4190 HO=3:VE=15:GOSUB110:PRINT" " +4200 GOTO3920 +4210 NEXTJ 4220 MH=VAL(MH$) 4230 RETURN -4240 REM +4240 REM 4250 REM Getalsoort -4260 REM -4270 GOSUB 100 -4280 HO=3:VE=2:GOSUB 110:PRINT NA$;"," -4290 PRINT :PRINT "je moet nu (bij het volgende scherm)" -4300 PRINT "kiezen of je met gehele of gebroken" -4310 PRINT "getallen (getallen met een komma" -4320 PRINT "erin) wilt rekenen." -4330 PRINT :PRINT "Bij decimale (=gebroken) getallen" -4340 PRINT "worden de antwoorden zonodig afgerond" -4350 PRINT "op 2 of 4 cijfers achter de komma," -4360 PRINT "e.e.a.afhankelijk van jouw keuze." -4370 PRINT :PRINT "In getallen wordt een komma " -4380 PRINT "weergegeven als een punt-.-" -4390 GOSUB 5120:REM Volgende scherm' -4400 HO=5:VE=2:GOSUB 110:PRINT "GETALSOORT" -4410 HO=2:VE=4:GOSUB 110:PRINT "-1-Alleen gehele getallen." -4420 HO=2:VE=6:GOSUB 110 -4430 PRINT "-2-Alleen antwoord decimaal" -4440 PRINT " max. 2 decimalen." -4450 HO=2:VE=10:GOSUB 110 -4460 PRINT "-3-Alleen antwoord decimaal" -4470 PRINT " max. 4 decimalen." -4480 HO=2:VE=14:GOSUB 110 -4490 PRINT "-4-Alle getallen decimaal" -4500 PRINT " max. 2 decimalen." -4510 HO=2:VE=17:GOSUB 110 -4520 PRINT "-5-Alle getallen decimaal" -4530 PRINT " max. 4 decimalen." -4540 HO=2:VE=22:GOSUB 110:PRINT NA$;",wat kies je?" -4550 GOSUB 210:G$=IN$ -4560 IF G$="S" THEN 6410 -4570 IF G$="s" THEN 6410 -4580 IF G$="1" THEN H=4:GOSUB 9620:GH=1:GW=1:GOTO 4640 -4590 IF G$="2" THEN H=6:GOSUB 9620:GH=1:GW=100:GOTO 4640 -4600 IF G$="3" THEN H=10:GOSUB 9620:GH=1:GW=10000:GOTO 4640 -4610 IF G$="4" THEN H=14:GOSUB 9620:GH=100:GW=100:GOTO 4640 -4620 IF G$="5" THEN H=17:GOSUB 9620:GH=10000:GW=10000:GOTO 4640 -4630 GOTO 4550 +4260 REM +4270 GOSUB100 +4280 HO=3:VE=2:GOSUB110:PRINTNA$;"," +4290 PRINT:PRINT"je moet nu (bij het volgende scherm)" +4300 PRINT"kiezen of je met gehele of gebroken" +4310 PRINT"getallen (getallen met een komma" +4320 PRINT"erin) wilt rekenen." +4330 PRINT:PRINT"Bij decimale (=gebroken) getallen" +4340 PRINT"worden de antwoorden zonodig afgerond" +4350 PRINT"op 2 of 4 cijfers achter de komma," +4360 PRINT"e.e.a.afhankelijk van jouw keuze." +4370 PRINT:PRINT"In getallen wordt een komma " +4380 PRINT"weergegeven als een punt-.-" +4390 GOSUB5120:REMVolgende scherm' +4400 HO=5:VE=2:GOSUB110:PRINT"GETALSOORT" +4410 HO=2:VE=4:GOSUB110:PRINT"-1-Alleen gehele getallen." +4420 HO=2:VE=6:GOSUB110 +4430 PRINT"-2-Alleen antwoord decimaal" +4440 PRINT" max. 2 decimalen." +4450 HO=2:VE=10:GOSUB110 +4460 PRINT"-3-Alleen antwoord decimaal" +4470 PRINT" max. 4 decimalen." +4480 HO=2:VE=14:GOSUB110 +4490 PRINT"-4-Alle getallen decimaal" +4500 PRINT" max. 2 decimalen." +4510 HO=2:VE=17:GOSUB110 +4520 PRINT"-5-Alle getallen decimaal" +4530 PRINT" max. 4 decimalen." +4540 HO=2:VE=22:GOSUB110:PRINTNA$;",wat kies je?" +4550 GOSUB210:G$=IN$ +4560 IFG$="S" THEN6410 +4570 IFG$="s" THEN6410 +4580 IFG$="1" THENH=4:GOSUB9620:GH=1:GW=1:GOTO4640 +4590 IFG$="2" THENH=6:GOSUB9620:GH=1:GW=100:GOTO4640 +4600 IFG$="3" THENH=10:GOSUB9620:GH=1:GW=10000:GOTO4640 +4610 IFG$="4" THENH=14:GOSUB9620:GH=100:GW=100:GOTO4640 +4620 IFG$="5" THENH=17:GOSUB9620:GH=10000:GW=10000:GOTO4640 +4630 GOTO4550 4640 G=VAL(G$) 4650 RETURN -4660 REM +4660 REM 4670 REM Getallen genereren -4680 REM -4690 GOSUB 100:GA=0 -4700 HO=1:VE=10:GOSUB 110:PRINT "EVEN GEDULD ";NA$;"," -4710 HO=1:VE=12:GOSUB 110:PRINT "ik moet even getallen" -4720 HO=1:VE=14:GOSUB 110:PRINT "bedenken." -4730 FOR I=1 TO 10:GOTO 4770 -4740 GA=GA-1:GOTO 4770 -4750 GA=GA-2:GOTO 4770 +4680 REM +4690 GOSUB100:GA=0 +4700 HO=1:VE=10:GOSUB110:PRINT"EVEN GEDULD ";NA$;"," +4710 HO=1:VE=12:GOSUB110:PRINT"ik moet even getallen" +4720 HO=1:VE=14:GOSUB110:PRINT"bedenken." +4730 FORI=1 TO10:GOTO4770 +4740 GA=GA-1:GOTO4770 +4750 GA=GA-2:GOTO4770 4760 GA=GA-3 4770 XT=0:YT=0:ZT=0 -4780 FOR J=1 TO I*I:NEXT J -4790 GOSUB 260 +4780 FORJ=1 TOI*I:NEXTJ +4790 GOSUB260 4800 W(I)=(INT(RV*MH*GH+.5))/GH -4810 IF W(I)2 THEN 4850 -4840 GOTO 4860 -4850 IF W(I)=W(I-2) THEN 4790 +4810 IFW(I)2 THEN4850 +4840 GOTO4860 +4850 IFW(I)=W(I-2) THEN4790 4860 GA=GA+1 -4870 HO=1:VE=20:GOSUB 110:PRINT "Ik heb er al:";GA -4880 FOR J=1 TO 50:NEXT J -4890 IF K=4 THEN 5010 -4900 GOSUB 260 +4870 HO=1:VE=20:GOSUB110:PRINT"Ik heb er al:";GA +4880 FORJ=1 TO50:NEXTJ +4890 IFK=4 THEN5010 +4900 GOSUB260 4910 X(I)=(INT(RV*MM*GH+.5))/GH 4920 X(I)=INT(X(I)+.5) -4930 IF X(I)2 THEN 4970 -4960 GOTO 4980 -4970 IF X(I)=X(I-2) THEN 4900 +4930 IFX(I)2 THEN4970 +4960 GOTO4980 +4970 IFX(I)=X(I-2) THEN4900 4980 GA=GA+1 -4990 HO=1:VE=20:GOSUB 110:PRINT "Ik heb er al:";GA -5000 FOR J=1 TO 50:NEXT J -5010 NEXT I -5020 GOSUB 100 -5030 HO=1:VE=20:GOSUB 110:PRINT "Zo,ik heb ze allemaal!" -5040 FOR J=1 TO 1000:NEXT J +4990 HO=1:VE=20:GOSUB110:PRINT"Ik heb er al:";GA +5000 FORJ=1 TO50:NEXTJ +5010 NEXTI +5020 GOSUB100 +5030 HO=1:VE=20:GOSUB110:PRINT"Zo,ik heb ze allemaal!" +5040 FORJ=1 TO1000:NEXTJ 5050 RETURN -5060 REM +5060 REM 5070 REM Vraag bij opgaven -5080 REM -5090 HO=3:VE=3:GOSUB 110:PRINT NA$;"," -5100 HO=1:VE=5:GOSUB 110:PRINT "kun je beantwoorden:" +5080 REM +5090 HO=3:VE=3:GOSUB110:PRINTNA$;"," +5100 HO=1:VE=5:GOSUB110:PRINT"kun je beantwoorden:" 5110 RETURN -5120 REM +5120 REM 5130 REM Volgende scherm -5140 REM -5150 HO=5:VE=21:GOSUB 110:PRINT "Druk op een knop." -5160 GOSUB 210:A$=IN$ -5170 IF A$="S" THEN 6410 -5180 IF A$="s" THEN 6410 -5190 GOSUB 100 +5140 REM +5150 HO=5:VE=21:GOSUB110:PRINT"Druk op een knop." +5160 GOSUB210:A$=IN$ +5170 IFA$="S" THEN6410 +5180 IFA$="s" THEN6410 +5190 GOSUB100 5200 RETURN -5210 REM +5210 REM 5220 REM Controle antwoord -5230 REM -5240 IF R$="2" THEN 5260 -5250 GOTO 5270 -5260 IF RB<>RA THEN 5280 -5270 IF B=AW THEN 5520 -5280 GOSUB 5650:REM Uitspraken bij fout' -5290 GOSUB 6090:REM Geluid fout' -5300 HO=1:VE=12:GOSUB 110:PRINT C$ +5230 REM +5240 IFR$="2" THEN5260 +5250 GOTO5270 +5260 IFRB<>RA THEN5280 +5270 IFB=AW THEN5520 +5280 GOSUB5650:REMUitspraken bij fout' +5290 GOSUB6090:REMGeluid fout' +5300 HO=1:VE=12:GOSUB110:PRINTC$ 5310 RB$="0":B$="0" -5320 HO=1:VE=14:GOSUB 110:PRINT "Wat is het goede antwoord?" -5330 IF R$="2" THEN HO=6:VE=17:GOSUB 110:PRINT "Rest" -5340 HO=1:VE=16:GOSUB 110:PRINT "2e poging";:INPUT B$ -5350 IF B$="S" THEN 6410 -5360 IF B$="s" THEN 6410 -5370 HO=1:VE=12:GOSUB 110:PRINT " " -5380 HO=1:VE=14:GOSUB 110:PRINT " " +5320 HO=1:VE=14:GOSUB110:PRINT"Wat is het goede antwoord?" +5330 IFR$="2" THENHO=6:VE=17:GOSUB110:PRINT"Rest" +5340 HO=1:VE=16:GOSUB110:PRINT"2e poging";:INPUTB$ +5350 IFB$="S" THEN6410 +5360 IFB$="s" THEN6410 +5370 HO=1:VE=12:GOSUB110:PRINT" " +5380 HO=1:VE=14:GOSUB110:PRINT" " 5390 B=(INT((VAL(B$)+.5/GW)*GW))/GW -5400 IF R$<>"2" THEN 5460 -5410 HO=10:VE=17:GOSUB 110:INPUT RB$ -5420 IF RB$="S" THEN 6410 -5430 IF RB$="s" THEN 6410 +5400 IFR$<>"2" THEN5460 +5410 HO=10:VE=17:GOSUB110:INPUTRB$ +5420 IFRB$="S" THEN6410 +5430 IFRB$="s" THEN6410 5440 RB=VAL(RB$) -5450 IF (RB<>RA) THEN 5470 -5460 IF B=AW THEN 5550 -5470 GOSUB 6090:REM Geluid fout' -5480 HO=1:VE=18:GOSUB 110:PRINT "Wat jammer,het goede" -5490 HO=1:VE=20:GOSUB 110:PRINT "antwoord is:";AW; -5500 IF R$="2" THEN PRINT " rest:";RA -5510 GOTO 5600 -5520 GOSUB 5820:REM Uitspraken bij goed' -5530 GOSUB 6040:REM Geluid goed' -5540 N=N+10:HO=1:VE=18:GOSUB 110:PRINT D$:GOTO 5590 -5550 GOSUB 6000:REM Uitspraken bij 2e poging goed' -5560 GOSUB 6040:REM Geluid goed' +5450 IF(RB<>RA) THEN5470 +5460 IFB=AW THEN5550 +5470 GOSUB6090:REMGeluid fout' +5480 HO=1:VE=18:GOSUB110:PRINT"Wat jammer,het goede" +5490 HO=1:VE=20:GOSUB110:PRINT"antwoord is:";AW; +5500 IFR$="2" THENPRINT" rest:";RA +5510 GOTO5600 +5520 GOSUB5820:REMUitspraken bij goed' +5530 GOSUB6040:REMGeluid goed' +5540 N=N+10:HO=1:VE=18:GOSUB110:PRINTD$:GOTO5590 +5550 GOSUB6000:REMUitspraken bij 2e poging goed' +5560 GOSUB6040:REMGeluid goed' 5570 N=N+5 -5580 HO=1:VE=18:GOSUB 110:PRINT E$ -5590 HO=1:VE=20:GOSUB 110:PRINT "je antwoord is goed." +5580 HO=1:VE=18:GOSUB110:PRINTE$ +5590 HO=1:VE=20:GOSUB110:PRINT"je antwoord is goed." 5600 WR=(INT(N/I*10))/10 -5610 HO=1:VE=22:GOSUB 110:PRINT "OPGAVEN:";I -5620 HO=16:VE=22:GOSUB 110:PRINT "SCORE :";WR -5630 FOR J=1 TO 2000:NEXT J +5610 HO=1:VE=22:GOSUB110:PRINT"OPGAVEN:";I +5620 HO=16:VE=22:GOSUB110:PRINT"SCORE :";WR +5630 FORJ=1 TO2000:NEXTJ 5640 RETURN -5650 REM +5650 REM 5660 REM Uitspraken bij fout -5670 REM -5680 GOSUB 260 +5670 REM +5680 GOSUB260 5690 C=INT(RV*11) -5700 IF C=0 THEN C$="nee toch" -5710 IF C=1 THEN C$="je weet wel beter" -5720 IF C=2 THEN C$="hoe kom je er bij" -5730 IF C=3 THEN C$="hoe bedenk je het" -5740 IF C=4 THEN C$="dit is helemaal fout" -5750 IF C=5 THEN C$="dit is echt niet goed" -5760 IF C=6 THEN C$="weet je dat wel zeker" -5770 IF C=7 THEN C$="je bent een oenemeloen" -5780 IF C=8 THEN C$="ik schrik van je antwoord" -5790 IF C=9 THEN C$="dit valt me van je tegen" -5800 IF C=10 THEN C$="ik had beter van je verwacht" +5700 IFC=0 THENC$="nee toch" +5710 IFC=1 THENC$="je weet wel beter" +5720 IFC=2 THENC$="hoe kom je er bij" +5730 IFC=3 THENC$="hoe bedenk je het" +5740 IFC=4 THENC$="dit is helemaal fout" +5750 IFC=5 THENC$="dit is echt niet goed" +5760 IFC=6 THENC$="weet je dat wel zeker" +5770 IFC=7 THENC$="je bent een oenemeloen" +5780 IFC=8 THENC$="ik schrik van je antwoord" +5790 IFC=9 THENC$="dit valt me van je tegen" +5800 IFC=10 THENC$="ik had beter van je verwacht" 5810 RETURN -5820 REM +5820 REM 5830 REM Uitspraken bij goed -5840 REM -5850 GOSUB 260 +5840 REM +5850 GOSUB260 5860 D=INT(RV*12) -5870 IF D=0 THEN D$="onwijs gaaf" -5880 IF D=1 THEN D$="tof he" -5890 IF D=2 THEN D$="je doet het te gek" -5900 IF D=3 THEN D$="gaaf,je bent een kei" -5910 IF D=4 THEN D$="je bent echt steengoed" -5920 IF D=5 THEN D$="je bent een genie" -5930 IF D=6 THEN D$="heel goed,ga zo door" -5940 IF D=7 THEN D$="hoe krijg je het voor elkaar" -5950 IF D=8 THEN D$="uit de kunst" -5960 IF D=9 THEN D$="wauw!!" -5970 IF D=10 THEN D$="prima!" -5980 IF D=11 THEN D$="subliem!" +5870 IFD=0 THEND$="onwijs gaaf" +5880 IFD=1 THEND$="tof he" +5890 IFD=2 THEND$="je doet het te gek" +5900 IFD=3 THEND$="gaaf,je bent een kei" +5910 IFD=4 THEND$="je bent echt steengoed" +5920 IFD=5 THEND$="je bent een genie" +5930 IFD=6 THEND$="heel goed,ga zo door" +5940 IFD=7 THEND$="hoe krijg je het voor elkaar" +5950 IFD=8 THEND$="uit de kunst" +5960 IFD=9 THEND$="wauw!!" +5970 IFD=10 THEND$="prima!" +5980 IFD=11 THEND$="subliem!" 5990 RETURN -6000 REM +6000 REM 6010 REM Uitspraken bij 2e 6020 REM poging goed -6030 REM -6040 GOSUB 260 +6030 REM +6040 GOSUB260 6050 E=INT(RV*8) -6060 IF E=0 THEN E$="dat is beter" -6070 IF E=1 THEN E$="zo gaat ie goed" -6080 IF E=2 THEN E$="ga zo door" -6090 IF E=3 THEN E$="hou vol" -6100 IF E=4 THEN E$="prima" -6110 IF E=5 THEN E$="zo ken ik je weer" -6120 IF E=6 THEN E$="gefeliciteerd" -6130 IF E=7 THEN E$="ik ben weer tevreden" +6060 IFE=0 THENE$="dat is beter" +6070 IFE=1 THENE$="zo gaat ie goed" +6080 IFE=2 THENE$="ga zo door" +6090 IFE=3 THENE$="hou vol" +6100 IFE=4 THENE$="prima" +6110 IFE=5 THENE$="zo ken ik je weer" +6120 IFE=6 THENE$="gefeliciteerd" +6130 IFE=7 THENE$="ik ben weer tevreden" 6140 RETURN -6150 REM +6150 REM 6160 REM Advies -6170 REM -6180 HO=3:VE=3:GOSUB 110:PRINT NA$;"," -6190 HO=2:VE=5:GOSUB 110:PRINT "je score is:";WR -6200 HO=2:VE=10:GOSUB 110:PRINT "Wil je mijn advies?(j/n)" -6210 GOSUB 210:AD$=IN$ -6220 IF AD$="S" THEN 6410 -6230 IF AD$="s" THEN 6410 -6240 IF AD$="N" THEN 6390 -6250 IF AD$="n" THEN 6390 -6260 IF AD$="J" THEN 6290 -6270 IF AD$="j" THEN 6290 -6280 GOTO 6210 -6290 IF WR<5 THEN 6340 -6300 IF WR>7 THEN 6360 -6310 HO=2:VE=10:GOSUB 110:PRINT "Het gaat wel aardig,maar" -6320 PRINT " het kan nog beter.Blijf nog oefenen" -6330 PRINT " op hetzelfde niveau!":GOTO 6380 -6340 HO=2:VE=10:GOSUB 110:PRINT "Oefen nog maar eens een" -6350 PRINT " tijdje op een lager niveau!":GOTO 6380 -6360 HO=2:VE=10:GOSUB 110:PRINT "Het gaat prima,probeer " -6370 PRINT " maar eens moeilijker opgaven!" -6380 FOR J=1 TO 3000:NEXT J -6390 GOSUB 100 +6170 REM +6180 HO=3:VE=3:GOSUB110:PRINTNA$;"," +6190 HO=2:VE=5:GOSUB110:PRINT"je score is:";WR +6200 HO=2:VE=10:GOSUB110:PRINT"Wil je mijn advies?(j/n)" +6210 GOSUB210:AD$=IN$ +6220 IFAD$="S" THEN6410 +6230 IFAD$="s" THEN6410 +6240 IFAD$="N" THEN6390 +6250 IFAD$="n" THEN6390 +6260 IFAD$="J" THEN6290 +6270 IFAD$="j" THEN6290 +6280 GOTO6210 +6290 IFWR<5 THEN6340 +6300 IFWR>7 THEN6360 +6310 HO=2:VE=10:GOSUB110:PRINT"Het gaat wel aardig,maar" +6320 PRINT" het kan nog beter.Blijf nog oefenen" +6330 PRINT" op hetzelfde niveau!":GOTO6380 +6340 HO=2:VE=10:GOSUB110:PRINT"Oefen nog maar eens een" +6350 PRINT" tijdje op een lager niveau!":GOTO6380 +6360 HO=2:VE=10:GOSUB110:PRINT"Het gaat prima,probeer " +6370 PRINT" maar eens moeilijker opgaven!" +6380 FORJ=1 TO3000:NEXTJ +6390 GOSUB100 6400 RETURN -6410 REM +6410 REM 6420 REM Stoppen -6430 REM -6440 GOSUB 100 -6450 HO=3:VE=5:GOSUB 110:PRINT NA$;"," -6460 HO=1:VE=7:GOSUB 110:PRINT "weet je zeker dat je" -6470 HO=1:VE=9:GOSUB 110:PRINT "wilt stoppen? (j/n)" -6480 GOSUB 210:S$=IN$ -6490 IF S$="J" THEN 6540 -6500 IF S$="j" THEN 6540 -6510 IF S$="N" THEN 1730 -6520 IF S$="n" THEN 1730 -6530 GOTO 6480 -6540 GOSUB 100 -6550 FOR J=1 TO 7 -6560 HO=16:VE=9:GOSUB 110 -6570 PRINT "TOT" -6580 HO=15:VE=15:GOSUB 110 -6590 PRINT "ZIENS" -6600 FOR I=1 TO 250:NEXT I -6610 GOSUB 100 -6620 FOR I=1 TO 150:NEXT I -6630 NEXT J +6430 REM +6440 GOSUB100 +6450 HO=3:VE=5:GOSUB110:PRINTNA$;"," +6460 HO=1:VE=7:GOSUB110:PRINT"weet je zeker dat je" +6470 HO=1:VE=9:GOSUB110:PRINT"wilt stoppen? (j/n)" +6480 GOSUB210:S$=IN$ +6490 IFS$="J" THEN6540 +6500 IFS$="j" THEN6540 +6510 IFS$="N" THEN1730 +6520 IFS$="n" THEN1730 +6530 GOTO6480 +6540 GOSUB100 +6550 FORJ=1 TO7 +6560 HO=16:VE=9:GOSUB110 +6570 PRINT"TOT" +6580 HO=15:VE=15:GOSUB110 +6590 PRINT"ZIENS" +6600 FORI=1 TO250:NEXTI +6610 GOSUB100 +6620 FORI=1 TO150:NEXTI +6630 NEXTJ 6640 END -6650 REM +6650 REM 6660 REM Uitleg 6670 REM machtsverheffen -6680 REM -6690 GOSUB 100 -6700 HO=3:VE=2:GOSUB 110:PRINT NA$;"," -6710 HO=1:VE=4:GOSUB 110:PRINT "machtsverheffen is eigenlijk" -6720 HO=1:VE=6:GOSUB 110:PRINT "een bijzondere vorm van" -6730 HO=1:VE=8:GOSUB 110:PRINT "vermenigvuldigen." -6740 HO=1:VE=11:GOSUB 110:PRINT "Machtsverheffen betekent:" -6750 HO=1:VE=13:GOSUB 110:PRINT "vermenigvuldig het grondtal" -6760 HO=1:VE=15:GOSUB 110:PRINT "zoveel keer met zichzelf" -6770 HO=1:VE=17:GOSUB 110:PRINT "als de macht groot is." -6780 GOSUB 5120:REM Volgende scherm' -6790 HO=3:VE=2:GOSUB 110:PRINT "Voorbeeld 1 :" -6800 HO=1:VE=4:GOSUB 110:PRINT "2^4 (zeg:twee tot de vierde" -6810 HO=1:VE=6:GOSUB 110:PRINT "of twee tot de macht vier)" -6820 HO=1:VE=8:GOSUB 110:PRINT "is:2*2*2*2;het antwoord" -6830 HO=1:VE=10:GOSUB 110:PRINT "is dus:16." -6840 HO=1:VE=12:GOSUB 110:PRINT " 2 is hier het grondtal" -6850 HO=1:VE=14:GOSUB 110:PRINT " 4 is hier de macht" -6860 GOSUB 5120:REM Volgende scherm' -6870 HO=3:VE=2:GOSUB 110:PRINT "Voorbeeld 2 :" -6880 HO=1:VE=4:GOSUB 110:PRINT "5^2 (grondtal=5,macht=2)" -6890 HO=1:VE=6:GOSUB 110:PRINT "5^2=5*5=25" -6900 HO=3:VE=10:GOSUB 110:PRINT "Voorbeeld 3 :" -6910 HO=1:VE=12:GOSUB 110:PRINT "4^3 (grondtal=4,macht=3)" -6920 HO=1:VE=14:GOSUB 110:PRINT "4^3=4*4*4=64" -6930 HO=1:VE=17:GOSUB 110:PRINT "Ik zal voor de 'machten'" -6940 PRINT " alleen gehele getallen geven" -6950 HO=3:VE=21:GOSUB 110:PRINT "Uitleg nog eens (j/n)?" -6960 GOSUB 210:A$=IN$ -6970 IF A$="S" THEN 6410 -6980 IF A$="s" THEN 6410 -6990 IF A$="J" THEN 6650 -7000 IF A$="j" THEN 6650 -7010 IF A$="N" THEN RETURN -7020 IF A$="n" THEN RETURN -7030 GOTO 6960 -7040 REM +6680 REM +6690 GOSUB100 +6700 HO=3:VE=2:GOSUB110:PRINTNA$;"," +6710 HO=1:VE=4:GOSUB110:PRINT"machtsverheffen is eigenlijk" +6720 HO=1:VE=6:GOSUB110:PRINT"een bijzondere vorm van" +6730 HO=1:VE=8:GOSUB110:PRINT"vermenigvuldigen." +6740 HO=1:VE=11:GOSUB110:PRINT"Machtsverheffen betekent:" +6750 HO=1:VE=13:GOSUB110:PRINT"vermenigvuldig het grondtal" +6760 HO=1:VE=15:GOSUB110:PRINT"zoveel keer met zichzelf" +6770 HO=1:VE=17:GOSUB110:PRINT"als de macht groot is." +6780 GOSUB5120:REMVolgende scherm' +6790 HO=3:VE=2:GOSUB110:PRINT"Voorbeeld 1 :" +6800 HO=1:VE=4:GOSUB110:PRINT"2^4 (zeg:twee tot de vierde" +6810 HO=1:VE=6:GOSUB110:PRINT"of twee tot de macht vier)" +6820 HO=1:VE=8:GOSUB110:PRINT"is:2*2*2*2;het antwoord" +6830 HO=1:VE=10:GOSUB110:PRINT"is dus:16." +6840 HO=1:VE=12:GOSUB110:PRINT" 2 is hier het grondtal" +6850 HO=1:VE=14:GOSUB110:PRINT" 4 is hier de macht" +6860 GOSUB5120:REMVolgende scherm' +6870 HO=3:VE=2:GOSUB110:PRINT"Voorbeeld 2 :" +6880 HO=1:VE=4:GOSUB110:PRINT"5^2 (grondtal=5,macht=2)" +6890 HO=1:VE=6:GOSUB110:PRINT"5^2=5*5=25" +6900 HO=3:VE=10:GOSUB110:PRINT"Voorbeeld 3 :" +6910 HO=1:VE=12:GOSUB110:PRINT"4^3 (grondtal=4,macht=3)" +6920 HO=1:VE=14:GOSUB110:PRINT"4^3=4*4*4=64" +6930 HO=1:VE=17:GOSUB110:PRINT"Ik zal voor de 'machten'" +6940 PRINT" alleen gehele getallen geven" +6950 HO=3:VE=21:GOSUB110:PRINT"Uitleg nog eens (j/n)?" +6960 GOSUB210:A$=IN$ +6970 IFA$="S" THEN6410 +6980 IFA$="s" THEN6410 +6990 IFA$="J" THEN6650 +7000 IFA$="j" THEN6650 +7010 IFA$="N" THENRETURN +7020 IFA$="n" THENRETURN +7030 GOTO6960 +7040 REM 7050 REM Grootte van de macht 7060 REM machtsverheffen -7070 GOSUB 100:MM$="0" -7080 HO=3:VE=2:GOSUB 110:PRINT NA$;"," -7090 HO=2:VE=5:GOSUB 110:PRINT "je moet nu de grootte van" -7100 PRINT " de macht kiezen(m.a.w.:hoe vaak" -7110 PRINT " wil je het grondgetal met" -7120 PRINT " zichzelf vermenigvuldigen)." -7130 HO=2:VE=11:GOSUB 110:PRINT "Bedenk bij je keuze dat" -7140 PRINT " b.v. 5^4 (vijf tot de macht vier," -7150 PRINT " dit is 5*5*5*5) al 625 is!!" -7160 GOSUB 5120:REM Volgende scherm' -7170 HO=3:VE=2:GOSUB 110:PRINT "Grootte van de macht" -7180 HO=2:VE=4:GOSUB 110:PRINT "-1-Machten t/m 3" -7190 HO=2:VE=6:GOSUB 110:PRINT "-2-Machten t/m 5" -7200 HO=2:VE=8:GOSUB 110:PRINT "-3-Machten t/m 8" -7210 HO=2:VE=10:GOSUB 110:PRINT "-4-Machten t/m 10" -7220 HO=2:VE=12:GOSUB 110:PRINT "-5-Machten t/m 15" -7230 HO=2:VE=14:GOSUB 110:PRINT "-6-Machten t/m 20" -7240 HO=2:VE=16:GOSUB 110:PRINT "-7-Machten t/m 25" -7250 HO=3:VE=22:GOSUB 110:PRINT NA$;",wat kies je?" -7260 GOSUB 210:MM$=IN$ -7270 IF MM$="S" THEN 6410 -7280 IF MM$="s" THEN 6410 -7290 IF MM$="1" THEN H=4:GOSUB 9620:MM=3:GOTO 7370 -7300 IF MM$="2" THEN H=6:GOSUB 9620:MM=5:GOTO 7370 -7310 IF MM$="3" THEN H=8:GOSUB 9620:MM=8:GOTO 7370 -7320 IF MM$="4" THEN H=10:GOSUB 9620:MM=10:GOTO 7370 -7330 IF MM$="5" THEN H=12:GOSUB 9620:MM=15:GOTO 7370 -7340 IF MM$="6" THEN H=14:GOSUB 9620:MM=20:GOTO 7370 -7350 IF MM$="7" THEN H=16:GOSUB 9620:MM=25:GOTO 7370 -7360 GOTO 7260 +7070 GOSUB100:MM$="0" +7080 HO=3:VE=2:GOSUB110:PRINTNA$;"," +7090 HO=2:VE=5:GOSUB110:PRINT"je moet nu de grootte van" +7100 PRINT" de macht kiezen(m.a.w.:hoe vaak" +7110 PRINT" wil je het grondgetal met" +7120 PRINT" zichzelf vermenigvuldigen)." +7130 HO=2:VE=11:GOSUB110:PRINT"Bedenk bij je keuze dat" +7140 PRINT" b.v. 5^4 (vijf tot de macht vier," +7150 PRINT" dit is 5*5*5*5) al 625 is!!" +7160 GOSUB5120:REMVolgende scherm' +7170 HO=3:VE=2:GOSUB110:PRINT"Grootte van de macht" +7180 HO=2:VE=4:GOSUB110:PRINT"-1-Machten t/m 3" +7190 HO=2:VE=6:GOSUB110:PRINT"-2-Machten t/m 5" +7200 HO=2:VE=8:GOSUB110:PRINT"-3-Machten t/m 8" +7210 HO=2:VE=10:GOSUB110:PRINT"-4-Machten t/m 10" +7220 HO=2:VE=12:GOSUB110:PRINT"-5-Machten t/m 15" +7230 HO=2:VE=14:GOSUB110:PRINT"-6-Machten t/m 20" +7240 HO=2:VE=16:GOSUB110:PRINT"-7-Machten t/m 25" +7250 HO=3:VE=22:GOSUB110:PRINTNA$;",wat kies je?" +7260 GOSUB210:MM$=IN$ +7270 IFMM$="S" THEN6410 +7280 IFMM$="s" THEN6410 +7290 IFMM$="1" THENH=4:GOSUB9620:MM=3:GOTO7370 +7300 IFMM$="2" THENH=6:GOSUB9620:MM=5:GOTO7370 +7310 IFMM$="3" THENH=8:GOSUB9620:MM=8:GOTO7370 +7320 IFMM$="4" THENH=10:GOSUB9620:MM=10:GOTO7370 +7330 IFMM$="5" THENH=12:GOSUB9620:MM=15:GOTO7370 +7340 IFMM$="6" THENH=14:GOSUB9620:MM=20:GOTO7370 +7350 IFMM$="7" THENH=16:GOSUB9620:MM=25:GOTO7370 +7360 GOTO7260 7370 RETURN -7380 REM +7380 REM 7390 REM Uitleg machtsverheffen -7400 REM -7410 GOSUB 100 -7420 HO=3:VE=2:GOSUB 110:PRINT NA$;"," -7430 HO=1:VE=4:GOSUB 110:PRINT "worteltrekken is het" -7440 HO=1:VE=6:GOSUB 110:PRINT "tegenovergestelde van" -7450 HO=1:VE=8:GOSUB 110:PRINT "machtsverheffen." -7460 HO=1:VE=11:GOSUB 110:PRINT "Worteltrekken wordt" -7470 HO=1:VE=13:GOSUB 110:PRINT "aangegeven door -V- hetgeen" -7480 HO=1:VE=15:GOSUB 110:PRINT "zonder verdere aanduiding" -7490 HO=1:VE=17:GOSUB 110:PRINT "de 2e-machtswortel betekent" -7500 GOSUB 5120:REM Volgende scherm' -7510 HO=1:VE=2:GOSUB 110:PRINT "De andere machten worden als" -7520 PRINT " volgt aangegeven:" -7530 HO=26:VE=5:GOSUB 110:PRINT "3" -7540 HO=1:VE=6:GOSUB 110:PRINT "de 3e-machts wortel als -V-" -7550 HO=26:VE=8:GOSUB 110:PRINT "4" -7560 HO=1:VE=9:GOSUB 110:PRINT "de 4e-machts wortel als -V-" -7570 HO=26:VE=11:GOSUB 110:PRINT "5" -7580 HO=1:VE=12:GOSUB 110:PRINT "de 5e machts wortel als -V-" -7590 HO=1:VE=15:GOSUB 110:PRINT "enz,enz,enz." -7600 GOSUB 5120:REM Volgende scherm' -7610 HO=1:VE=2:GOSUB 110:PRINT "We zullen nu gaan kijken" -7620 HO=1:VE=4:GOSUB 110:PRINT "naar de 2e-machts wortel." -7630 HO=1:VE=7:GOSUB 110:PRINT "Als gevraagd wordt de wortel" -7640 HO=1:VE=9:GOSUB 110:PRINT "uit een getal te trekken" -7650 HO=1:VE=11:GOSUB 110:PRINT "b.v.V25(zeg: wortel uit 25)" -7660 HO=1:VE=13:GOSUB 110:PRINT "dan moet een getal gezocht" -7670 HO=1:VE=15:GOSUB 110:PRINT "worden dat,met zichzelf" -7680 HO=1:VE=17:GOSUB 110:PRINT "vermenigvuldigt,25 oplevert" -7690 GOSUB 5120:REM Volgende scherm' -7700 HO=1:VE=2:GOSUB 110:PRINT "Dus:V25=5 want 5*5=25" -7710 HO=1:VE=4:GOSUB 110:PRINT "Evenzo is V4=2 en V49=7 enz." -7720 HO=1:VE=7:GOSUB 110:PRINT "Bij deze kleine getallen" -7730 HO=1:VE=9:GOSUB 110:PRINT "gaat het vinden van het" -7740 HO=1:VE=11:GOSUB 110:PRINT "antwoord vrij eenvoudig." -7750 HO=1:VE=13:GOSUB 110:PRINT "Meestal gaat het minder" -7760 HO=1:VE=15:GOSUB 110:PRINT "eenvoudig zoals b.v.V56 of" -7770 HO=1:VE=17:GOSUB 110:PRINT "V127 of V625 enz." -7780 GOSUB 5120:REM Volgende scherm' -7790 HO=1:VE=2:GOSUB 110:PRINT "Als voorbeeld gaan we V57" -7800 HO=1:VE=4:GOSUB 110:PRINT "bepalen." -7810 HO=1:VE=7:GOSUB 110:PRINT "Dit gebeurt in een aantal" -7820 HO=1:VE=9:GOSUB 110:PRINT "stappen." -7830 HO=1:VE=11:GOSUB 110:PRINT "Het-op papier-uitrekenen" -7840 HO=1:VE=13:GOSUB 110:PRINT "van de wortel uit een getal" -7850 HO=1:VE=15:GOSUB 110:PRINT "lijkt op een staartdeling." -7860 GOSUB 5120:REM Volgende scherm' -7870 HO=1:VE=2:GOSUB 110:PRINT "Stap 1:Verdeel 57 vanuit de" -7880 HO=1:VE=4:GOSUB 110:PRINT "komma (=. op scherm) naar" -7890 HO=1:VE=6:GOSUB 110:PRINT "links en rechts in groepjes" -7900 HO=1:VE=8:GOSUB 110:PRINT "van 2 cijfers." -7910 HO=1:VE=11:GOSUB 110:PRINT "Antw:57 kan ook geschreven" -7920 HO=1:VE=13:GOSUB 110:PRINT "worden als 57.00000000" -7930 HO=1:VE=15:GOSUB 110:PRINT "dus verdeling in groepjes" -7940 HO=1:VE=17:GOSUB 110:PRINT "geeft:57 . 00 00 00 00" -7950 GOSUB 5120:REM Volgende scherm' -7960 HO=10:VE=2:GOSUB 110:PRINT "V57.000000=?" -7970 HO=7:VE=3:GOSUB 110:PRINT "a*a=__" -7980 HO=1:VE=17:GOSUB 110:PRINT "Stap 2:Vul voor a een getal" -7990 HO=1:VE=18:GOSUB 110:PRINT "in zodat a*a kleiner is" -8000 HO=1:VE=19:GOSUB 110:PRINT "dan 57." -8010 HO=1:VE=20:GOSUB 110:PRINT "Antw:a=7 (7*7=49)" -8020 GOSUB 9740:REM Volgende stap' -8030 HO=21:VE=2:GOSUB 110:PRINT "7" -8040 HO=7:VE=3:GOSUB 110:PRINT "7*7=49" -8050 HO=11:VE=4:GOSUB 110:PRINT "____ -" -8060 HO=12:VE=5:GOSUB 110:PRINT "8" -8070 HO=1:VE=17:GOSUB 110:PRINT "Stap 3:Haal de volgende 2 " -8080 HO=1:VE=18:GOSUB 110:PRINT "cijfers aan;deze staan " -8090 HO=1:VE=19:GOSUB 110:PRINT "achter de komma dus plaats" -8100 HO=1:VE=20:GOSUB 110:PRINT "een komma in het antwoord." -8110 FOR J=1 TO 1000:NEXT J -8120 HO=14:VE=5:GOSUB 110:PRINT "00" -8130 GOSUB 9740:REM Volgende stap' -8140 HO=22:VE=2:GOSUB 110:PRINT "." -8150 HO=6:VE=6:GOSUB 110:PRINT "da*a= _ __" -8160 HO=1:VE=17:GOSUB 110:PRINT "Stap 4:Vul voor d een getal" -8170 HO=1:VE=18:GOSUB 110:PRINT "in ter grootte van 2x het " -8180 HO=1:VE=19:GOSUB 110:PRINT "antwoord tot nu toe " -8190 HO=1:VE=20:GOSUB 110:PRINT "Antw:d=14 (2*7) " -8200 GOSUB 9740:REM Volgende stap' -8210 HO=5:VE=6:GOSUB 110:PRINT "14a*a= _ __" -8220 HO=1:VE=17:GOSUB 110:PRINT "Stap 5:Vul voor a een getal" -8230 HO=1:VE=18:GOSUB 110:PRINT "in zodat 14a*a kleiner is " -8240 HO=1:VE=19:GOSUB 110:PRINT "dan 800 " -8250 HO=1:VE=20:GOSUB 110:PRINT "Antw:a=5 (145*5=725) " -8260 GOSUB 9740:REM Volgende stap' -8270 HO=23:VE=2:GOSUB 110:PRINT "5" -8280 HO=5:VE=6:GOSUB 110:PRINT "145*5= 7 25" -8290 HO=12:VE=7:GOSUB 110:PRINT "________ -" -8300 HO=14:VE=8:GOSUB 110:PRINT "75" -8310 HO=1:VE=17:GOSUB 110:PRINT " " -8320 HO=1:VE=18:GOSUB 110:PRINT "Stap 6:Haal de volgende 2" -8330 HO=1:VE=19:GOSUB 110:PRINT "cijfers aan" -8340 HO=1:VE=20:GOSUB 110:PRINT " " -8350 FOR J=1 TO 1000:NEXT J -8360 HO=16:VE=8:GOSUB 110:PRINT "00" -8370 GOSUB 9740:REM Volgende stap' -8380 HO=6:VE=9:GOSUB 110:PRINT "da*a= ____" -8390 HO=1:VE=17:GOSUB 110:PRINT "Stap 7:Vul voor d weer een" -8400 HO=1:VE=18:GOSUB 110:PRINT "getal in ter grootte van " -8410 HO=1:VE=19:GOSUB 110:PRINT "2x het antwoord tot nu toe" -8420 HO=1:VE=20:GOSUB 110:PRINT "(de komma telt hier niet)." -8430 HO=1:VE=21:GOSUB 110:PRINT "Antw:d=150 (2*75) " -8440 GOSUB 9740:REM Volgende stap' -8450 HO=4:VE=9:GOSUB 110:PRINT "150a*a= ____" -8460 HO=1:VE=17:GOSUB 110:PRINT "Stap 8:Vul voor a een getal" -8470 HO=1:VE=18:GOSUB 110:PRINT "in zodat 150a*a kleiner is" -8480 HO=1:VE=19:GOSUB 110:PRINT "dan 7500 " -8490 HO=1:VE=20:GOSUB 110:PRINT "Antw:a=4 (1504*4=6016) " -8500 HO=1:VE=21:GOSUB 110:PRINT " " -8510 GOSUB 9740:REM Volgende stap' -8520 HO=24:VE=2:GOSUB 110:PRINT "4" -8530 HO=4:VE=9:GOSUB 110:PRINT "1504*4= 6016" -8540 HO=14:VE=10:GOSUB 110:PRINT "________ -" -8550 HO=14:VE=11:GOSUB 110:PRINT "1484" -8560 HO=1:VE=17:GOSUB 110:PRINT " " -8570 HO=1:VE=18:GOSUB 110:PRINT "Stap 9:Haal de volgende 2 " -8580 HO=1:VE=19:GOSUB 110:PRINT "cijfers aan." -8590 HO=1:VE=20:GOSUB 110:PRINT " " -8600 FOR J=1 TO 1000:NEXT J -8610 HO=18:VE=11:GOSUB 110:PRINT "00" -8620 GOSUB 9740:REM Volgende stap' -8630 HO=6:VE=12:GOSUB 110:PRINT "da*a= ______" -8640 HO=1:VE=17:GOSUB 110:PRINT "Stap 10:Vul voor d een " -8650 HO=1:VE=18:GOSUB 110:PRINT "getal in ter grootte van " -8660 HO=1:VE=19:GOSUB 110:PRINT "2x het antwoord tot nu toe." -8670 HO=1:VE=20:GOSUB 110:PRINT "Antw:d=1508 (2*754)" -8680 GOSUB 9740:REM Volgende stap' -8690 HO=3:VE=12:GOSUB 110:PRINT "1508a*a= ______" -8700 HO=1:VE=17:GOSUB 110:PRINT "Stap 11:Vul voor a een getal" -8710 HO=1:VE=18:GOSUB 110:PRINT "in zodat 1508a*a kleiner is " -8720 HO=1:VE=19:GOSUB 110:PRINT "dan 148400 " -8730 HO=1:VE=20:GOSUB 110:PRINT "Antw:a=9 (15089*9=135801) " -8740 GOSUB 9740:REM Volgende stap' -8750 HO=25:VE=2:GOSUB 110:PRINT "9" -8760 HO=3:VE=12:GOSUB 110:PRINT "15089*9= 135801" -8770 HO=14:VE=13:GOSUB 110:PRINT "____________ -" -8780 HO=15:VE=14:GOSUB 110:PRINT "12599" -8790 HO=1:VE=17:GOSUB 110:PRINT "Op deze wijze kun je zo lang" -8800 HO=1:VE=18:GOSUB 110:PRINT "doorgaan tot de rest 0 wordt" -8810 HO=1:VE=19:GOSUB 110:PRINT "Als je een antwoord met 2 " -8820 HO=1:VE=20:GOSUB 110:PRINT "cijfers na de komma wilt " -8830 HO=1:VE=21:GOSUB 110:PRINT "hoef je niet door te gaan. " -8840 GOSUB 9740:REM Volgende stap' -8850 HO=1:VE=17:GOSUB 110:PRINT "Na afronding is het " -8860 HO=1:VE=18:GOSUB 110:PRINT "antwoord dan: 7.55 " -8870 HO=1:VE=19:GOSUB 110:PRINT "Dus V57=7.55 " -8880 HO=1:VE=20:GOSUB 110:PRINT " " -8890 PRINT " " -8900 GOSUB 5120:REM Volgende scherm' -8910 HO=1:VE=3:GOSUB 110:PRINT "We zullen een 2e voorbeeld" -8920 HO=1:VE=5:GOSUB 110:PRINT "bekijken.Dit voorbeeld laat," -8930 HO=1:VE=7:GOSUB 110:PRINT "zonder toelichting,stap voor" -8940 HO=1:VE=9:GOSUB 110:PRINT "stap de bewerkingen zien." -8950 GOSUB 5120:REM Volgende scherm' -8960 HO=10:VE=2:GOSUB 110:PRINT "V75076=?" -8970 FOR J=1 TO 1000:NEXT J -8980 HO=7:VE=3:GOSUB 110:PRINT "_*_=_" -8990 FOR J=1 TO 1000:NEXT J -9000 HO=17:VE=2:GOSUB 110:PRINT "2" -9010 HO=7:VE=3:GOSUB 110:PRINT "2*2=4" -9020 HO=11:VE=4:GOSUB 110:PRINT "__ -" -9030 FOR J=1 TO 1000:NEXT J -9040 HO=11:VE=5:GOSUB 110:PRINT "3" -9050 FOR J=1 TO 1000:NEXT J -9060 HO=12:VE=5:GOSUB 110:PRINT "50" -9070 FOR J=1 TO 1000:NEXT J -9080 HO=6:VE=6:GOSUB 110:PRINT "4_*_=___" -9090 FOR J=1 TO 1000:NEXT J -9100 HO=18:VE=2:GOSUB 110:PRINT "7" -9110 HO=6:VE=6:GOSUB 110:PRINT "47*7=329" -9120 HO=11:VE=7:GOSUB 110:PRINT "______ -" -9130 FOR J=1 TO 1000:NEXT J -9140 HO=12:VE=8:GOSUB 110:PRINT "21" -9150 FOR J=1 TO 1000:NEXT J -9160 HO=14:VE=8:GOSUB 110:PRINT "76" -9170 FOR J=1 TO 1000:NEXT J -9180 HO=5:VE=9:GOSUB 110:PRINT "54_*_= ____" -9190 FOR J=1 TO 1000:NEXT J -9200 HO=19:VE=2:GOSUB 110:PRINT "4" -9210 HO=5:VE=9:GOSUB 110:PRINT "544*4= 2176" -9220 HO=12:VE=10:GOSUB 110:PRINT "________ -" -9230 HO=15:VE=11:GOSUB 110:PRINT "0" -9240 FOR J=1 TO 1000:NEXT J -9250 HO=1:VE=15:GOSUB 110:PRINT "De wortel uit 75076 is: 274" -9260 GOSUB 5120:REM Volgende scherm' -9270 HO=1:VE=2:GOSUB 110:PRINT "Tot nu toe hebben we" -9280 PRINT " alleen naar de 2e-machts wortel" -9290 PRINT " gekeken." -9300 HO=1:VE=6:GOSUB 110:PRINT "Ook hogere-machts wortels" -9310 PRINT " kunnen -op papier- berekend worden." -9320 PRINT " Tenzij het om kleine getallen gaat" -9330 PRINT " gaat kunnen deze veel sneller op" -9340 PRINT " een andere manier (b.v.met" -9350 PRINT " logaritmen) berekend worden." -9360 HO=1:VE=13:GOSUB 110:PRINT "Daarop zullen we hier" -9370 PRINT " niet verder ingaan." -9380 HO=1:VE=16:GOSUB 110:PRINT "Als je dadelijk kiest voor" -9390 PRINT " het rekenen met hogere machten" -9400 PRINT " dan 2 zal ik er voor zorgen dat" -9410 PRINT " het antwoord een geheel getal is." -9420 HO=3:VE=22:GOSUB 110:PRINT "Uitleg nog eens (j/n)?" -9430 GOSUB 210:A$=IN$ -9440 IF A$="S" THEN 6410 -9450 IF A$="s" THEN 6410 -9460 IF A$="J" THEN 7380 -9470 IF A$="j" THEN 7380 -9480 IF A$="N" THEN RETURN -9490 IF A$="n" THEN RETURN -9500 GOTO 9430 -9510 REM +7400 REM +7410 GOSUB100 +7420 HO=3:VE=2:GOSUB110:PRINTNA$;"," +7430 HO=1:VE=4:GOSUB110:PRINT"worteltrekken is het" +7440 HO=1:VE=6:GOSUB110:PRINT"tegenovergestelde van" +7450 HO=1:VE=8:GOSUB110:PRINT"machtsverheffen." +7460 HO=1:VE=11:GOSUB110:PRINT"Worteltrekken wordt" +7470 HO=1:VE=13:GOSUB110:PRINT"aangegeven door -V- hetgeen" +7480 HO=1:VE=15:GOSUB110:PRINT"zonder verdere aanduiding" +7490 HO=1:VE=17:GOSUB110:PRINT"de 2e-machtswortel betekent" +7500 GOSUB5120:REMVolgende scherm' +7510 HO=1:VE=2:GOSUB110:PRINT"De andere machten worden als" +7520 PRINT" volgt aangegeven:" +7530 HO=26:VE=5:GOSUB110:PRINT"3" +7540 HO=1:VE=6:GOSUB110:PRINT"de 3e-machts wortel als -V-" +7550 HO=26:VE=8:GOSUB110:PRINT"4" +7560 HO=1:VE=9:GOSUB110:PRINT"de 4e-machts wortel als -V-" +7570 HO=26:VE=11:GOSUB110:PRINT"5" +7580 HO=1:VE=12:GOSUB110:PRINT"de 5e machts wortel als -V-" +7590 HO=1:VE=15:GOSUB110:PRINT"enz,enz,enz." +7600 GOSUB5120:REMVolgende scherm' +7610 HO=1:VE=2:GOSUB110:PRINT"We zullen nu gaan kijken" +7620 HO=1:VE=4:GOSUB110:PRINT"naar de 2e-machts wortel." +7630 HO=1:VE=7:GOSUB110:PRINT"Als gevraagd wordt de wortel" +7640 HO=1:VE=9:GOSUB110:PRINT"uit een getal te trekken" +7650 HO=1:VE=11:GOSUB110:PRINT"b.v.V25(zeg: wortel uit 25)" +7660 HO=1:VE=13:GOSUB110:PRINT"dan moet een getal gezocht" +7670 HO=1:VE=15:GOSUB110:PRINT"worden dat,met zichzelf" +7680 HO=1:VE=17:GOSUB110:PRINT"vermenigvuldigt,25 oplevert" +7690 GOSUB5120:REMVolgende scherm' +7700 HO=1:VE=2:GOSUB110:PRINT"Dus:V25=5 want 5*5=25" +7710 HO=1:VE=4:GOSUB110:PRINT"Evenzo is V4=2 en V49=7 enz." +7720 HO=1:VE=7:GOSUB110:PRINT"Bij deze kleine getallen" +7730 HO=1:VE=9:GOSUB110:PRINT"gaat het vinden van het" +7740 HO=1:VE=11:GOSUB110:PRINT"antwoord vrij eenvoudig." +7750 HO=1:VE=13:GOSUB110:PRINT"Meestal gaat het minder" +7760 HO=1:VE=15:GOSUB110:PRINT"eenvoudig zoals b.v.V56 of" +7770 HO=1:VE=17:GOSUB110:PRINT"V127 of V625 enz." +7780 GOSUB5120:REMVolgende scherm' +7790 HO=1:VE=2:GOSUB110:PRINT"Als voorbeeld gaan we V57" +7800 HO=1:VE=4:GOSUB110:PRINT"bepalen." +7810 HO=1:VE=7:GOSUB110:PRINT"Dit gebeurt in een aantal" +7820 HO=1:VE=9:GOSUB110:PRINT"stappen." +7830 HO=1:VE=11:GOSUB110:PRINT"Het-op papier-uitrekenen" +7840 HO=1:VE=13:GOSUB110:PRINT"van de wortel uit een getal" +7850 HO=1:VE=15:GOSUB110:PRINT"lijkt op een staartdeling." +7860 GOSUB5120:REMVolgende scherm' +7870 HO=1:VE=2:GOSUB110:PRINT"Stap 1:Verdeel 57 vanuit de" +7880 HO=1:VE=4:GOSUB110:PRINT"komma (=. op scherm) naar" +7890 HO=1:VE=6:GOSUB110:PRINT"links en rechts in groepjes" +7900 HO=1:VE=8:GOSUB110:PRINT"van 2 cijfers." +7910 HO=1:VE=11:GOSUB110:PRINT"Antw:57 kan ook geschreven" +7920 HO=1:VE=13:GOSUB110:PRINT"worden als 57.00000000" +7930 HO=1:VE=15:GOSUB110:PRINT"dus verdeling in groepjes" +7940 HO=1:VE=17:GOSUB110:PRINT"geeft:57 . 00 00 00 00" +7950 GOSUB5120:REMVolgende scherm' +7960 HO=10:VE=2:GOSUB110:PRINT"V57.000000=?" +7970 HO=7:VE=3:GOSUB110:PRINT"a*a=__" +7980 HO=1:VE=17:GOSUB110:PRINT"Stap 2:Vul voor a een getal" +7990 HO=1:VE=18:GOSUB110:PRINT"in zodat a*a kleiner is" +8000 HO=1:VE=19:GOSUB110:PRINT"dan 57." +8010 HO=1:VE=20:GOSUB110:PRINT"Antw:a=7 (7*7=49)" +8020 GOSUB9740:REMVolgende stap' +8030 HO=21:VE=2:GOSUB110:PRINT"7" +8040 HO=7:VE=3:GOSUB110:PRINT"7*7=49" +8050 HO=11:VE=4:GOSUB110:PRINT"____ -" +8060 HO=12:VE=5:GOSUB110:PRINT"8" +8070 HO=1:VE=17:GOSUB110:PRINT"Stap 3:Haal de volgende 2 " +8080 HO=1:VE=18:GOSUB110:PRINT"cijfers aan;deze staan " +8090 HO=1:VE=19:GOSUB110:PRINT"achter de komma dus plaats" +8100 HO=1:VE=20:GOSUB110:PRINT"een komma in het antwoord." +8110 FORJ=1 TO1000:NEXTJ +8120 HO=14:VE=5:GOSUB110:PRINT"00" +8130 GOSUB9740:REMVolgende stap' +8140 HO=22:VE=2:GOSUB110:PRINT"." +8150 HO=6:VE=6:GOSUB110:PRINT"da*a= _ __" +8160 HO=1:VE=17:GOSUB110:PRINT"Stap 4:Vul voor d een getal" +8170 HO=1:VE=18:GOSUB110:PRINT"in ter grootte van 2x het " +8180 HO=1:VE=19:GOSUB110:PRINT"antwoord tot nu toe " +8190 HO=1:VE=20:GOSUB110:PRINT"Antw:d=14 (2*7) " +8200 GOSUB9740:REMVolgende stap' +8210 HO=5:VE=6:GOSUB110:PRINT"14a*a= _ __" +8220 HO=1:VE=17:GOSUB110:PRINT"Stap 5:Vul voor a een getal" +8230 HO=1:VE=18:GOSUB110:PRINT"in zodat 14a*a kleiner is " +8240 HO=1:VE=19:GOSUB110:PRINT"dan 800 " +8250 HO=1:VE=20:GOSUB110:PRINT"Antw:a=5 (145*5=725) " +8260 GOSUB9740:REMVolgende stap' +8270 HO=23:VE=2:GOSUB110:PRINT"5" +8280 HO=5:VE=6:GOSUB110:PRINT"145*5= 7 25" +8290 HO=12:VE=7:GOSUB110:PRINT"________ -" +8300 HO=14:VE=8:GOSUB110:PRINT"75" +8310 HO=1:VE=17:GOSUB110:PRINT" " +8320 HO=1:VE=18:GOSUB110:PRINT"Stap 6:Haal de volgende 2" +8330 HO=1:VE=19:GOSUB110:PRINT"cijfers aan" +8340 HO=1:VE=20:GOSUB110:PRINT" " +8350 FORJ=1 TO1000:NEXTJ +8360 HO=16:VE=8:GOSUB110:PRINT"00" +8370 GOSUB9740:REMVolgende stap' +8380 HO=6:VE=9:GOSUB110:PRINT"da*a= ____" +8390 HO=1:VE=17:GOSUB110:PRINT"Stap 7:Vul voor d weer een" +8400 HO=1:VE=18:GOSUB110:PRINT"getal in ter grootte van " +8410 HO=1:VE=19:GOSUB110:PRINT"2x het antwoord tot nu toe" +8420 HO=1:VE=20:GOSUB110:PRINT"(de komma telt hier niet)." +8430 HO=1:VE=21:GOSUB110:PRINT"Antw:d=150 (2*75) " +8440 GOSUB9740:REMVolgende stap' +8450 HO=4:VE=9:GOSUB110:PRINT"150a*a= ____" +8460 HO=1:VE=17:GOSUB110:PRINT"Stap 8:Vul voor a een getal" +8470 HO=1:VE=18:GOSUB110:PRINT"in zodat 150a*a kleiner is" +8480 HO=1:VE=19:GOSUB110:PRINT"dan 7500 " +8490 HO=1:VE=20:GOSUB110:PRINT"Antw:a=4 (1504*4=6016) " +8500 HO=1:VE=21:GOSUB110:PRINT" " +8510 GOSUB9740:REMVolgende stap' +8520 HO=24:VE=2:GOSUB110:PRINT"4" +8530 HO=4:VE=9:GOSUB110:PRINT"1504*4= 6016" +8540 HO=14:VE=10:GOSUB110:PRINT"________ -" +8550 HO=14:VE=11:GOSUB110:PRINT"1484" +8560 HO=1:VE=17:GOSUB110:PRINT" " +8570 HO=1:VE=18:GOSUB110:PRINT"Stap 9:Haal de volgende 2 " +8580 HO=1:VE=19:GOSUB110:PRINT"cijfers aan." +8590 HO=1:VE=20:GOSUB110:PRINT" " +8600 FORJ=1 TO1000:NEXTJ +8610 HO=18:VE=11:GOSUB110:PRINT"00" +8620 GOSUB9740:REMVolgende stap' +8630 HO=6:VE=12:GOSUB110:PRINT"da*a= ______" +8640 HO=1:VE=17:GOSUB110:PRINT"Stap 10:Vul voor d een " +8650 HO=1:VE=18:GOSUB110:PRINT"getal in ter grootte van " +8660 HO=1:VE=19:GOSUB110:PRINT"2x het antwoord tot nu toe." +8670 HO=1:VE=20:GOSUB110:PRINT"Antw:d=1508 (2*754)" +8680 GOSUB9740:REMVolgende stap' +8690 HO=3:VE=12:GOSUB110:PRINT"1508a*a= ______" +8700 HO=1:VE=17:GOSUB110:PRINT"Stap 11:Vul voor a een getal" +8710 HO=1:VE=18:GOSUB110:PRINT"in zodat 1508a*a kleiner is " +8720 HO=1:VE=19:GOSUB110:PRINT"dan 148400 " +8730 HO=1:VE=20:GOSUB110:PRINT"Antw:a=9 (15089*9=135801) " +8740 GOSUB9740:REMVolgende stap' +8750 HO=25:VE=2:GOSUB110:PRINT"9" +8760 HO=3:VE=12:GOSUB110:PRINT"15089*9= 135801" +8770 HO=14:VE=13:GOSUB110:PRINT"____________ -" +8780 HO=15:VE=14:GOSUB110:PRINT"12599" +8790 HO=1:VE=17:GOSUB110:PRINT"Op deze wijze kun je zo lang" +8800 HO=1:VE=18:GOSUB110:PRINT"doorgaan tot de rest 0 wordt" +8810 HO=1:VE=19:GOSUB110:PRINT"Als je een antwoord met 2 " +8820 HO=1:VE=20:GOSUB110:PRINT"cijfers na de komma wilt " +8830 HO=1:VE=21:GOSUB110:PRINT"hoef je niet door te gaan. " +8840 GOSUB9740:REMVolgende stap' +8850 HO=1:VE=17:GOSUB110:PRINT"Na afronding is het " +8860 HO=1:VE=18:GOSUB110:PRINT"antwoord dan: 7.55 " +8870 HO=1:VE=19:GOSUB110:PRINT"Dus V57=7.55 " +8880 HO=1:VE=20:GOSUB110:PRINT" " +8890 PRINT" " +8900 GOSUB5120:REMVolgende scherm' +8910 HO=1:VE=3:GOSUB110:PRINT"We zullen een 2e voorbeeld" +8920 HO=1:VE=5:GOSUB110:PRINT"bekijken.Dit voorbeeld laat," +8930 HO=1:VE=7:GOSUB110:PRINT"zonder toelichting,stap voor" +8940 HO=1:VE=9:GOSUB110:PRINT"stap de bewerkingen zien." +8950 GOSUB5120:REMVolgende scherm' +8960 HO=10:VE=2:GOSUB110:PRINT"V75076=?" +8970 FORJ=1 TO1000:NEXTJ +8980 HO=7:VE=3:GOSUB110:PRINT"_*_=_" +8990 FORJ=1 TO1000:NEXTJ +9000 HO=17:VE=2:GOSUB110:PRINT"2" +9010 HO=7:VE=3:GOSUB110:PRINT"2*2=4" +9020 HO=11:VE=4:GOSUB110:PRINT"__ -" +9030 FORJ=1 TO1000:NEXTJ +9040 HO=11:VE=5:GOSUB110:PRINT"3" +9050 FORJ=1 TO1000:NEXTJ +9060 HO=12:VE=5:GOSUB110:PRINT"50" +9070 FORJ=1 TO1000:NEXTJ +9080 HO=6:VE=6:GOSUB110:PRINT"4_*_=___" +9090 FORJ=1 TO1000:NEXTJ +9100 HO=18:VE=2:GOSUB110:PRINT"7" +9110 HO=6:VE=6:GOSUB110:PRINT"47*7=329" +9120 HO=11:VE=7:GOSUB110:PRINT"______ -" +9130 FORJ=1 TO1000:NEXTJ +9140 HO=12:VE=8:GOSUB110:PRINT"21" +9150 FORJ=1 TO1000:NEXTJ +9160 HO=14:VE=8:GOSUB110:PRINT"76" +9170 FORJ=1 TO1000:NEXTJ +9180 HO=5:VE=9:GOSUB110:PRINT"54_*_= ____" +9190 FORJ=1 TO1000:NEXTJ +9200 HO=19:VE=2:GOSUB110:PRINT"4" +9210 HO=5:VE=9:GOSUB110:PRINT"544*4= 2176" +9220 HO=12:VE=10:GOSUB110:PRINT"________ -" +9230 HO=15:VE=11:GOSUB110:PRINT"0" +9240 FORJ=1 TO1000:NEXTJ +9250 HO=1:VE=15:GOSUB110:PRINT"De wortel uit 75076 is: 274" +9260 GOSUB5120:REMVolgende scherm' +9270 HO=1:VE=2:GOSUB110:PRINT"Tot nu toe hebben we" +9280 PRINT" alleen naar de 2e-machts wortel" +9290 PRINT" gekeken." +9300 HO=1:VE=6:GOSUB110:PRINT"Ook hogere-machts wortels" +9310 PRINT" kunnen -op papier- berekend worden." +9320 PRINT" Tenzij het om kleine getallen gaat" +9330 PRINT" gaat kunnen deze veel sneller op" +9340 PRINT" een andere manier (b.v.met" +9350 PRINT" logaritmen) berekend worden." +9360 HO=1:VE=13:GOSUB110:PRINT"Daarop zullen we hier" +9370 PRINT" niet verder ingaan." +9380 HO=1:VE=16:GOSUB110:PRINT"Als je dadelijk kiest voor" +9390 PRINT" het rekenen met hogere machten" +9400 PRINT" dan 2 zal ik er voor zorgen dat" +9410 PRINT" het antwoord een geheel getal is." +9420 HO=3:VE=22:GOSUB110:PRINT"Uitleg nog eens (j/n)?" +9430 GOSUB210:A$=IN$ +9440 IFA$="S" THEN6410 +9450 IFA$="s" THEN6410 +9460 IFA$="J" THEN7380 +9470 IFA$="j" THEN7380 +9480 IFA$="N" THENRETURN +9490 IFA$="n" THENRETURN +9500 GOTO9430 +9510 REM 9520 REM Aangeven keuze menu -9530 REM -9540 HO=5:VE=22:GOSUB 110:PRINT " " -9550 FOR I=1 TO 5 -9560 HO=1:VE=H:GOSUB 110:PRINT ">>>" -9570 FOR J=1 TO 250:NEXT J -9580 HO=1:VE=H:GOSUB 110:PRINT " " -9590 FOR J=1 TO 150:NEXT J -9600 NEXT I +9530 REM +9540 HO=5:VE=22:GOSUB110:PRINT" " +9550 FORI=1 TO5 +9560 HO=1:VE=H:GOSUB110:PRINT">>>" +9570 FORJ=1 TO250:NEXTJ +9580 HO=1:VE=H:GOSUB110:PRINT" " +9590 FORJ=1 TO150:NEXTJ +9600 NEXTI 9610 RETURN -9620 REM +9620 REM 9630 REM Aangeven keuze 9640 REM voor overige -9650 REM -9660 HO=1:VE=22:GOSUB 110:PRINT " " -9670 FOR I=1 TO 5 -9680 HO=0:VE=H:GOSUB 110:PRINT ">>" -9690 FOR J=1 TO 250:NEXT J -9700 HO=0:VE=H:GOSUB 110:PRINT " " -9710 FOR J=1 TO 150:NEXT J -9720 NEXT I +9650 REM +9660 HO=1:VE=22:GOSUB110:PRINT" " +9670 FORI=1 TO5 +9680 HO=0:VE=H:GOSUB110:PRINT">>" +9690 FORJ=1 TO250:NEXTJ +9700 HO=0:VE=H:GOSUB110:PRINT" " +9710 FORJ=1 TO150:NEXTJ +9720 NEXTI 9730 RETURN -9740 REM +9740 REM 9750 REM Volgende stap -9760 REM -9770 HO=1:VE=22:GOSUB 110:PRINT "Volgende stap:druk een knop" -9780 GOSUB 210 -9790 IF IN$="S" THEN 6410 -9800 IF IN$="s" THEN 6410 -9810 HO=1:VE=22:GOSUB 110:PRINT " " +9760 REM +9770 HO=1:VE=22:GOSUB110:PRINT"Volgende stap:druk een knop" +9780 GOSUB210 +9790 IFIN$="S" THEN6410 +9800 IFIN$="s" THEN6410 +9810 HO=1:VE=22:GOSUB110:PRINT" " 9820 RETURN -9830 REM +9830 REM 9840 REM Grootte van de macht 9850 REM worteltrekken -9860 GOSUB 100:Q$="0" -9870 HO=3:VE=2:GOSUB 110:PRINT NA$;"," -9880 HO=2:VE=5:GOSUB 110:PRINT "je moet nu de grootte van" -9890 PRINT " de macht kiezen (m.a.w.:hoe vaak" -9900 PRINT " moet het antwoord met zichzelf" -9910 PRINT " vermenigvuldigen worden)." -9920 GOSUB 5120:REM Volgende scherm' -9930 HO=3:VE=2:GOSUB 110:PRINT "Grootte van de macht" -9940 HO=2:VE=4:GOSUB 110:PRINT "-1-Macht is 2" -9950 HO=2:VE=6:GOSUB 110:PRINT "-2-Macht is 3" -9960 HO=2:VE=8:GOSUB 110:PRINT "-3-Macht is 4" -9970 HO=2:VE=10:GOSUB 110:PRINT "-4-Macht is 5" -9980 HO=3:VE=22:GOSUB 110:PRINT NA$;",wat kies je?" -9990 GOSUB 210:Q$=IN$ -10000 IF Q$="S" THEN 6410 -10010 IF Q$="s" THEN 6410 -10020 IF Q$="1" THEN H=4:GOSUB 9620:Q=2:GOTO 10070 -10030 IF Q$="2" THEN H=6:GOSUB 9620:Q=3:GOTO 10070 -10040 IF Q$="3" THEN H=8:GOSUB 9620:Q=4:GOTO 10070 -10050 IF Q$="4" THEN H=10:GOSUB 9620:Q=5:GOTO 10070 -10060 GOTO 9990 +9860 GOSUB100:Q$="0" +9870 HO=3:VE=2:GOSUB110:PRINTNA$;"," +9880 HO=2:VE=5:GOSUB110:PRINT"je moet nu de grootte van" +9890 PRINT" de macht kiezen (m.a.w.:hoe vaak" +9900 PRINT" moet het antwoord met zichzelf" +9910 PRINT" vermenigvuldigen worden)." +9920 GOSUB5120:REMVolgende scherm' +9930 HO=3:VE=2:GOSUB110:PRINT"Grootte van de macht" +9940 HO=2:VE=4:GOSUB110:PRINT"-1-Macht is 2" +9950 HO=2:VE=6:GOSUB110:PRINT"-2-Macht is 3" +9960 HO=2:VE=8:GOSUB110:PRINT"-3-Macht is 4" +9970 HO=2:VE=10:GOSUB110:PRINT"-4-Macht is 5" +9980 HO=3:VE=22:GOSUB110:PRINTNA$;",wat kies je?" +9990 GOSUB210:Q$=IN$ +10000 IFQ$="S" THEN6410 +10010 IFQ$="s" THEN6410 +10020 IFQ$="1" THENH=4:GOSUB9620:Q=2:GOTO10070 +10030 IFQ$="2" THENH=6:GOSUB9620:Q=3:GOTO10070 +10040 IFQ$="3" THENH=8:GOSUB9620:Q=4:GOTO10070 +10050 IFQ$="4" THENH=10:GOSUB9620:Q=5:GOTO10070 +10060 GOTO9990 10070 RETURN -10080 DATA "0","1","2","3","4","5","6","7","8","9" -10090 REM +10080 DATA"0","1","2","3","4","5","6","7","8","9" +10090 REM 10100 REM REKENFRIEK -10110 REM +10110 REM 10120 REM ONTWERP (c) 10130 REM J.A.v.ENGELAND 10140 REM ALMERE -10150 REM +10150 REM 10160 REM OP EEN MSX-COMPUTER 10170 REM PHILIPS VG-8020 -10180 REM +10180 REM 10190 REM FEBRUARI 1987 10200 REM ********************* 30000 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/21_Hoofdrekenen.bc2 b/Best_of_Basicode_4/21_Hoofdrekenen.bc2 index e323b63..b4d6a8d 100644 --- a/Best_of_Basicode_4/21_Hoofdrekenen.bc2 +++ b/Best_of_Basicode_4/21_Hoofdrekenen.bc2 @@ -1,7 +1,8 @@ -1000 A=2000:GOTO 20:REM HOOFDREKENEN -1010 REM ******************************* -1020 REM ** VASTE VARIABELEN ** -1030 REM ******************************* + +1000 A=2000:GOTO20:REM HOOFDREKENEN +1010 REM******************************* +1020 REM** VASTE VARIABELEN ** +1030 REM******************************* 1050 C=0:Q=0:R=0:V=0:VD=0 1060 K$="+-x:" 1070 TS$="----------------------------------------" @@ -16,532 +17,532 @@ 1160 BV$=BV$+" - l -- l -- l x l x- l x-- l x--" 1170 BV$=BV$+" x l xx l xx l l x l xx l xx" 1180 BV$=BV$+" l l l l l l "+TS$ -1190 REM ******************************* -1200 REM ** MENU ** -1210 REM ******************************* -1220 GOSUB 100:HO=0:VE=1:GOSUB 110 -1230 PRINT "MENU:":PRINT "-----":PRINT S3$ -1240 PRINT "Algemene informatie...................1 ";S3$; -1250 PRINT "Start hoofdrekenen met zakgeld........2 ";S3$; -1260 PRINT "Start hoofdrekenen zonder zakgeld.....3 ";S3$; -1270 PRINT "Stoppen...............................4 ";S3$; -1280 PRINT " << 1 - 4 >>"; -1290 GOSUB 260:GOSUB 200:IF IN$="" THEN 1290 -1295 PK=VAL(IN$):IF PK=4 THEN END -1300 IF (PK<1) OR(PK>3) THEN 1290 -1310 GOSUB 100:IF PK>1 THEN 2930 -1320 REM ******************************* -1330 REM ** INFORMATIE ** -1340 REM ******************************* -1350 PRINT "Dit programma is bedoeld voor een ieder "; -1360 PRINT "die zijn/haar (hoofd-)rekenvaardigheid "; -1370 PRINT "wenst te toetsen of te verbeteren, maar "; -1380 PRINT "speciaal voor kinderen vanaf de hoogste "; -1390 PRINT "groepen van de basisschool. ";S1$; -1400 PRINT "Met name voor die laatste categorie "; -1410 PRINT "worden onder meer aanwijzingen inzake de"; -1420 PRINT "rekentechnieken gegeven, daar waar de "; -1430 PRINT "sommen fout worden uitgewerkt. ";S1$; -1440 PRINT "Ook is voor die groep de mogelijkheid "; -1450 PRINT "opgenomen om een aanvulling op het zak- "; -1460 PRINT "geld te verdienen, dit ter stimulering "; -1470 PRINT "van een regelmatige training. ";S1$; -1480 PRINT "Desgewenst kan dit laatste programma- "; -1490 PRINT "onderdeel worden verwijderd. "; -1500 PRINT "Zie hiervoor de programmeursinformatie "; -1510 PRINT "in de listing v.a. regelnr. 30000. "; -1520 GOSUB 23030 -1530 PRINT "Voor elke som kunnen 5 punten worden "; -1540 PRINT "behaald. ";S1$; -1550 PRINT "Een fout levert 0 punten op." -1560 PRINT "Het programma kan bovendien niet verder "; -1570 PRINT "worden afgewerkt voordat elke som goed "; -1580 PRINT "is opgelost. ";S1$; -1600 PRINT "Zakgeldberekening: ";S1$; -1610 PRINT "98 punten of meer....fl. 1.00 "; -1620 PRINT "90-97 punten.........fl. 0.75 "; -1630 PRINT "80-89 punten.........fl. 0.50 "; -1640 PRINT "70-79 punten.........fl. 0.25 ";S1$; -1650 PRINT "Bovendien bij: ";S1$; -1660 PRINT " 0 fouten..........fl. 1.00"; -1670 PRINT " 1 fout............fl. 0.75"; -1680 PRINT " 2 fouten..........fl. 0.50"; -1690 PRINT " 3 fouten..........fl. 0.25"; -1700 IF PK=2 THEN RETURN -1710 GOSUB 23030 -1720 PRINT "U komt de volgende sommen tegen: ";S3$; -1730 PRINT "-optellen/aftrekken (combinatie); ";S1$; -1740 PRINT "-vermenigvuldigen; ";S1$; -1750 PRINT "-delen; ";S1$; -1760 PRINT "-optellen, aftrekken, vermenigvuldigen "; -1770 PRINT " en delen van breuken; ";S1$; -1780 PRINT "-inhoudsberekeningen; ";S1$; -1790 PRINT "-renteberekeningen. ";S1$; -1800 GOSUB 23030 -1810 PRINT "Bij de gecombineerde optel-/aftreksommen"; -1820 PRINT "kan de uitkomst zowel positief als nega-"; -1830 PRINT "tief zijn. Vergeet in het laatste geval "; -1840 PRINT "niet het negatief-teken. "; -1850 PRINT "De maximale grootte van de getallen is "; -1860 PRINT "1000. De uitkomst kan groter zijn. ";S3$; -1870 PRINT "Bij vermenigvuldigingen zijn de deelne- "; -1880 PRINT "mende getallen niet groter dan 20. ";S3$; -1890 PRINT "Delingen leveren als resultaat steeds "; -1900 PRINT "een heel getal beneden 21 op. ";S1$; -1910 GOSUB 23030 -1920 PRINT "Bij breuken dient voordat het resutaat "; -1930 PRINT "wordt ingevuld te worden aangegeven hoe "; -1940 PRINT "dat er uit komt te zien. "; -1950 PRINT "De ingetikte cyfers van de uitkomst "; -1960 PRINT "komen dan vanzelf op de juiste plaats te"; -1970 PRINT "staan. ";S1$; -1980 PRINT TS$;BV$; -1990 PRINT " 4 x"; -2000 PRINT " 2-- komt in dat geval overeen met: x--"; -2010 PRINT " 15 xx";S1$; -2020 PRINT "Ingevuld moet worden het cyfer 6. "; -2030 GOSUB 23030 -2040 PRINT "Inhoudsberekeningen dienen afwisselend "; -2050 PRINT "in cm3 en dm3 te worden gemaakt. "; -2060 PRINT "Daar waar in de opgaven centimeters en "; -2070 PRINT "decimeters door elkaar worden gebruikt "; -2080 PRINT "wordt de inhoud steeds in cm3 gevraagd. ";S1$; -2090 PRINT "Renteberekeningen tenslotte zijn zo "; -2100 PRINT "samengesteld, dat de uitkomst nooit "; -2110 PRINT "kleiner is dan hele centen (in eenheden "; -2120 PRINT "van 25). ";TS$; -2130 PRINT "De uitwerking van de sommen dient binnen"; -2140 PRINT "ongeveer 20 seconden plaats te vinden. "; -2150 PRINT "Wordt deze tijd overschreden, dan loopt "; -2160 PRINT "het te behalen aantal punten voor de be-"; -2170 PRINT "treffende som terug. ";S1$; -2180 PRINT "Andere dan commodore-64 computers zullen"; -2190 PRINT "mogelijk het getal .045 in regel 20130 "; -2200 PRINT "moeten aanpassen om de rekentijd op 20 "; -2210 PRINT "seconden te bepalen. ";S1$; -2220 PRINT "Tijd tekort: verlagen; "; -2230 PRINT "tijd teveel: verhogen."; -2240 GOSUB 23030:GOTO 1220 -2900 REM ******************************* -2910 REM ** PROGRAMMA-START ** -2920 REM ******************************* -2930 GOSUB 100:HO=12:VE=10:GOSUB 110 -2940 PRINT "Corrigeren alleen":VE=12:GOSUB 110 -2950 PRINT " met de letter:":VE=15:GOSUB 110 -2960 PRINT " 'C'" -2970 FOR XX=0 TO 2500:NEXT XX +1190 REM******************************* +1200 REM** MENU ** +1210 REM******************************* +1220 GOSUB100:HO=0:VE=1:GOSUB110 +1230 PRINT"MENU:":PRINT"-----":PRINTS3$ +1240 PRINT"Algemene informatie...................1 ";S3$; +1250 PRINT"Start hoofdrekenen met zakgeld........2 ";S3$; +1260 PRINT"Start hoofdrekenen zonder zakgeld.....3 ";S3$; +1270 PRINT"Stoppen...............................4 ";S3$; +1280 PRINT" << 1 - 4 >>"; +1290 GOSUB260:GOSUB200:IFIN$="" THEN1290 +1295 PK=VAL(IN$):IFPK=4 THENEND +1300 IF(PK<1) OR(PK>3) THEN1290 +1310 GOSUB100:IFPK>1 THEN2930 +1320 REM******************************* +1330 REM** INFORMATIE ** +1340 REM******************************* +1350 PRINT"Dit programma is bedoeld voor een ieder "; +1360 PRINT"die zijn/haar (hoofd-)rekenvaardigheid "; +1370 PRINT"wenst te toetsen of te verbeteren, maar "; +1380 PRINT"speciaal voor kinderen vanaf de hoogste "; +1390 PRINT"groepen van de basisschool. ";S1$; +1400 PRINT"Met name voor die laatste categorie "; +1410 PRINT"worden onder meer aanwijzingen inzake de"; +1420 PRINT"rekentechnieken gegeven, daar waar de "; +1430 PRINT"sommen fout worden uitgewerkt. ";S1$; +1440 PRINT"Ook is voor die groep de mogelijkheid "; +1450 PRINT"opgenomen om een aanvulling op het zak- "; +1460 PRINT"geld te verdienen, dit ter stimulering "; +1470 PRINT"van een regelmatige training. ";S1$; +1480 PRINT"Desgewenst kan dit laatste programma- "; +1490 PRINT"onderdeel worden verwijderd. "; +1500 PRINT"Zie hiervoor de programmeursinformatie "; +1510 PRINT"in de listing v.a. regelnr. 30000. "; +1520 GOSUB23030 +1530 PRINT"Voor elke som kunnen 5 punten worden "; +1540 PRINT"behaald. ";S1$; +1550 PRINT"Een fout levert 0 punten op." +1560 PRINT"Het programma kan bovendien niet verder "; +1570 PRINT"worden afgewerkt voordat elke som goed "; +1580 PRINT"is opgelost. ";S1$; +1600 PRINT"Zakgeldberekening: ";S1$; +1610 PRINT"98 punten of meer....fl. 1.00 "; +1620 PRINT"90-97 punten.........fl. 0.75 "; +1630 PRINT"80-89 punten.........fl. 0.50 "; +1640 PRINT"70-79 punten.........fl. 0.25 ";S1$; +1650 PRINT"Bovendien bij: ";S1$; +1660 PRINT" 0 fouten..........fl. 1.00"; +1670 PRINT" 1 fout............fl. 0.75"; +1680 PRINT" 2 fouten..........fl. 0.50"; +1690 PRINT" 3 fouten..........fl. 0.25"; +1700 IFPK=2 THENRETURN +1710 GOSUB23030 +1720 PRINT"U komt de volgende sommen tegen: ";S3$; +1730 PRINT"-optellen/aftrekken (combinatie); ";S1$; +1740 PRINT"-vermenigvuldigen; ";S1$; +1750 PRINT"-delen; ";S1$; +1760 PRINT"-optellen, aftrekken, vermenigvuldigen "; +1770 PRINT" en delen van breuken; ";S1$; +1780 PRINT"-inhoudsberekeningen; ";S1$; +1790 PRINT"-renteberekeningen. ";S1$; +1800 GOSUB23030 +1810 PRINT"Bij de gecombineerde optel-/aftreksommen"; +1820 PRINT"kan de uitkomst zowel positief als nega-"; +1830 PRINT"tief zijn. Vergeet in het laatste geval "; +1840 PRINT"niet het negatief-teken. "; +1850 PRINT"De maximale grootte van de getallen is "; +1860 PRINT"1000. De uitkomst kan groter zijn. ";S3$; +1870 PRINT"Bij vermenigvuldigingen zijn de deelne- "; +1880 PRINT"mende getallen niet groter dan 20. ";S3$; +1890 PRINT"Delingen leveren als resultaat steeds "; +1900 PRINT"een heel getal beneden 21 op. ";S1$; +1910 GOSUB23030 +1920 PRINT"Bij breuken dient voordat het resutaat "; +1930 PRINT"wordt ingevuld te worden aangegeven hoe "; +1940 PRINT"dat er uit komt te zien. "; +1950 PRINT"De ingetikte cyfers van de uitkomst "; +1960 PRINT"komen dan vanzelf op de juiste plaats te"; +1970 PRINT"staan. ";S1$; +1980 PRINTTS$;BV$; +1990 PRINT" 4 x"; +2000 PRINT" 2-- komt in dat geval overeen met: x--"; +2010 PRINT" 15 xx";S1$; +2020 PRINT"Ingevuld moet worden het cyfer 6. "; +2030 GOSUB23030 +2040 PRINT"Inhoudsberekeningen dienen afwisselend "; +2050 PRINT"in cm3 en dm3 te worden gemaakt. "; +2060 PRINT"Daar waar in de opgaven centimeters en "; +2070 PRINT"decimeters door elkaar worden gebruikt "; +2080 PRINT"wordt de inhoud steeds in cm3 gevraagd. ";S1$; +2090 PRINT"Renteberekeningen tenslotte zijn zo "; +2100 PRINT"samengesteld, dat de uitkomst nooit "; +2110 PRINT"kleiner is dan hele centen (in eenheden "; +2120 PRINT"van 25). ";TS$; +2130 PRINT"De uitwerking van de sommen dient binnen"; +2140 PRINT"ongeveer 20 seconden plaats te vinden. "; +2150 PRINT"Wordt deze tijd overschreden, dan loopt "; +2160 PRINT"het te behalen aantal punten voor de be-"; +2170 PRINT"treffende som terug. ";S1$; +2180 PRINT"Andere dan commodore-64 computers zullen"; +2190 PRINT"mogelijk het getal .045 in regel 20130 "; +2200 PRINT"moeten aanpassen om de rekentijd op 20 "; +2210 PRINT"seconden te bepalen. ";S1$; +2220 PRINT"Tijd tekort: verlagen; "; +2230 PRINT"tijd teveel: verhogen."; +2240 GOSUB23030:GOTO1220 +2900 REM******************************* +2910 REM** PROGRAMMA-START ** +2920 REM******************************* +2930 GOSUB100:HO=12:VE=10:GOSUB110 +2940 PRINT"Corrigeren alleen":VE=12:GOSUB110 +2950 PRINT" met de letter:":VE=15:GOSUB110 +2960 PRINT" 'C'" +2970 FORXX=0 TO2500:NEXTXX 2980 SO=0:FO=0:PA=0:F=0 -2990 GOSUB 100:PRINT KV$;VR$;:GOTO 20310 -3000 REM ******************************* -3010 REM ** WISSELING-SOMMEN ** -3020 REM ******************************* -3030 GOSUB 260:WS=INT(RV*7)+1 +2990 GOSUB100:PRINTKV$;VR$;:GOTO20310 +3000 REM******************************* +3010 REM** WISSELING-SOMMEN ** +3020 REM******************************* +3030 GOSUB260:WS=INT(RV*7)+1 3040 T=0:HP=0 -3050 ON WS GOTO 3130,3330,3430,3530,3530,5030,5530 -3100 REM ******************************* -3110 REM ** OPTELLEN/AFTREKKEN ** -3120 REM ******************************* -3130 GOSUB 260:X=INT(RV*1000)+1 -3140 GOSUB 260:Y=INT(RV*1000)+1 -3150 GOSUB 260:Z=INT(RV*1000)+1 -3160 HO=14:VE=14:GOSUB 110 -3170 PRINT X;"+";Y;"-";Z;"= ?"; -3180 GOSUB 20030:IF C THEN 3180 -3190 IF VAL(U$)=X+Y-Z THEN 20230 -3200 GOSUB 20530:GOTO 3160 -3300 REM ******************************* -3310 REM ** VERMENIGVULDIGEN ** -3320 REM ******************************* -3330 GOSUB 260:X=INT(RV*20)+1 -3340 GOSUB 260:Y=INT(RV*20)+1 -3350 HO=14:VE=14:GOSUB 110 -3360 PRINT X;"*";Y;"= ?"; -3370 GOSUB 20030:IF C THEN 3370 -3380 IF VAL(U$)=X*Y THEN 20230 -3390 GOSUB 20530:GOTO 3350 -3400 REM ******************************* -3410 REM ** DELEN ** -3420 REM ******************************* -3430 GOSUB 260:Y=INT(RV*20)+1 -3440 GOSUB 260:X=INT((RV*20)+1)*Y -3450 HO=14:VE=14:GOSUB 110 -3460 PRINT X;":";Y;"= ?"; -3470 GOSUB 20030:IF C THEN 3470 -3480 IF VAL(U$)=X/Y THEN 20230 -3490 GOSUB 20530:GOTO 3450 -3500 REM ******************************* -3510 REM ** BREUKEN ** -3520 REM ******************************* +3050 ONWS GOTO3130,3330,3430,3530,3530,5030,5530 +3100 REM******************************* +3110 REM** OPTELLEN/AFTREKKEN ** +3120 REM******************************* +3130 GOSUB260:X=INT(RV*1000)+1 +3140 GOSUB260:Y=INT(RV*1000)+1 +3150 GOSUB260:Z=INT(RV*1000)+1 +3160 HO=14:VE=14:GOSUB110 +3170 PRINTX;"+";Y;"-";Z;"= ?"; +3180 GOSUB20030:IFC THEN3180 +3190 IFVAL(U$)=X+Y-Z THEN20230 +3200 GOSUB20530:GOTO3160 +3300 REM******************************* +3310 REM** VERMENIGVULDIGEN ** +3320 REM******************************* +3330 GOSUB260:X=INT(RV*20)+1 +3340 GOSUB260:Y=INT(RV*20)+1 +3350 HO=14:VE=14:GOSUB110 +3360 PRINTX;"*";Y;"= ?"; +3370 GOSUB20030:IFC THEN3370 +3380 IFVAL(U$)=X*Y THEN20230 +3390 GOSUB20530:GOTO3350 +3400 REM******************************* +3410 REM** DELEN ** +3420 REM******************************* +3430 GOSUB260:Y=INT(RV*20)+1 +3440 GOSUB260:X=INT((RV*20)+1)*Y +3450 HO=14:VE=14:GOSUB110 +3460 PRINTX;":";Y;"= ?"; +3470 GOSUB20030:IFC THEN3470 +3480 IFVAL(U$)=X/Y THEN20230 +3490 GOSUB20530:GOTO3450 +3500 REM******************************* +3510 REM** BREUKEN ** +3520 REM******************************* 3530 GC=0:HP=9 -3540 GOSUB 260:TA=INT(RV*4)+1 -3550 GOSUB 260:NA=INT(RV*8)+1 -3560 GOSUB 260:TB=INT(RV*4)+1 -3570 GOSUB 260:NB=INT(RV*8)+1 -3580 IF (TA>NA) THEN H=NA:NA=TA:TA=H -3590 IF (TB>NB) THEN H=NB:NB=TB:TB=H -3610 REM ********SOMKIEZER************** -3630 GOSUB 260:K=INT(RV*4)+1 -3640 ON K GOTO 3680,3730,3800,3840 -3660 REM ********OPTELLEN*************** -3680 TC=TA*NB+TB*NA:NC=NA*NB:GOTO 4000 -3710 REM ********AFTREKKEN************** -3730 IF TA/NANA) THENH=NA:NA=TA:TA=H +3590 IF(TB>NB) THENH=NB:NB=TB:TB=H +3610 REM********SOMKIEZER************** +3630 GOSUB260:K=INT(RV*4)+1 +3640 ONK GOTO3680,3730,3800,3840 +3660 REM********OPTELLEN*************** +3680 TC=TA*NB+TB*NA:NC=NA*NB:GOTO4000 +3710 REM********AFTREKKEN************** +3730 IFTA/NA?" -4150 SR=NA:GOSUB 300:VE=15:GOSUB 110:PRINT SR$; -4160 SR=NB:GOSUB 300:PRINT " ";SR$; -4200 REM ********KIEZEN BREUKVORM******* -4210 HO=0:VE=0:GOSUB 110:PRINT KB$;BV$ -4220 GOSUB 20130:V=VAL(IN$) -4230 IF (V<1) OR(V>7) THEN 4220 -4240 GOSUB 110:PRINT KV$;VR$; -4250 REM ********OPBOUW RESULTAAT******* -4260 X=0:Y=0:Z=0:HO=HP:VE=14:GOSUB 110 -4270 PRINT " ":GOSUB 110 +4100 HO=0:VE=13:GOSUB110 +4110 SR=TA:GOSUB300:PRINTSR$; +4120 SR=TB:GOSUB300:PRINT" ";SR$ +4130 VE=14:GOSUB110:PRINT"- ";H$;" - = < 1 - 7 >?" +4150 SR=NA:GOSUB300:VE=15:GOSUB110:PRINTSR$; +4160 SR=NB:GOSUB300:PRINT" ";SR$; +4200 REM********KIEZEN BREUKVORM******* +4210 HO=0:VE=0:GOSUB110:PRINTKB$;BV$ +4220 GOSUB20130:V=VAL(IN$) +4230 IF(V<1) OR(V>7) THEN4220 +4240 GOSUB110:PRINTKV$;VR$; +4250 REM********OPBOUW RESULTAAT******* +4260 X=0:Y=0:Z=0:HO=HP:VE=14:GOSUB110 +4270 PRINT" ":GOSUB110 4280 R=(V<>3):Q=(V<>4) -4290 IF V>3 THEN PRINT "?";:IF V=4 THEN 4360 -4320 IF (V=1) OR(V=5) THEN PRINT "-":GOTO 4340 -4330 PRINT "--" -4340 IF (V=1) OR(V=3) THEN VE=13:GOSUB 110:PRINT "?" -4350 IF V=2 THEN VE=13:HO=HP+1:GOSUB 110:PRINT "?" -4360 GOSUB 20040:R=(V<>7):IF C THEN 4210 -4370 IF V>3 THEN X=VAL(U$):IF V=4 THEN 4600 -4380 IF V<4 THEN Y=VAL(U$):GOTO 4430 -4390 IF (V=5) OR(V=7) THEN HO=HP+1:VE=13:GOSUB 110:PRINT "?" -4400 IF V=6 THEN HO=HP+2:VE=13:GOSUB 110:PRINT "?" -4410 GOSUB 20040:IF C THEN 4210 +4290 IFV>3 THENPRINT"?";:IFV=4 THEN4360 +4320 IF(V=1) OR(V=5) THENPRINT"-":GOTO4340 +4330 PRINT"--" +4340 IF(V=1) OR(V=3) THENVE=13:GOSUB110:PRINT"?" +4350 IFV=2 THENVE=13:HO=HP+1:GOSUB110:PRINT"?" +4360 GOSUB20040:R=(V<>7):IFC THEN4210 +4370 IFV>3 THENX=VAL(U$):IFV=4 THEN4600 +4380 IFV<4 THENY=VAL(U$):GOTO4430 +4390 IF(V=5) OR(V=7) THENHO=HP+1:VE=13:GOSUB110:PRINT"?" +4400 IFV=6 THENHO=HP+2:VE=13:GOSUB110:PRINT"?" +4410 GOSUB20040:IFC THEN4210 4420 Y=VAL(U$) -4430 Q=0:IF V<4 THEN HO=HP:VE=15:GOSUB 110 -4440 IF V>4 THEN HO=HP+1:VE=15:GOSUB 110 -4450 PRINT "?":R=((V=1) OR(V=5)):GOSUB 20040:IF C THEN 4200 +4430 Q=0:IFV<4 THENHO=HP:VE=15:GOSUB110 +4440 IFV>4 THENHO=HP+1:VE=15:GOSUB110 +4450 PRINT"?":R=((V=1) OR(V=5)):GOSUB20040:IFC THEN4200 4470 Z=VAL(U$) -4600 REM ********VERGELIJK UITKOMST***** -4610 IF Z=0 THEN Z=1 -4620 IF (GC+TC/NC=X+Y/Z) AND(Y=TC) THEN 20230 -4630 IF GC+TC/NC=X+Y/Z THEN 4710 -4640 GOSUB 20530:HP=9:GOTO 4100 -4700 REM ********VEREENV.-OPDRACHT****** -4710 IF HP=29 THEN 4640 -4720 HP=29:HO=14:VE=14:GOSUB 110 -4730 PRINT "vereenvoudigd: < 1 - 7 >?" -4740 GOTO 4210 -5000 REM ******************************* -5010 REM ** INHOUD-BEREKENEN ** -5020 REM ******************************* -5030 GOSUB 260:ML=INT(RV*2) -5040 GOSUB 260:LE=INT(RV*9+1)/(10^ML) -5050 GOSUB 260:MB=INT(RV*2) -5060 GOSUB 260:BR=INT(RV*9+1)/(10^MB) -5070 GOSUB 260:MH=INT(RV*2) -5080 GOSUB 260:HG=INT(RV*9+1)/(10^MH) -5090 HO=0:VE=10:GOSUB 110 -5100 PRINT "Bereken de inhoud van een blok in "; -5110 S=(ML+MB+MH=0):IF S THEN PRINT "dm3.":GOTO 5130 -5120 PRINT "cm3.":PRINT -5130 VE=11:HO=0:GOSUB 110:PRINT TS$:VE=14:GOSUB 110 -5140 PRINT "lengte ";:IF ML=0 THEN PRINT LE;" dm.":GOTO 5160 -5150 PRINT LE*10;" cm." -5160 VE=15:GOSUB 110 -5170 PRINT "breedte ";:IF MB=0 THEN PRINT BR;" dm.":GOTO 5190 -5180 PRINT BR*10;" cm." -5190 VE=16:GOSUB 110 -5200 PRINT "hoogte ";:IF MH=0 THEN PRINT HG;" dm.":GOTO 5220 -5210 PRINT HG*10;" cm." -5220 VE=17:HO=17:GOSUB 110:PRINT "INHOUD: ?"; -5230 GOSUB 20030:IF C THEN 5230 -5240 IF S THEN CO=LE*BR*HG:GOTO 5260 +4600 REM********VERGELIJK UITKOMST***** +4610 IFZ=0 THENZ=1 +4620 IF(GC+TC/NC=X+Y/Z) AND(Y=TC) THEN20230 +4630 IFGC+TC/NC=X+Y/Z THEN4710 +4640 GOSUB20530:HP=9:GOTO4100 +4700 REM********VEREENV.-OPDRACHT****** +4710 IFHP=29 THEN4640 +4720 HP=29:HO=14:VE=14:GOSUB110 +4730 PRINT"vereenvoudigd: < 1 - 7 >?" +4740 GOTO4210 +5000 REM******************************* +5010 REM** INHOUD-BEREKENEN ** +5020 REM******************************* +5030 GOSUB260:ML=INT(RV*2) +5040 GOSUB260:LE=INT(RV*9+1)/(10^ML) +5050 GOSUB260:MB=INT(RV*2) +5060 GOSUB260:BR=INT(RV*9+1)/(10^MB) +5070 GOSUB260:MH=INT(RV*2) +5080 GOSUB260:HG=INT(RV*9+1)/(10^MH) +5090 HO=0:VE=10:GOSUB110 +5100 PRINT"Bereken de inhoud van een blok in "; +5110 S=(ML+MB+MH=0):IFS THENPRINT"dm3.":GOTO5130 +5120 PRINT"cm3.":PRINT +5130 VE=11:HO=0:GOSUB110:PRINTTS$:VE=14:GOSUB110 +5140 PRINT"lengte ";:IFML=0 THENPRINTLE;" dm.":GOTO5160 +5150 PRINTLE*10;" cm." +5160 VE=15:GOSUB110 +5170 PRINT"breedte ";:IFMB=0 THENPRINTBR;" dm.":GOTO5190 +5180 PRINTBR*10;" cm." +5190 VE=16:GOSUB110 +5200 PRINT"hoogte ";:IFMH=0 THENPRINTHG;" dm.":GOTO5220 +5210 PRINTHG*10;" cm." +5220 VE=17:HO=17:GOSUB110:PRINT"INHOUD: ?"; +5230 GOSUB20030:IFC THEN5230 +5240 IFS THENCO=LE*BR*HG:GOTO5260 5250 CO=INT(LE*BR*HG*1000+.1) -5260 IH=VAL(U$):IF IH=CO THEN 20230 -5270 GOSUB 20530:GOTO 5090 -5500 REM ******************************* -5510 REM ** RENTE-BEREKENEN ** -5520 REM ******************************* -5530 GOSUB 260:RE=INT((RV*18)+2)*.5 -5540 GOSUB 260:MN=INT(RV*2)*6 -5550 GOSUB 260:JR=INT(RV*5)+1 -5560 GOSUB 260:KP=INT(RV*9+1)*100 -5570 HO=0:VE=11:GOSUB 110:SR=KP:GOSUB 300 -5580 PRINT "Kapitaal: fl. ";SR$;".00 I" -5590 VE=12:GOSUB 110:PRINT "---------------------I" -5600 VE=13:GOSUB 110:PRINT "Rente: ";RE;" % pjr." -5610 HO=21:GOSUB 110:PRINT "I":HO=0 -5620 VE=14:GOSUB 110:PRINT "---------------------I" -5630 VE=15:GOSUB 110:PRINT "Looptijd: ";JR;"jaar I" -5650 IF MN=6 THEN HO=11:VE=16:GOSUB 110:PRINT "6 maanden.I" -5660 HO=23:VE=17:GOSUB 110:PRINT "Rente fl ?"; -5670 GOSUB 20030:IF C THEN 5670 -5680 IF VAL(U$)=INT(RE*KP*(MN+12*JR))/1200 THEN 20230 -5690 GOSUB 20530:GOTO 5570 -20000 REM ****************************** -20010 REM * UITKOMST-SUBROUTINE ** -20020 REM ****************************** -20030 IF NOT(C) THEN GOSUB 120:HO=HO-1 +5260 IH=VAL(U$):IFIH=CO THEN20230 +5270 GOSUB20530:GOTO5090 +5500 REM******************************* +5510 REM** RENTE-BEREKENEN ** +5520 REM******************************* +5530 GOSUB260:RE=INT((RV*18)+2)*.5 +5540 GOSUB260:MN=INT(RV*2)*6 +5550 GOSUB260:JR=INT(RV*5)+1 +5560 GOSUB260:KP=INT(RV*9+1)*100 +5570 HO=0:VE=11:GOSUB110:SR=KP:GOSUB300 +5580 PRINT"Kapitaal: fl. ";SR$;".00 I" +5590 VE=12:GOSUB110:PRINT"---------------------I" +5600 VE=13:GOSUB110:PRINT"Rente: ";RE;" % pjr." +5610 HO=21:GOSUB110:PRINT"I":HO=0 +5620 VE=14:GOSUB110:PRINT"---------------------I" +5630 VE=15:GOSUB110:PRINT"Looptijd: ";JR;"jaar I" +5650 IFMN=6 THENHO=11:VE=16:GOSUB110:PRINT"6 maanden.I" +5660 HO=23:VE=17:GOSUB110:PRINT"Rente fl ?"; +5670 GOSUB20030:IFC THEN5670 +5680 IFVAL(U$)=INT(RE*KP*(MN+12*JR))/1200 THEN20230 +5690 GOSUB20530:GOTO5570 +20000 REM****************************** +20010 REM* UITKOMST-SUBROUTINE ** +20020 REM****************************** +20030 IF NOT(C) THENGOSUB120:HO=HO-1 20040 U$="" -20050 GOSUB 110:GOSUB 20130:C=((IN$="c") OR(IN$="C")) -20060 IF C THEN 21030 -20070 IF (Q) AND(R) THEN U$=U$+IN$:PRINT U$:RETURN -20080 IF IN$=CHR$(13) THEN PRINT U$;" ";:RETURN -20090 R=((V<>1) AND(V<>5)):U$=U$+IN$:PRINT U$;"?";:GOTO 20050 -20100 REM ****************************** -20110 REM * TIJDLUS-SUBROUTINE ** -20120 REM ****************************** -20130 GOSUB 200:T=T+.045:TD=INT(T) -20140 IF IN$="" THEN 20130 -20150 IF IN$="," THEN IN$="." +20050 GOSUB110:GOSUB20130:C=((IN$="c") OR(IN$="C")) +20060 IFC THEN21030 +20070 IF(Q) AND(R) THENU$=U$+IN$:PRINTU$:RETURN +20080 IFIN$=CHR$(13) THENPRINTU$;" ";:RETURN +20090 R=((V<>1) AND(V<>5)):U$=U$+IN$:PRINTU$;"?";:GOTO20050 +20100 REM****************************** +20110 REM* TIJDLUS-SUBROUTINE ** +20120 REM****************************** +20130 GOSUB200:T=T+.045:TD=INT(T) +20140 IFIN$="" THEN20130 +20150 IFIN$="," THENIN$="." 20160 RETURN -20200 REM ****************************** -20210 REM * GOED-ROUTINE ** -20220 REM ****************************** -20230 HO=0:VE=8:GOSUB 110:PRINT S6$;S6$; -20240 SO=SO+1:PN=5:IF F THEN PN=0:F=0 -20250 IF TD>20 THEN PN=PN-INT((TD-20)/4) -20260 IF PN<0 THEN PN=0 -20270 PA=PA+PN:HO=14:VE=14:GOSUB 110 -20280 IF SO<19 THEN PRINT "Goed, nog ";20-SO;" sommen." -20290 IF SO=19 THEN PRINT "Goed, LAATSTE SOM !" -20300 IF SO=20 THEN PRINT "Prima! We zijn klaar"; -20310 HO=0:VE=20:GOSUB 110:PRINT TS$; -20320 IF SO<10 THEN PRINT "Aantal goed gemaakte sommen....";SO -20330 IF SO>9 THEN PRINT "Aantal goed gemaakte sommen...";SO -20340 IF FO<10 THEN PRINT "Aantal gemaakte fouten.........";FO -20350 IF FO>9 THEN PRINT "Aantal gemaakte fouten........";FO -20360 IF PA<10 THEN PRINT "Het puntenaantal bedraagt nu...";PA; -20370 IF PA>9 THEN PRINT "Het puntenaantal bedraagt nu..";PA; -20390 FOR XX=0 TO 999:NEXT XX:IF F THEN RETURN -20400 HO=0:VE=14:GOSUB 110:PRINT S1$; -20410 IF SO<20 THEN 3030 -20420 GOSUB 23030:GOTO 22430 -20500 REM ****************************** -20510 REM ** FOUT-SUBROUTINE ** -20520 REM ****************************** +20200 REM****************************** +20210 REM* GOED-ROUTINE ** +20220 REM****************************** +20230 HO=0:VE=8:GOSUB110:PRINTS6$;S6$; +20240 SO=SO+1:PN=5:IFF THENPN=0:F=0 +20250 IFTD>20 THENPN=PN-INT((TD-20)/4) +20260 IFPN<0 THENPN=0 +20270 PA=PA+PN:HO=14:VE=14:GOSUB110 +20280 IFSO<19 THENPRINT"Goed, nog ";20-SO;" sommen." +20290 IFSO=19 THENPRINT"Goed, LAATSTE SOM !" +20300 IFSO=20 THENPRINT"Prima! We zijn klaar"; +20310 HO=0:VE=20:GOSUB110:PRINTTS$; +20320 IFSO<10 THENPRINT"Aantal goed gemaakte sommen....";SO +20330 IFSO>9 THENPRINT"Aantal goed gemaakte sommen...";SO +20340 IFFO<10 THENPRINT"Aantal gemaakte fouten.........";FO +20350 IFFO>9 THENPRINT"Aantal gemaakte fouten........";FO +20360 IFPA<10 THENPRINT"Het puntenaantal bedraagt nu...";PA; +20370 IFPA>9 THENPRINT"Het puntenaantal bedraagt nu..";PA; +20390 FORXX=0 TO999:NEXTXX:IFF THENRETURN +20400 HO=0:VE=14:GOSUB110:PRINTS1$; +20410 IFSO<20 THEN3030 +20420 GOSUB23030:GOTO22430 +20500 REM****************************** +20510 REM** FOUT-SUBROUTINE ** +20520 REM****************************** 20530 F=(1=1) -20540 HO=0:VE=8:GOSUB 110:PRINT S6$;S6$; -20550 HO=14:VE=14:GOSUB 110 -20560 PRINT "Fout !"; +20540 HO=0:VE=8:GOSUB110:PRINTS6$;S6$; +20550 HO=14:VE=14:GOSUB110 +20560 PRINT"Fout !"; 20580 FO=FO+1 -20590 GOSUB 20310 -20600 HO=0:VE=14:GOSUB 110:PRINT S1$ -20670 ON WS GOSUB 21140,21210,21240,21270,21270,22010,22120 -20680 IF WS>3 THEN HO=0:VE=19:GOSUB 110 -20690 IF WS>3 THEN PRINT "Dezelfde opgave nog 'ns:"; -20700 GOSUB 23030 -20720 HO=0:VE=8:GOSUB 110:PRINT S6$;S6$;:RETURN -21000 REM ****************************** -21010 REM * CORRECTIE-SUBROUTINE ** -21020 REM ****************************** -21030 IF (WS=4) OR(WS=5) THEN 21050 -21040 GOSUB 110:PRINT "? ";:GOSUB 110:RETURN +20590 GOSUB20310 +20600 HO=0:VE=14:GOSUB110:PRINTS1$ +20670 ONWS GOSUB21140,21210,21240,21270,21270,22010,22120 +20680 IFWS>3 THENHO=0:VE=19:GOSUB110 +20690 IFWS>3 THENPRINT"Dezelfde opgave nog 'ns:"; +20700 GOSUB23030 +20720 HO=0:VE=8:GOSUB110:PRINTS6$;S6$;:RETURN +21000 REM****************************** +21010 REM* CORRECTIE-SUBROUTINE ** +21020 REM****************************** +21030 IF(WS=4) OR(WS=5) THEN21050 +21040 GOSUB110:PRINT"? ";:GOSUB110:RETURN 21050 HO=HP:VE=12 -21060 FOR XX=1 TO 3:VE=VE+XX:GOSUB 110 -21070 PRINT " ":NEXT XX -21080 VE=14:GOSUB 110:PRINT "< 1 - 7 >?":RETURN -21100 REM ****************************** -21110 REM * MEDEDELINGEN ** -21120 REM ****************************** -21130 REM *******FOUT +/- SOM*********** +21060 FORXX=1 TO3:VE=VE+XX:GOSUB110 +21070 PRINT" ":NEXTXX +21080 VE=14:GOSUB110:PRINT"< 1 - 7 >?":RETURN +21100 REM****************************** +21110 REM* MEDEDELINGEN ** +21120 REM****************************** +21130 REM*******FOUT +/- SOM*********** 21140 U=(X+Y-Z):V=VAL(U$) -21150 HO=14:VE=14:GOSUB 110 -21160 IF (U<0) AND(V=ABS(U)) THEN PRINT "- teken vergeten!"; -21165 IF (U<0) AND(V=ABS(U)) THEN RETURN -21170 IF U>V THEN PRINT "Te weinig! Nog 'ns."; -21180 IF UV THENPRINT"Te weinig! Nog 'ns."; +21180 IFUNB THEN 21380 -21310 PRINT "Bij optellen of aftrekken van breuken "; -21320 PRINT "met gelijke noemers worden alleen de "; -21330 PRINT "tellers bij elkaar opgeteld of van el- "; -21340 PRINT "kaar afgetrokken. De noemer verandert "; -21350 PRINT "niet. Vervolgens dient de uitkomst zo "; -21360 PRINT "mogelijk te worden vereenvoudigd. "; +21200 REM*******VERMENIGVULDIGING****** +21210 U=(X*Y):V=VAL(U$):GOTO21150 +21230 REM*******DELING***************** +21240 U=(X/Y):V=VAL(U$):GOTO21150 +21260 REM*******BREUKEN**************** +21270 HO=0:VE=8:GOSUB110 +21280 IFHP=29 THEN21810 +21290 ONK GOTO21300,21300,21590,21680 +21300 IFNA<>NB THEN21380 +21310 PRINT"Bij optellen of aftrekken van breuken "; +21320 PRINT"met gelijke noemers worden alleen de "; +21330 PRINT"tellers bij elkaar opgeteld of van el- "; +21340 PRINT"kaar afgetrokken. De noemer verandert "; +21350 PRINT"niet. Vervolgens dient de uitkomst zo "; +21360 PRINT"mogelijk te worden vereenvoudigd. "; 21370 RETURN -21380 PRINT "Bij optellen of aftrekken van breuken "; -21390 PRINT "met ongelijke noemers moeten die noemers"; -21400 PRINT "eerst worden gelijkgemaakt. "; -21410 PRINT "Op welke wijze dit het best kan geschie-"; -21420 PRINT "den, is afhankelijk van de opgave. "; -21430 PRINT "Het is in onze opgaven echter steeds "; -21440 PRINT "mogelijk de beide tellers te vermenig- "; -21450 PRINT "vuldigen met de noemers van de andere "; -21460 PRINT "breuk. De teller van de uitkomst vindt "; -21470 PRINT "men dan door de producten op te tellen "; -21480 PRINT "of van elkaar af te trekken. "; -21490 GOSUB 23030 -21500 PRINT "De noemer van de uitkomst is dan het "; -21510 PRINT "product van de noemers uit de opgave. ";S1$; -21520 PRINT " 4 3 (5*4)+(6*3) 20+18 38 "; -21530 PRINT "VOORBEELD: -+- = --------- = ----- = -- "; -21540 PRINT " 6 5 6*5 30 30 ";S1$; -21550 PRINT " 8 4 "; -21560 PRINT "Vereenvoudigd is dit: 1-- = 1-- "; -21570 PRINT " 30 15 "; +21380 PRINT"Bij optellen of aftrekken van breuken "; +21390 PRINT"met ongelijke noemers moeten die noemers"; +21400 PRINT"eerst worden gelijkgemaakt. "; +21410 PRINT"Op welke wijze dit het best kan geschie-"; +21420 PRINT"den, is afhankelijk van de opgave. "; +21430 PRINT"Het is in onze opgaven echter steeds "; +21440 PRINT"mogelijk de beide tellers te vermenig- "; +21450 PRINT"vuldigen met de noemers van de andere "; +21460 PRINT"breuk. De teller van de uitkomst vindt "; +21470 PRINT"men dan door de producten op te tellen "; +21480 PRINT"of van elkaar af te trekken. "; +21490 GOSUB23030 +21500 PRINT"De noemer van de uitkomst is dan het "; +21510 PRINT"product van de noemers uit de opgave. ";S1$; +21520 PRINT" 4 3 (5*4)+(6*3) 20+18 38 "; +21530 PRINT"VOORBEELD: -+- = --------- = ----- = -- "; +21540 PRINT" 6 5 6*5 30 30 ";S1$; +21550 PRINT" 8 4 "; +21560 PRINT"Vereenvoudigd is dit: 1-- = 1-- "; +21570 PRINT" 30 15 "; 21580 RETURN -21590 PRINT "Bij het vermenigvuldigen van breuken "; -21600 PRINT "moeten zowel de tellers als de noemers "; -21610 PRINT "met elkaar worden vermenigvuldigd: ";S1$; -21620 PRINT "de teller van de uitkomst is dan het "; -21630 PRINT "product van de tellers uit de opgave, de"; -21640 PRINT "noemer van de uitkomst die van de "; -21650 PRINT "noemers uit de opgave. ";S1$; -21660 PRINT "Zo mogelijk dient de uitkomst daarna nog"; -21670 PRINT "te worden vereenvoudigd.":RETURN -21680 PRINT "Delen door een breuk is vermenigvuldigen"; -21690 PRINT "met het omgekeerde! ";S1$; -21700 PRINT "Dit wil zeggen, dat de teller en de "; -21710 PRINT "noemer van de breuk waardoor wordt "; -21720 PRINT "gedeeld kunnen worden verwisseld waarna "; -21730 PRINT "de opgave als een vermenigvuldiging kan "; -21740 PRINT "worden uitgevoerd.":GOSUB 23030 -21750 PRINT S3$;" 2 2 2 3 6 "; -21760 PRINT "VOORBEELD: - : - wordt: - * - = -- "; -21770 PRINT " 7 3 7 2 14 ";S1$; -21780 PRINT " 3 "; -21790 PRINT "vereenvoudigd is dit: - "; -21800 PRINT " 7":RETURN -21810 PRINT "Bij het vereenvoudigen van 'n breuk be- "; -21820 PRINT "handelen we deze eerst als een gewone "; -21830 PRINT "deling, dat wil zeggen dat we kijken of "; -21840 PRINT "de teller door de noemer kan worden ge- "; -21850 PRINT "deeld. "; -21860 PRINT "We vinden dan het hele getal, dat voor "; -21870 PRINT "de breuk komt te staan. ";S1$; -21880 PRINT "Als we een 'rest' overhouden, dan wordt "; -21890 PRINT "dat de nieuwe teller":GOSUB 23030 -21900 PRINT "Vervolgens zoeken we naar het grootste "; -21910 PRINT "getal waardoor zowel de teller als de "; -21920 PRINT "noemer van de niewe breuk kan worden ge-"; -21930 PRINT "deeld en voeren dit uit. ";S1$; -21940 PRINT " 25 10 (rest) 2 "; -21950 PRINT "VOORBEELD: -- = 1-- = 1- "; -21960 PRINT " 15 15 3 ";S1$; -21970 PRINT "(teller en noemer van de tweede breuk "; -21980 PRINT " konden beide door 5 worden gedeeld)" +21590 PRINT"Bij het vermenigvuldigen van breuken "; +21600 PRINT"moeten zowel de tellers als de noemers "; +21610 PRINT"met elkaar worden vermenigvuldigd: ";S1$; +21620 PRINT"de teller van de uitkomst is dan het "; +21630 PRINT"product van de tellers uit de opgave, de"; +21640 PRINT"noemer van de uitkomst die van de "; +21650 PRINT"noemers uit de opgave. ";S1$; +21660 PRINT"Zo mogelijk dient de uitkomst daarna nog"; +21670 PRINT"te worden vereenvoudigd.":RETURN +21680 PRINT"Delen door een breuk is vermenigvuldigen"; +21690 PRINT"met het omgekeerde! ";S1$; +21700 PRINT"Dit wil zeggen, dat de teller en de "; +21710 PRINT"noemer van de breuk waardoor wordt "; +21720 PRINT"gedeeld kunnen worden verwisseld waarna "; +21730 PRINT"de opgave als een vermenigvuldiging kan "; +21740 PRINT"worden uitgevoerd.":GOSUB23030 +21750 PRINTS3$;" 2 2 2 3 6 "; +21760 PRINT"VOORBEELD: - : - wordt: - * - = -- "; +21770 PRINT" 7 3 7 2 14 ";S1$; +21780 PRINT" 3 "; +21790 PRINT"vereenvoudigd is dit: - "; +21800 PRINT" 7":RETURN +21810 PRINT"Bij het vereenvoudigen van 'n breuk be- "; +21820 PRINT"handelen we deze eerst als een gewone "; +21830 PRINT"deling, dat wil zeggen dat we kijken of "; +21840 PRINT"de teller door de noemer kan worden ge- "; +21850 PRINT"deeld. "; +21860 PRINT"We vinden dan het hele getal, dat voor "; +21870 PRINT"de breuk komt te staan. ";S1$; +21880 PRINT"Als we een 'rest' overhouden, dan wordt "; +21890 PRINT"dat de nieuwe teller":GOSUB23030 +21900 PRINT"Vervolgens zoeken we naar het grootste "; +21910 PRINT"getal waardoor zowel de teller als de "; +21920 PRINT"noemer van de niewe breuk kan worden ge-"; +21930 PRINT"deeld en voeren dit uit. ";S1$; +21940 PRINT" 25 10 (rest) 2 "; +21950 PRINT"VOORBEELD: -- = 1-- = 1- "; +21960 PRINT" 15 15 3 ";S1$; +21970 PRINT"(teller en noemer van de tweede breuk "; +21980 PRINT" konden beide door 5 worden gedeeld)" 21990 RETURN -22000 REM *******INHOUD***************** -22010 HO=0:VE=10:GOSUB 110:IF IH=0 THEN IH=1 +22000 REM*******INHOUD***************** +22010 HO=0:VE=10:GOSUB110:IFIH=0 THENIH=1 22020 QQ=0:QQ=((CO/IH=10) OR(CO/IH=100)) -22025 IF QQ THEN VE=12:GOSUB 110:GOTO 22090 -22030 PRINT "De inhoud van een blok vindt men door "; -22040 PRINT "de lengte, breedte en hoogte ervan met "; -22050 PRINT "elkaar te vermenigvuldigen. ";S1$; -22060 PRINT "Bedenk dat een decimeter 10 maal groter "; -22070 PRINT "is dan een centimeter! "; +22025 IFQQ THENVE=12:GOSUB110:GOTO22090 +22030 PRINT"De inhoud van een blok vindt men door "; +22040 PRINT"de lengte, breedte en hoogte ervan met "; +22050 PRINT"elkaar te vermenigvuldigen. ";S1$; +22060 PRINT"Bedenk dat een decimeter 10 maal groter "; +22070 PRINT"is dan een centimeter! "; 22080 RETURN -22090 PRINT "Jammer, het was bijna goed. "; -22100 PRINT S1$;:GOTO 22060 -22110 REM *******RENTEBEREENING********* -22120 HO=0:VE=8:GOSUB 110 -22130 PRINT "Rente over spaargeld (kapitaal) wordt "; -22140 PRINT "berekend in procenten (%) per jaar. ";S1$; -22150 PRINT "1% betekent daarbij een-honderdste "; -22160 PRINT "gedeelte. "; -22170 PRINT "Het kapitaal uit de opgave moet dus "; -22180 PRINT "eerst worden gedeeld door 100 (komma 2 "; -22190 PRINT "plaatsen naar voren) en daarna worden "; -22200 PRINT "vermenigvuldigd met het rentepercentage."; -22210 PRINT "(";RE;"% in de opgave).":GOSUB 23030 -22220 PRINT "Vervolgens moet het gevonden rente- "; -22230 PRINT "bedrag worden vermenigvuldigd met het "; -22240 PRINT "aantal jaren dat het kapitaal uitstaat, "; -22250 PRINT "zodat de opgave alsvolgt uitziet: ";S1$; -22260 PRINT "Kapitaal ";KP;" gulden wordt ";KP/100; -22270 PRINT " (1/100).";:VE=14:GOSUB 110 -22280 PRINT "Rente ";RE;"%, dus ";RE;"*";KP/100;"= ?"; -22290 VE=15:GOSUB 110 -22300 PRINT "Tijd ";JR; -22310 IF MN=6 THEN PRINT " en een half "; -22320 PRINT "jaar." -22330 VE=16:GOSUB 110 -22340 PRINT "De gevonden uitkomst moet dus nog worden"; -22350 PRINT "vermenigvuldigd met ";JR; -22360 IF MN=6 THEN PRINT " en een half.":RETURN +22090 PRINT"Jammer, het was bijna goed. "; +22100 PRINTS1$;:GOTO22060 +22110 REM*******RENTEBEREENING********* +22120 HO=0:VE=8:GOSUB110 +22130 PRINT"Rente over spaargeld (kapitaal) wordt "; +22140 PRINT"berekend in procenten (%) per jaar. ";S1$; +22150 PRINT"1% betekent daarbij een-honderdste "; +22160 PRINT"gedeelte. "; +22170 PRINT"Het kapitaal uit de opgave moet dus "; +22180 PRINT"eerst worden gedeeld door 100 (komma 2 "; +22190 PRINT"plaatsen naar voren) en daarna worden "; +22200 PRINT"vermenigvuldigd met het rentepercentage."; +22210 PRINT"(";RE;"% in de opgave).":GOSUB23030 +22220 PRINT"Vervolgens moet het gevonden rente- "; +22230 PRINT"bedrag worden vermenigvuldigd met het "; +22240 PRINT"aantal jaren dat het kapitaal uitstaat, "; +22250 PRINT"zodat de opgave alsvolgt uitziet: ";S1$; +22260 PRINT"Kapitaal ";KP;" gulden wordt ";KP/100; +22270 PRINT" (1/100).";:VE=14:GOSUB110 +22280 PRINT"Rente ";RE;"%, dus ";RE;"*";KP/100;"= ?"; +22290 VE=15:GOSUB110 +22300 PRINT"Tijd ";JR; +22310 IFMN=6 THENPRINT" en een half "; +22320 PRINT"jaar." +22330 VE=16:GOSUB110 +22340 PRINT"De gevonden uitkomst moet dus nog worden"; +22350 PRINT"vermenigvuldigd met ";JR; +22360 IFMN=6 THENPRINT" en een half.":RETURN 22370 RETURN -22400 REM ****************************** -22410 REM ** KLAAR-ROUTINES ** -22420 REM ****************************** -22430 GOSUB 100 -22450 PRINT VT$;VT$; -22460 FOR XX=0 TO 18 -22470 PRINT "??? ???"; -22480 NEXT XX -22490 PRINT VT$;VT$; -22500 HO=7:VE=6:GOSUB 110 -22520 IF PA>94 THEN PRINT "Fantastisch gedaan!";:GOTO 22590 -22530 IF PA>85 THEN PRINT "Prima gedaan.";:GOTO 22590 -22540 IF PA>75 THEN PRINT "Goed gedaan.";:GOTO 22590 -22550 IF PA>59 THEN PRINT "Dit was redelijk.";:GOTO 22590 -22560 IF PA<60 THEN PRINT "Met wat vaker oefenen";:VE=7 -22570 GOSUB 110:PRINT "wordt het resultaat";:VE=8 -22580 GOSUB 110:PRINT "vast veel beter."; -22590 HO=7:VE=12:GOSUB 110 -22600 PRINT "Het aantal behaalde"; -22610 VE=13:GOSUB 110 -22620 PRINT "punten bedraagt..........";PA; -22630 VE=18:GOSUB 110 -22640 IF FO=0 THEN PRINT "De uitwerking was foutloos"; -22650 IF FO=1 THEN PRINT "Er is slechts 1 fout gemaakt."; -22660 IF FO>1 THEN PRINT "Er zijn ";FO;" fouten gemaakt."; -22670 FOR XX=0 TO 2000:NEXT XX -22680 HO=13:VE=23:GOSUB 110:IN$="":GOSUB 23050 -22690 IF PK=3 THEN SO=0:PA=0:FO=0:GOTO 1220 -22700 GOSUB 100 -22710 REM ************** AFREKENING ** -22720 PRINT "AFREKENING:": -22730 PRINT S3$;:GOSUB 1610:PRINT S1$; -22740 IF PA>69 THEN VD=.25 -22750 IF PA>79 THEN VD=.5 -22760 IF PA>89 THEN VD=.75 -22770 IF PA>97 THEN VD=1 -22780 IF FO<4 THEN VD=VD+(1-FO*.25) -22790 CT=4:CN=2:SR=VD:GOSUB 310 -22810 PRINT S3$;"Behaald aantal punten: ";PA -22820 IF FO=0 THEN PRINT "De uitwerking was foutloos." -22830 IF FO>0 THEN PRINT "Aantal gemaakte fouten: ";FO -22840 IF VD=0 THEN PRINT "Deze keer helaas dus niets verdiend." -22850 IF VD=0 THEN PRINT "Volgende keer beter.":GOTO 22870 -22860 PRINT "Deze ronde levert dus op: fl. "SR$;"." -22870 GOSUB 210:END -23000 REM ****************************** -23010 REM ** OMBLADEREN ** -23020 REM ****************************** -23030 IN$="":IF PK=1 THEN HO=25:VE=23:GOTO 23050 +22400 REM****************************** +22410 REM** KLAAR-ROUTINES ** +22420 REM****************************** +22430 GOSUB100 +22450 PRINTVT$;VT$; +22460 FORXX=0 TO18 +22470 PRINT"??? ???"; +22480 NEXTXX +22490 PRINTVT$;VT$; +22500 HO=7:VE=6:GOSUB110 +22520 IFPA>94 THENPRINT"Fantastisch gedaan!";:GOTO22590 +22530 IFPA>85 THENPRINT"Prima gedaan.";:GOTO22590 +22540 IFPA>75 THENPRINT"Goed gedaan.";:GOTO22590 +22550 IFPA>59 THENPRINT"Dit was redelijk.";:GOTO22590 +22560 IFPA<60 THENPRINT"Met wat vaker oefenen";:VE=7 +22570 GOSUB110:PRINT"wordt het resultaat";:VE=8 +22580 GOSUB110:PRINT"vast veel beter."; +22590 HO=7:VE=12:GOSUB110 +22600 PRINT"Het aantal behaalde"; +22610 VE=13:GOSUB110 +22620 PRINT"punten bedraagt..........";PA; +22630 VE=18:GOSUB110 +22640 IFFO=0 THENPRINT"De uitwerking was foutloos"; +22650 IFFO=1 THENPRINT"Er is slechts 1 fout gemaakt."; +22660 IFFO>1 THENPRINT"Er zijn ";FO;" fouten gemaakt."; +22670 FORXX=0 TO2000:NEXTXX +22680 HO=13:VE=23:GOSUB110:IN$="":GOSUB23050 +22690 IFPK=3 THENSO=0:PA=0:FO=0:GOTO1220 +22700 GOSUB100 +22710 REM************** AFREKENING ** +22720 PRINT"AFREKENING:": +22730 PRINTS3$;:GOSUB1610:PRINTS1$; +22740 IFPA>69 THENVD=.25 +22750 IFPA>79 THENVD=.5 +22760 IFPA>89 THENVD=.75 +22770 IFPA>97 THENVD=1 +22780 IFFO<4 THENVD=VD+(1-FO*.25) +22790 CT=4:CN=2:SR=VD:GOSUB310 +22810 PRINTS3$;"Behaald aantal punten: ";PA +22820 IFFO=0 THENPRINT"De uitwerking was foutloos." +22830 IFFO>0 THENPRINT"Aantal gemaakte fouten: ";FO +22840 IFVD=0 THENPRINT"Deze keer helaas dus niets verdiend." +22850 IFVD=0 THENPRINT"Volgende keer beter.":GOTO22870 +22860 PRINT"Deze ronde levert dus op: fl. "SR$;"." +22870 GOSUB210:END +23000 REM****************************** +23010 REM** OMBLADEREN ** +23020 REM****************************** +23030 IN$="":IFPK=1 THENHO=25:VE=23:GOTO23050 23040 HO=26:VE=19 -23050 GOSUB 110:PRINT "< spatiebalk >"; -23060 FOR XX=0 TO 100:IF IN$="" THEN GOSUB 200 -23070 NEXT XX:GOSUB 110:PRINT " spatiebalk "; -23080 IF IN$<>"" THEN 23120 -23090 FOR XX=0 TO 100:IF IN$="" THEN GOSUB 200 -23100 NEXT XX -23110 IF IN$="" THEN 23050 -23120 IF PK>1 THEN HO=0:VE=8:GOSUB 110:PRINT S6$;S6$; -23130 IF PK>1 THEN GOSUB 110:RETURN -23140 GOSUB 100:RETURN -30000 REM ****************************** +23050 GOSUB110:PRINT"< spatiebalk >"; +23060 FORXX=0 TO100:IFIN$="" THENGOSUB200 +23070 NEXTXX:GOSUB110:PRINT" spatiebalk "; +23080 IFIN$<>"" THEN23120 +23090 FORXX=0 TO100:IFIN$="" THENGOSUB200 +23100 NEXTXX +23110 IFIN$="" THEN23050 +23120 IFPK>1 THENHO=0:VE=8:GOSUB110:PRINTS6$;S6$; +23130 IFPK>1 THENGOSUB110:RETURN +23140 GOSUB100:RETURN +30000 REM****************************** 30010 REM GEEN ZAKGELD IN HET PROGRAMMA 30020 REM DAN TE VERWIJDEREN DE REGELS: 30030 REM 1440- 1510, @@ -555,21 +556,21 @@ 30110 REM VEREENVOUDIGING VAN DE SOMMEN 30120 REM IS MOGELIJK DOOR DE VOLGENDE 30130 REM AANPASSINGEN: -30140 REM +30140 REM 30150 REM OPTELLEN/AFTREKKEN: 30160 REM DE WAARDE 1000 IN DE REGELS 30170 REM 3130-3150 VERKLEINEN EN 30180 REM TOE TE VOEGEN REGEL 30190 REM 3155 IFZ>X+YTHENH=Z:Z=Y:Y=H -30210 REM +30210 REM 30220 REM VERMENIGVULDIGEN 30230 REM DE WAARDE 20 IN DE REGELS 30240 REM 3330 EN 3340 VERLAGEN. -30250 REM +30250 REM 30260 REM DELEN 30270 REM DE WAARDE 20 IN DE REGELS 30280 REM 3430 EN 3440 VERLAGEN. -30290 REM +30290 REM 30300 REM BREUKEN 30310 REM DE WAARDEN 4 EN 8 IN REGELS 30320 REM 3540-3570 VERLAGEN EN/OF @@ -581,13 +582,13 @@ 30480 REM 3595 IFNA<>NBTHEN3540 30490 REM EN DE WAARDE 4 IN REGEL 3630 30500 REM VERANDEREN IN 2 -30510 REM +30510 REM 30520 REM INHOUD 30530 REM BEREKENINGEN UITSLUITEND IN 30540 REM DM3 DOOR DE WAARDEN 2 IN DE 30550 REM REGELS 5030, 5050 EN 5070 30560 REM TE VERANDEREN IN 1 -30570 REM +30570 REM 30580 REM RENTEBEREKENING 30590 REM IN REGEL 5530 DE WAARDE 18 30600 REM VERANDEREN IN 8 EN ' *.5 ' @@ -614,4 +615,3 @@ 31570 REM * OUD-BEIJERLAND * 31580 REM ****************** 31590 REM COPYRIGHT NOS HILVERSUM 1987 - \ No newline at end of file diff --git a/Best_of_Basicode_4/22_Talstelsels.bc2 b/Best_of_Basicode_4/22_Talstelsels.bc2 index 6daead0..bb854cf 100644 --- a/Best_of_Basicode_4/22_Talstelsels.bc2 +++ b/Best_of_Basicode_4/22_Talstelsels.bc2 @@ -1,83 +1,84 @@ -1000 A=1000:GOTO 20 + +1000 A=1000:GOTO20 1010 REM Stelsels -1020 DIM H$(15),L$(15),QA$(8),QB$(8) -1030 GOSUB 22240:REM inlezen data -1040 GOSUB 100 -1050 HO=13:VE=6:GOSUB 110 -1060 PRINT ;"* DECIMAAL *" -1070 HO=11:VE=9:GOSUB 110 -1080 PRINT ;"* HEXADECIMAAL *" -1090 HO=14:VE=12:GOSUB 110 -1100 PRINT ;"* BINAIR *" -1110 FOR T=1 TO VT*75:NEXT T +1020 DIMH$(15),L$(15),QA$(8),QB$(8) +1030 GOSUB22240:REM inlezen data +1040 GOSUB100 +1050 HO=13:VE=6:GOSUB110 +1060 PRINT;"* DECIMAAL *" +1070 HO=11:VE=9:GOSUB110 +1080 PRINT;"* HEXADECIMAAL *" +1090 HO=14:VE=12:GOSUB110 +1100 PRINT;"* BINAIR *" +1110 FORT=1 TOVT*75:NEXTT 1120 : 1130 REM DEEL 1 UITLEG -1140 F=0:GOSUB 100 -1150 HO=0:VE=5:GOSUB 110 -1160 PRINT ;"Dit programma bestaat uit twee delen." -1170 PRINT :PRINT :PRINT -1180 PRINT " Het eerste deel is bedoeld om U" -1190 PRINT " inzicht te geven in het 2-tallig" -1200 PRINT " en het 16-tallig stelsel." -1210 PRINT :PRINT -1220 PRINT " Het tweede gedeelte is een reken" -1230 PRINT " programma waarmee U getallen in" -1240 PRINT " de andere stelsels kunt omzetten." -1250 PRINT :PRINT " Na deel 1 komt U vanzelf in 2." -1260 PRINT :PRINT -1270 PRINT " Uw keuze 1 of 2 "; -1280 GOSUB 21200:REM buffer leeg -1290 GOSUB 210 -1300 IF IN$="1" THEN 1330 -1310 IF IN$="2" THEN 4130 -1320 GOTO 1280 -1330 GOSUB 100 -1340 PRINT :PRINT -1350 PRINT "Wij zijn gewend in het tien-tallig of" -1360 PRINT "decimale stelsel te rekenen." -1370 PRINT -1380 PRINT "Hiervoor hebben we de beschikking over" -1390 PRINT "de cijfers 0 t/m 9, waarmee we alle" -1400 PRINT "mogelijke getallen kunnen samenstellen." -1410 PRINT -1420 PRINT "De computer bestaat uit vele duizenden" -1430 PRINT "electronische schakelaars." -1440 PRINT " Zo'n schakelaar kent 2 standen:" -1450 PRINT -1460 PRINT " UIT of 0 AAN of 1" -1470 PRINT -1480 PRINT "Om de computer te laten werken moeten" -1490 PRINT "we dus een systeem gebruiken, waarmee" -1500 PRINT "we getallen opbouwen met 2 cijfers" -1510 PRINT "in plaats van de 10 die we gewend zijn." -1520 PRINT -1530 PRINT "We moeten gaan werken met het" -1540 PRINT "twee-tallig of BINAIRE stelsel." -1550 GOSUB 20530:REM verder -1560 PRINT :PRINT -1570 PRINT "Op de volgende pagina's wordt de opbouw" -1580 PRINT "van respectievelijk een decimaal en een" -1590 PRINT "binair getal getoond." -1600 PRINT -1610 PRINT "Na de opbouw van de getallen ziet U de" -1620 PRINT "rekenkundige samenstelling." -1630 PRINT "Hieruit volgt voor het binaire getal" -1640 PRINT "vanzelf de omzetting naar decimaal." -1650 PRINT :PRINT -1660 PRINT "Het binaire getal bestaat, zoals U zult" -1670 PRINT "zien uit 8 cijfers." -1680 PRINT -1690 PRINT "We noemen dit 8 bit of 1 byte." -1700 PRINT :PRINT -1710 PRINT "In de opbouw schema's komt U ^ tegen." -1720 PRINT "Dit teken betekent: - tot de macht -" -1730 PRINT -1740 PRINT "B.V. 10^3 = 10x10x10 = 1000" -1750 GOSUB 20530:REM verder -1760 HO=1:VE=3:GOSUB 110 -1770 PRINT ;"We bekijken eerst een decimaal getal." -1780 VE=5:GOSUB 110 -1790 PRINT ;" b.v." +1140 F=0:GOSUB100 +1150 HO=0:VE=5:GOSUB110 +1160 PRINT;"Dit programma bestaat uit twee delen." +1170 PRINT:PRINT:PRINT +1180 PRINT" Het eerste deel is bedoeld om U" +1190 PRINT" inzicht te geven in het 2-tallig" +1200 PRINT" en het 16-tallig stelsel." +1210 PRINT:PRINT +1220 PRINT" Het tweede gedeelte is een reken" +1230 PRINT" programma waarmee U getallen in" +1240 PRINT" de andere stelsels kunt omzetten." +1250 PRINT:PRINT" Na deel 1 komt U vanzelf in 2." +1260 PRINT:PRINT +1270 PRINT" Uw keuze 1 of 2 "; +1280 GOSUB21200:REM buffer leeg +1290 GOSUB210 +1300 IFIN$="1" THEN1330 +1310 IFIN$="2" THEN4130 +1320 GOTO1280 +1330 GOSUB100 +1340 PRINT:PRINT +1350 PRINT"Wij zijn gewend in het tien-tallig of" +1360 PRINT"decimale stelsel te rekenen." +1370 PRINT +1380 PRINT"Hiervoor hebben we de beschikking over" +1390 PRINT"de cijfers 0 t/m 9, waarmee we alle" +1400 PRINT"mogelijke getallen kunnen samenstellen." +1410 PRINT +1420 PRINT"De computer bestaat uit vele duizenden" +1430 PRINT"electronische schakelaars." +1440 PRINT" Zo'n schakelaar kent 2 standen:" +1450 PRINT +1460 PRINT" UIT of 0 AAN of 1" +1470 PRINT +1480 PRINT"Om de computer te laten werken moeten" +1490 PRINT"we dus een systeem gebruiken, waarmee" +1500 PRINT"we getallen opbouwen met 2 cijfers" +1510 PRINT"in plaats van de 10 die we gewend zijn." +1520 PRINT +1530 PRINT"We moeten gaan werken met het" +1540 PRINT"twee-tallig of BINAIRE stelsel." +1550 GOSUB20530:REM verder +1560 PRINT:PRINT +1570 PRINT"Op de volgende pagina's wordt de opbouw" +1580 PRINT"van respectievelijk een decimaal en een" +1590 PRINT"binair getal getoond." +1600 PRINT +1610 PRINT"Na de opbouw van de getallen ziet U de" +1620 PRINT"rekenkundige samenstelling." +1630 PRINT"Hieruit volgt voor het binaire getal" +1640 PRINT"vanzelf de omzetting naar decimaal." +1650 PRINT:PRINT +1660 PRINT"Het binaire getal bestaat, zoals U zult" +1670 PRINT"zien uit 8 cijfers." +1680 PRINT +1690 PRINT"We noemen dit 8 bit of 1 byte." +1700 PRINT:PRINT +1710 PRINT"In de opbouw schema's komt U ^ tegen." +1720 PRINT"Dit teken betekent: - tot de macht -" +1730 PRINT +1740 PRINT"B.V. 10^3 = 10x10x10 = 1000" +1750 GOSUB20530:REM verder +1760 HO=1:VE=3:GOSUB110 +1770 PRINT;"We bekijken eerst een decimaal getal." +1780 VE=5:GOSUB110 +1790 PRINT;" b.v." 1800 A$="49683" 1810 QA$(1)="Tienduizendtallen" 1820 QB$(1)="x 10^4 of 4 x 10000 = 40000" @@ -89,15 +90,15 @@ 1880 QB$(4)="x 10^1 of 8 x 10 = 80" 1890 QA$(5)="Eenheden" 1900 QB$(5)="x 10^0 of 3 x 1 = 3" -1910 GOSUB 20000:REM verplaats getal -1920 FOR I=1 TO VT*60:NEXT I -1930 GOSUB 20360:REM wissel tekst -1940 HO=27:VE=18:GOSUB 110 -1950 PRINT ;"----- +" -1960 HO=8:VE=20:GOSUB 110 -1970 FOR K=1 TO VT*30:NEXT K -1980 PRINT ;"Samen is het weer 49683" -1990 GOSUB 20530:REM verder +1910 GOSUB20000:REM verplaats getal +1920 FORI=1 TOVT*60:NEXTI +1930 GOSUB20360:REM wissel tekst +1940 HO=27:VE=18:GOSUB110 +1950 PRINT;"----- +" +1960 HO=8:VE=20:GOSUB110 +1970 FORK=1 TOVT*30:NEXTK +1980 PRINT;"Samen is het weer 49683" +1990 GOSUB20530:REM verder 2000 A$="10100110" 2010 QA$(1)=" 128 tallen" 2020 QB$(1)="x 2^7 of 1 x 128 = 128" @@ -115,125 +116,125 @@ 2140 QB$(7)="x 2^1 of 1 x 2 = 2" 2150 QA$(8)=" Eenheden" 2160 QB$(8)="x 2^0 of 0 x 1 = 0" -2170 HO=1:VE=2:GOSUB 110 -2180 PRINT ;"Binair" +2170 HO=1:VE=2:GOSUB110 +2180 PRINT;"Binair" 2190 F=3 -2200 GOSUB 20000:REM verplaats getal -2210 FOR I=1 TO VT*60:NEXT I -2220 GOSUB 20360:REM wissel tekst +2200 GOSUB20000:REM verplaats getal +2210 FORI=1 TOVT*60:NEXTI +2220 GOSUB20360:REM wissel tekst 2230 F=0 -2240 HO=24:VE=20:GOSUB 110 -2250 PRINT ;"--- +" -2260 FOR K=1 TO VT*30:NEXT K -2270 PRINT " Decimaal is dit 166" -2280 GOSUB 20530:REM verder -2290 PRINT :PRINT :PRINT -2300 PRINT "Is het verschil U opgevallen ?" -2310 PRINT -2320 PRINT " Decimaal 10^3" -2330 PRINT -2340 PRINT " Binair 2^3" -2350 PRINT -2360 PRINT "In de praktijk is het erg lastig om" -2370 PRINT "altijd met lange binaire getallen te" -2380 PRINT "moeten werken." -2390 PRINT -2400 PRINT "Daarom nemen we 4 binaire cijfers bij" -2410 PRINT "elkaar en dan blijkt, dat er met deze" -2420 PRINT "vier cijfers 16 combinaties te maken" -2430 PRINT "zijn." -2440 PRINT " Van 0000 t/m 1111." -2450 PRINT -2460 PRINT "Met deze 16 kunnen we het 16 tallig of" -2470 PRINT "het HEXADECIMALE stelsel vormen." -2480 GOSUB 20530:REM verder -2490 PRINT :PRINT :PRINT -2500 PRINT "Daar er maar 10 cijfers zijn 0 t/m 9" -2510 PRINT "gebruiken we voor de waarde's 10 t/m 15" -2520 PRINT "de letters A B C D E F." -2530 PRINT :PRINT -2540 PRINT "Op de volgende pagina kunt U zelf een" -2550 PRINT "4 bit binair getal intikken en zien" -2560 PRINT "hoe hieruit een hex. waarde ontstaat." -2570 PRINT :PRINT -2580 PRINT "Als U een 0 of een 1 intikt, worden op" -2590 PRINT "gelijke hoogte 1 of meer schakelaars" -2600 PRINT "naar links of naar rechts getekend." -2610 PRINT -2620 PRINT "Boven in beeld staat Uw binaire getal." -2630 PRINT -2640 PRINT "Als U de doorgaande lijn van boven naar" -2650 PRINT "beneden volgt, komt U uit bij de hex." -2660 PRINT "waarde van Uw binaire getal." -2670 GOSUB 20530:REM verder +2240 HO=24:VE=20:GOSUB110 +2250 PRINT;"--- +" +2260 FORK=1 TOVT*30:NEXTK +2270 PRINT" Decimaal is dit 166" +2280 GOSUB20530:REM verder +2290 PRINT:PRINT:PRINT +2300 PRINT"Is het verschil U opgevallen ?" +2310 PRINT +2320 PRINT" Decimaal 10^3" +2330 PRINT +2340 PRINT" Binair 2^3" +2350 PRINT +2360 PRINT"In de praktijk is het erg lastig om" +2370 PRINT"altijd met lange binaire getallen te" +2380 PRINT"moeten werken." +2390 PRINT +2400 PRINT"Daarom nemen we 4 binaire cijfers bij" +2410 PRINT"elkaar en dan blijkt, dat er met deze" +2420 PRINT"vier cijfers 16 combinaties te maken" +2430 PRINT"zijn." +2440 PRINT" Van 0000 t/m 1111." +2450 PRINT +2460 PRINT"Met deze 16 kunnen we het 16 tallig of" +2470 PRINT"het HEXADECIMALE stelsel vormen." +2480 GOSUB20530:REM verder +2490 PRINT:PRINT:PRINT +2500 PRINT"Daar er maar 10 cijfers zijn 0 t/m 9" +2510 PRINT"gebruiken we voor de waarde's 10 t/m 15" +2520 PRINT"de letters A B C D E F." +2530 PRINT:PRINT +2540 PRINT"Op de volgende pagina kunt U zelf een" +2550 PRINT"4 bit binair getal intikken en zien" +2560 PRINT"hoe hieruit een hex. waarde ontstaat." +2570 PRINT:PRINT +2580 PRINT"Als U een 0 of een 1 intikt, worden op" +2590 PRINT"gelijke hoogte 1 of meer schakelaars" +2600 PRINT"naar links of naar rechts getekend." +2610 PRINT +2620 PRINT"Boven in beeld staat Uw binaire getal." +2630 PRINT +2640 PRINT"Als U de doorgaande lijn van boven naar" +2650 PRINT"beneden volgt, komt U uit bij de hex." +2660 PRINT"waarde van Uw binaire getal." +2670 GOSUB20530:REM verder 2680 REM Teken het schema -2690 GOSUB 100 -2700 HO=9:VE=1:GOSUB 110 -2710 PRINT ;"Bin. =" -2720 RESTORE -2730 GOSUB 22240:REM data inlezen -2740 READ HO:READ VE -2750 IF HO=50 THEN 2800 +2690 GOSUB100 +2700 HO=9:VE=1:GOSUB110 +2710 PRINT;"Bin. =" +2720 RESTORE +2730 GOSUB22240:REM data inlezen +2740 READHO:READVE +2750 IFHO=50 THEN2800 2760 HO=HO+2:VE=VE-1 -2770 GOSUB 110 -2780 PRINT ;"o"; -2790 GOTO 2740 -2800 HO=0:VE=22:GOSUB 110 -2810 PRINT ;"Hex. : 0 1 2 3 4 5 6 "; -2820 PRINT ;"7 8 9 A B C D E F"; -2830 W=0:FOR I=0 TO 3 +2770 GOSUB110 +2780 PRINT;"o"; +2790 GOTO2740 +2800 HO=0:VE=22:GOSUB110 +2810 PRINT;"Hex. : 0 1 2 3 4 5 6 "; +2820 PRINT;"7 8 9 A B C D E F"; +2830 W=0:FORI=0 TO3 2840 HO=0:VE=I+(3-I)+I*5 -2850 GOSUB 110 -2860 PRINT ;"S";I+1;"-"; -2870 GOSUB 21200:GOSUB 210 -2880 IF IN$="0" THEN GOSUB 20600:GOTO 2910 -2890 IF IN$="1" THEN GOSUB 20870:GOTO 2910 -2900 GOTO 2870 +2850 GOSUB110 +2860 PRINT;"S";I+1;"-"; +2870 GOSUB21200:GOSUB210 +2880 IFIN$="0" THENGOSUB20600:GOTO2910 +2890 IFIN$="1" THENGOSUB20870:GOTO2910 +2900 GOTO2870 2910 U=8 -2920 IF I=1 THEN U=4 -2930 IF I=2 THEN U=2 -2940 IF I=3 THEN U=1 +2920 IFI=1 THENU=4 +2930 IFI=2 THENU=2 +2940 IFI=3 THENU=1 2950 W=W+(ASC(IN$)-48)*U -2960 VE=1:HO=14+I:GOSUB 110 -2970 PRINT ;IN$; -2980 NEXT I -2990 VE=21:HO=7+2*W:GOSUB 110 -3000 PRINT ;"!"; -3010 HO=10:VE=24:GOSUB 110 -3020 PRINT ;"Nog een keer ? J/N "; -3030 GOSUB 21200:REM buffer leeg -3040 GOSUB 210 +2960 VE=1:HO=14+I:GOSUB110 +2970 PRINT;IN$; +2980 NEXTI +2990 VE=21:HO=7+2*W:GOSUB110 +3000 PRINT;"!"; +3010 HO=10:VE=24:GOSUB110 +3020 PRINT;"Nog een keer ? J/N "; +3030 GOSUB21200:REM buffer leeg +3040 GOSUB210 3050 LE$=IN$ -3060 IF (LE$="J") OR(LE$="j") THEN 2680 -3070 IF (LE$="N") OR(LE$="n") THEN 3090 -3080 GOTO 3030 -3090 GOSUB 100 -3100 PRINT :PRINT -3110 PRINT "Uit het schema van de vorige pagina" -3120 PRINT "blijkt o.a." -3130 PRINT " 0101 = 5 hex." -3140 PRINT " 1010 = A hex." -3150 PRINT " 0011 = 3 hex." -3160 PRINT " 1111 = F hex." -3170 PRINT -3180 PRINT "We kunnen de binaire getallen achter" -3190 PRINT "elkaar zetten, om een groot getal te" -3200 PRINT "vormen." -3210 PRINT -3220 PRINT " 0101 1010 0011 1111" -3230 PRINT -3240 PRINT "Zoals U ziet, hebben we een onhandig" -3250 PRINT "lang getal gekregen." -3260 PRINT -3270 PRINT "Eenvoudiger wordt het, als we de hex." -3280 PRINT "waarde's achter elkaar zetten: 5A3F" -3290 PRINT -3300 PRINT "De waarde van beide getallen is gelijk." -3310 GOSUB 20530:REM verder -3320 HO=1:VE=3:GOSUB 110 -3330 PRINT ;"Laten we dit getal eens bekijken;" -3340 VE=5:GOSUB 110 -3350 PRINT ;" Hex." +3060 IF(LE$="J") OR(LE$="j") THEN2680 +3070 IF(LE$="N") OR(LE$="n") THEN3090 +3080 GOTO3030 +3090 GOSUB100 +3100 PRINT:PRINT +3110 PRINT"Uit het schema van de vorige pagina" +3120 PRINT"blijkt o.a." +3130 PRINT" 0101 = 5 hex." +3140 PRINT" 1010 = A hex." +3150 PRINT" 0011 = 3 hex." +3160 PRINT" 1111 = F hex." +3170 PRINT +3180 PRINT"We kunnen de binaire getallen achter" +3190 PRINT"elkaar zetten, om een groot getal te" +3200 PRINT"vormen." +3210 PRINT +3220 PRINT" 0101 1010 0011 1111" +3230 PRINT +3240 PRINT"Zoals U ziet, hebben we een onhandig" +3250 PRINT"lang getal gekregen." +3260 PRINT +3270 PRINT"Eenvoudiger wordt het, als we de hex." +3280 PRINT"waarde's achter elkaar zetten: 5A3F" +3290 PRINT +3300 PRINT"De waarde van beide getallen is gelijk." +3310 GOSUB20530:REM verder +3320 HO=1:VE=3:GOSUB110 +3330 PRINT;"Laten we dit getal eens bekijken;" +3340 VE=5:GOSUB110 +3350 PRINT;" Hex." 3360 A$="5A3F" 3370 QA$(1)=" 4096 tallen" 3380 QB$(1)="x 16^3 of 5 x 4096 = 20480" @@ -243,492 +244,491 @@ 3420 QB$(3)="x 16^1 of 3 x 16 = 48" 3430 QA$(4)=" Eenheden" 3440 QB$(4)="x 16^0 of 15 x 1 = 15" -3450 GOSUB 20000:REM verplaats getal -3460 FOR I=1 TO VT*60:NEXT I -3470 GOSUB 20360:REM wissel tekst -3480 HO=27:VE=16:GOSUB 110 -3490 PRINT ;"----- +" -3500 HO=6:VE=18:GOSUB 110 -3510 FOR K=1 TO VT*30:NEXT K -3520 PRINT ;"Decimale waarde is: 23103" -3530 GOSUB 20530:REM verder -3540 PRINT :PRINT :PRINT -3550 PRINT "Om hex. getallen van decimale getallen" -3560 PRINT "te kunnen onderscheiden, worden hex." -3570 PRINT "getallen aangegeven met &, &H of H." -3580 PRINT "Dit verschilt per computer." -3590 PRINT -3600 PRINT "U heeft waarschijnlijk al ontdekt, dat" -3610 PRINT "een hex. getal van 2 cijfers overeen" -3620 PRINT "komt met een 8 bit binair getal." -3630 PRINT -3640 PRINT "Omdat de home-computer een 8 bit micro" -3650 PRINT "processor heeft, worden binaire - en" -3660 PRINT "hex. getallen met nullen aangevuld tot" -3670 PRINT "8 bit." -3680 PRINT " &E wordt &0E" -3690 PRINT " 0011 wordt 00000011" -3700 PRINT -3710 PRINT "Wat U nu nog mist is een eenvoudige" -3720 PRINT "methode om van decimaal naar de andere" -3730 PRINT "stelsels om te rekenen." -3740 GOSUB 20530:REM verder -3750 PRINT :PRINT -3760 PRINT "Het is een kwestie van delen." -3770 PRINT -3780 PRINT "Als voorbeeld blijven we even in het" -3790 PRINT "10 tallige stelsel." -3800 PRINT :PRINT -3810 PRINT "We nemen een getal 3581 en gaan" -3820 PRINT -3830 PRINT "delen door 10 . . 3581:10=358 rest 1" -3840 PRINT -3850 PRINT "uitkomst 358 . . . 358:10=35 rest 8" -3860 PRINT -3870 PRINT "uitkomst 35 . . . . 35:10=3 rest 5" -3880 PRINT -3890 PRINT "uitkomst 3 . . . . . 3:10=0 rest 3" -3900 PRINT :PRINT -3910 PRINT "Als we nu de resten van de delingen" -3920 PRINT "van beneden naar boven opschrijven" -3930 PRINT "krijgen we 3581 terug." -3940 GOSUB 20530:REM verder -3950 PRINT :PRINT :PRINT -3960 PRINT "Door een getal op dezelfde wijze te" -3970 PRINT "delen door 2 krijgt U als rest steeds" -3980 PRINT "een 1 of een 0." -3990 PRINT -4000 PRINT "Als U nu weer van onder naar boven" -4010 PRINT "leest ziet U de binaire waarde van" -4020 PRINT "het decimale getal." -4030 PRINT -4040 PRINT "Probeer het maar eens." -4050 PRINT :PRINT -4060 PRINT "Delen door 16 geeft als resultaat een" -4070 PRINT "hexadecimaal getal." -4080 PRINT :PRINT -4090 PRINT "Eenvoudiger is het om gebruik te maken" -4100 PRINT "van het hierna volgende programma." -4110 GOSUB 20530:REM verder +3450 GOSUB20000:REM verplaats getal +3460 FORI=1 TOVT*60:NEXTI +3470 GOSUB20360:REM wissel tekst +3480 HO=27:VE=16:GOSUB110 +3490 PRINT;"----- +" +3500 HO=6:VE=18:GOSUB110 +3510 FORK=1 TOVT*30:NEXTK +3520 PRINT;"Decimale waarde is: 23103" +3530 GOSUB20530:REM verder +3540 PRINT:PRINT:PRINT +3550 PRINT"Om hex. getallen van decimale getallen" +3560 PRINT"te kunnen onderscheiden, worden hex." +3570 PRINT"getallen aangegeven met &, &H of H." +3580 PRINT"Dit verschilt per computer." +3590 PRINT +3600 PRINT"U heeft waarschijnlijk al ontdekt, dat" +3610 PRINT"een hex. getal van 2 cijfers overeen" +3620 PRINT"komt met een 8 bit binair getal." +3630 PRINT +3640 PRINT"Omdat de home-computer een 8 bit micro" +3650 PRINT"processor heeft, worden binaire - en" +3660 PRINT"hex. getallen met nullen aangevuld tot" +3670 PRINT"8 bit." +3680 PRINT" &E wordt &0E" +3690 PRINT" 0011 wordt 00000011" +3700 PRINT +3710 PRINT"Wat U nu nog mist is een eenvoudige" +3720 PRINT"methode om van decimaal naar de andere" +3730 PRINT"stelsels om te rekenen." +3740 GOSUB20530:REM verder +3750 PRINT:PRINT +3760 PRINT"Het is een kwestie van delen." +3770 PRINT +3780 PRINT"Als voorbeeld blijven we even in het" +3790 PRINT"10 tallige stelsel." +3800 PRINT:PRINT +3810 PRINT"We nemen een getal 3581 en gaan" +3820 PRINT +3830 PRINT"delen door 10 . . 3581:10=358 rest 1" +3840 PRINT +3850 PRINT"uitkomst 358 . . . 358:10=35 rest 8" +3860 PRINT +3870 PRINT"uitkomst 35 . . . . 35:10=3 rest 5" +3880 PRINT +3890 PRINT"uitkomst 3 . . . . . 3:10=0 rest 3" +3900 PRINT:PRINT +3910 PRINT"Als we nu de resten van de delingen" +3920 PRINT"van beneden naar boven opschrijven" +3930 PRINT"krijgen we 3581 terug." +3940 GOSUB20530:REM verder +3950 PRINT:PRINT:PRINT +3960 PRINT"Door een getal op dezelfde wijze te" +3970 PRINT"delen door 2 krijgt U als rest steeds" +3980 PRINT"een 1 of een 0." +3990 PRINT +4000 PRINT"Als U nu weer van onder naar boven" +4010 PRINT"leest ziet U de binaire waarde van" +4020 PRINT"het decimale getal." +4030 PRINT +4040 PRINT"Probeer het maar eens." +4050 PRINT:PRINT +4060 PRINT"Delen door 16 geeft als resultaat een" +4070 PRINT"hexadecimaal getal." +4080 PRINT:PRINT +4090 PRINT"Eenvoudiger is het om gebruik te maken" +4100 PRINT"van het hierna volgende programma." +4110 GOSUB20530:REM verder 4120 : 4130 REM DEEL 2 REKEN-PROGRAMMA -4140 GOSUB 100 -4150 HO=2:VE=3:GOSUB 110 -4160 PRINT ;"Dit is het omreken programma," -4170 PRINT :PRINT " voor decimale, hexadecimale en" -4180 PRINT :PRINT " binaire getallen." -4190 VE=11:GOSUB 110 -4200 PRINT "Er zijn 3 mogelijkheden:" -4210 PRINT :PRINT " 1 - Berekening per getal." -4220 PRINT :PRINT " 2 - Alle getallen van 0 t/m 255." -4230 PRINT :PRINT " 3 - Printer uitvoer in tabelvorm." -4240 PRINT :PRINT :PRINT -4250 PRINT " Uw keuze ? "; -4260 GOSUB 21200:REM buffer leeg -4270 GOSUB 210 -4280 IF IN$="1" THEN 4320 -4290 IF IN$="2" THEN 4740 -4300 IF IN$="3" THEN 4980 -4310 GOTO 4260 -4320 GOSUB 100 -4330 HO=3:VE=2:GOSUB 110 -4340 PRINT ;"Ook hier zijn 3 mogelijkheden:" -4350 PRINT -4360 PRINT :PRINT " D - Decimaal getal invoeren." -4370 PRINT :PRINT " H - Hexadecimaal getal invoeren." -4380 PRINT :PRINT " B - Binair getal invoeren." -4390 PRINT :PRINT -4400 PRINT " Het ingevoerde getal wordt in de" -4410 PRINT " beide andere stelsels omgezet." -4420 PRINT :PRINT -4430 PRINT " Met M krijgt U het menu terug." -4440 PRINT -4450 PRINT " Met T gaat U terug naar het begin." -4460 PRINT -4470 PRINT " Met S verlaat U het programma." -4480 PRINT :PRINT -4490 PRINT :PRINT " Uw keuze ? "; -4500 GOSUB 21200:REM buffer leeg -4510 GOSUB 210 +4140 GOSUB100 +4150 HO=2:VE=3:GOSUB110 +4160 PRINT;"Dit is het omreken programma," +4170 PRINT:PRINT" voor decimale, hexadecimale en" +4180 PRINT:PRINT" binaire getallen." +4190 VE=11:GOSUB110 +4200 PRINT"Er zijn 3 mogelijkheden:" +4210 PRINT:PRINT" 1 - Berekening per getal." +4220 PRINT:PRINT" 2 - Alle getallen van 0 t/m 255." +4230 PRINT:PRINT" 3 - Printer uitvoer in tabelvorm." +4240 PRINT:PRINT:PRINT +4250 PRINT" Uw keuze ? "; +4260 GOSUB21200:REM buffer leeg +4270 GOSUB210 +4280 IFIN$="1" THEN4320 +4290 IFIN$="2" THEN4740 +4300 IFIN$="3" THEN4980 +4310 GOTO4260 +4320 GOSUB100 +4330 HO=3:VE=2:GOSUB110 +4340 PRINT;"Ook hier zijn 3 mogelijkheden:" +4350 PRINT +4360 PRINT:PRINT" D - Decimaal getal invoeren." +4370 PRINT:PRINT" H - Hexadecimaal getal invoeren." +4380 PRINT:PRINT" B - Binair getal invoeren." +4390 PRINT:PRINT +4400 PRINT" Het ingevoerde getal wordt in de" +4410 PRINT" beide andere stelsels omgezet." +4420 PRINT:PRINT +4430 PRINT" Met M krijgt U het menu terug." +4440 PRINT +4450 PRINT" Met T gaat U terug naar het begin." +4460 PRINT +4470 PRINT" Met S verlaat U het programma." +4480 PRINT:PRINT +4490 PRINT:PRINT" Uw keuze ? "; +4500 GOSUB21200:REM buffer leeg +4510 GOSUB210 4520 LE$=IN$ -4530 IF (LE$="D") OR(LE$="d") THEN 4600 -4540 IF (LE$="H") OR(LE$="h") THEN 4640 -4550 IF (LE$="B") OR(LE$="b") THEN 4680 -4560 IF (LE$="M") OR(LE$="m") THEN 4130 -4570 IF (LE$="T") OR(LE$="t") THEN 1130 -4580 IF (LE$="S") OR(LE$="s") THEN 5320 -4590 GOTO 4500 -4600 GOSUB 21370:REM dec input -4610 GOSUB 22320:REM bepalen hex waarde -4620 GOSUB 22030:REM scherm-uitvoer -4630 GOTO 4710 -4640 GOSUB 21500:REM hex input -4650 GOSUB 22320 -4660 GOSUB 22030 -4670 GOTO 4710 -4680 GOSUB 21760:REM bin input -4690 GOSUB 22320 -4700 GOSUB 22030 -4710 HO=4:VE=20:GOSUB 110 -4720 PRINT ;"Uw keuze D H B M T S ? "; -4730 GOTO 4500 +4530 IF(LE$="D") OR(LE$="d") THEN4600 +4540 IF(LE$="H") OR(LE$="h") THEN4640 +4550 IF(LE$="B") OR(LE$="b") THEN4680 +4560 IF(LE$="M") OR(LE$="m") THEN4130 +4570 IF(LE$="T") OR(LE$="t") THEN1130 +4580 IF(LE$="S") OR(LE$="s") THEN5320 +4590 GOTO4500 +4600 GOSUB21370:REM dec input +4610 GOSUB22320:REM bepalen hex waarde +4620 GOSUB22030:REM scherm-uitvoer +4630 GOTO4710 +4640 GOSUB21500:REM hex input +4650 GOSUB22320 +4660 GOSUB22030 +4670 GOTO4710 +4680 GOSUB21760:REM bin input +4690 GOSUB22320 +4700 GOSUB22030 +4710 HO=4:VE=20:GOSUB110 +4720 PRINT;"Uw keuze D H B M T S ? "; +4730 GOTO4500 4740 DE=0:Y=0 -4750 FOR J=1 TO 16 -4760 GOSUB 100 -4770 PRINT :PRINT :PRINT :PRINT -4780 FOR K=0 TO 15 +4750 FORJ=1 TO16 +4760 GOSUB100 +4770 PRINT:PRINT:PRINT:PRINT +4780 FORK=0 TO15 4790 DE=Y+K -4800 GOSUB 22320:REM bepalen hex waarde -4810 GOSUB 22030:REM scherm-uitvoer -4820 NEXT K +4800 GOSUB22320:REM bepalen hex waarde +4810 GOSUB22030:REM scherm-uitvoer +4820 NEXTK 4830 Y=Y+16 -4840 HO=2:VE=23:GOSUB 110 -4850 IF J=16 THEN 4930 -4860 PRINT ;" V = verder S = stop "; -4870 GOSUB 21200:REM buffer leeg -4880 GOSUB 210 +4840 HO=2:VE=23:GOSUB110 +4850 IFJ=16 THEN4930 +4860 PRINT;" V = verder S = stop "; +4870 GOSUB21200:REM buffer leeg +4880 GOSUB210 4890 LE$=IN$ -4900 IF (LE$="V") OR(LE$="v") THEN 4960 -4910 IF (LE$="S") OR(LE$="s") THEN J=16:GOTO 4960 -4920 GOTO 4870 -4930 PRINT ;"Meer is er niet. Opnieuw met toets."; -4940 GOSUB 21200:REM buffer leeg -4950 GOSUB 210 -4960 NEXT J -4970 GOTO 4140 -4980 GOSUB 100 -4990 HO=2:VE=10:GOSUB 110 -5000 PRINT ;"Printer-mode:" -5010 PRINT :PRINT " 80 karakters per regel." -5020 PRINT :PRINT " Minimaal 52 regels." -5030 HO=2:VE=20:GOSUB 110 -5040 PRINT ;"Druk op een toets voor START "; -5050 GOSUB 21200:REM buffer leeg -5060 GOSUB 210 -5070 GOSUB 100 +4900 IF(LE$="V") OR(LE$="v") THEN4960 +4910 IF(LE$="S") OR(LE$="s") THENJ=16:GOTO4960 +4920 GOTO4870 +4930 PRINT;"Meer is er niet. Opnieuw met toets."; +4940 GOSUB21200:REM buffer leeg +4950 GOSUB210 +4960 NEXTJ +4970 GOTO4140 +4980 GOSUB100 +4990 HO=2:VE=10:GOSUB110 +5000 PRINT;"Printer-mode:" +5010 PRINT:PRINT" 80 karakters per regel." +5020 PRINT:PRINT" Minimaal 52 regels." +5030 HO=2:VE=20:GOSUB110 +5040 PRINT;"Druk op een toets voor START "; +5050 GOSUB21200:REM buffer leeg +5060 GOSUB210 +5070 GOSUB100 5080 DE=0:N=0 -5090 FOR P=0 TO 47 -5100 DE=P:N=48:GOSUB 22090:REM print -5110 IF P=15 THEN GOSUB 360:GOSUB 360 -5120 IF P=31 THEN GOSUB 360:GOSUB 360 -5130 NEXT P -5140 GOSUB 21250:REM papier -5150 GOSUB 100 -5160 FOR P=96 TO 143 -5170 DE=P:N=48:GOSUB 22090:REM print -5180 IF P=111 THEN GOSUB 360:GOSUB 360 -5190 IF P=127 THEN GOSUB 360:GOSUB 360 -5200 NEXT P -5210 GOSUB 21250:REM papier -5220 GOSUB 100 -5230 FOR P=192 TO 223 -5240 DE=P:N=32:GOSUB 22090:REM print -5250 IF P=207 THEN GOSUB 360:GOSUB 360 -5260 NEXT P -5270 HO=1:VE=10:GOSUB 110 -5280 PRINT ;"Terug in het programma met een toets."; -5290 GOSUB 21200:REM buffer leeg -5300 GOSUB 210 -5310 GOTO 4130 -5320 GOSUB 100 -5330 HO=5::VE=10:GOSUB 110 -5340 PRINT ;"Met kunt U opnieuw." -5350 PRINT :PRINT "Zo niet, dan tot een volgende keer." -5360 PRINT +5090 FORP=0 TO47 +5100 DE=P:N=48:GOSUB22090:REM print +5110 IFP=15 THENGOSUB360:GOSUB360 +5120 IFP=31 THENGOSUB360:GOSUB360 +5130 NEXTP +5140 GOSUB21250:REM papier +5150 GOSUB100 +5160 FORP=96 TO143 +5170 DE=P:N=48:GOSUB22090:REM print +5180 IFP=111 THENGOSUB360:GOSUB360 +5190 IFP=127 THENGOSUB360:GOSUB360 +5200 NEXTP +5210 GOSUB21250:REM papier +5220 GOSUB100 +5230 FORP=192 TO223 +5240 DE=P:N=32:GOSUB22090:REM print +5250 IFP=207 THENGOSUB360:GOSUB360 +5260 NEXTP +5270 HO=1:VE=10:GOSUB110 +5280 PRINT;"Terug in het programma met een toets."; +5290 GOSUB21200:REM buffer leeg +5300 GOSUB210 +5310 GOTO4130 +5320 GOSUB100 +5330 HO=5::VE=10:GOSUB110 +5340 PRINT;"Met kunt U opnieuw." +5350 PRINT:PRINT"Zo niet, dan tot een volgende keer." +5360 PRINT 5370 END 5380 : 20000 REM GETAL VERPLAATSEN -20010 HO=10:VE=5-F:GOSUB 110 -20020 PRINT ;A$; -20030 FOR K=1 TO VT*60:NEXT K +20010 HO=10:VE=5-F:GOSUB110 +20020 PRINT;A$; +20030 FORK=1 TOVT*60:NEXTK 20040 AA=LEN(A$) 20050 HO=9+AA -20060 FOR VE=(6-F) TO (5+2*AA)-F -20070 GOSUB 110 -20080 PRINT ;MID$(A$,AA,1); -20090 FOR K=1 TO VT:NEXT K -20100 NEXT VE -20110 FOR HO=HO TO 1 STEP -1 -20120 GOSUB 110 -20130 PRINT ;MID$(A$,AA,1); -20140 FOR K=1 TO VT:NEXT K -20150 NEXT HO +20060 FORVE=(6-F) TO(5+2*AA)-F +20070 GOSUB110 +20080 PRINT;MID$(A$,AA,1); +20090 FORK=1 TOVT:NEXTK +20100 NEXTVE +20110 FORHO=HO TO1 STEP-1 +20120 GOSUB110 +20130 PRINT;MID$(A$,AA,1); +20140 FORK=1 TOVT:NEXTK +20150 NEXTHO 20160 HO=9+AA -20170 FOR VE=(6-F) TO (5+2*AA)-F -20180 GOSUB 110 -20190 PRINT ;" "; -20200 FOR K=1 TO VT:NEXT K -20210 NEXT VE -20220 FOR HO=HO TO 2 STEP -1 -20230 GOSUB 110 -20240 PRINT ;" "; -20250 FOR K=1 TO VT:NEXT K -20260 NEXT HO -20270 FOR I=1 TO LEN(QA$(AA)) +20170 FORVE=(6-F) TO(5+2*AA)-F +20180 GOSUB110 +20190 PRINT;" "; +20200 FORK=1 TOVT:NEXTK +20210 NEXTVE +20220 FORHO=HO TO2 STEP-1 +20230 GOSUB110 +20240 PRINT;" "; +20250 FORK=1 TOVT:NEXTK +20260 NEXTHO +20270 FORI=1 TOLEN(QA$(AA)) 20280 Q$=MID$(QA$(AA),I,1) -20290 PRINT ;Q$; -20300 FOR K=1 TO VT:NEXT K -20310 NEXT I +20290 PRINT;Q$; +20300 FORK=1 TOVT:NEXTK +20310 NEXTI 20320 AA=AA-1 -20330 IF AA>=1 THEN 20050 +20330 IFAA>=1 THEN20050 20340 RETURN 20350 : 20360 REM VERWISSEL TEKST 20370 AA=LEN(A$):AB=AA -20380 FOR VE=(6+AA*2)-F TO 8-F STEP -2 -20390 FOR HO=LEN(QA$(AB))+3 TO 2 STEP -1 -20400 GOSUB 110 -20410 PRINT ;" "; -20420 FOR K=1 TO VT:NEXT K -20430 NEXT HO -20440 FOR I=1 TO LEN(QB$(AB)) +20380 FORVE=(6+AA*2)-F TO8-F STEP-2 +20390 FORHO=LEN(QA$(AB))+3 TO2 STEP-1 +20400 GOSUB110 +20410 PRINT;" "; +20420 FORK=1 TOVT:NEXTK +20430 NEXTHO +20440 FORI=1 TOLEN(QB$(AB)) 20450 Q$=MID$(QB$(AB),I,1) -20460 PRINT ;Q$; -20470 FOR K=1 TO VT:NEXT K -20480 NEXT I +20460 PRINT;Q$; +20470 FORK=1 TOVT:NEXTK +20480 NEXTI 20490 AB=AB-1 -20500 NEXT VE +20500 NEXTVE 20510 RETURN 20520 : 20530 REM VERVOLG -20540 HO=3:VE=24:GOSUB 110 -20550 PRINT ;"Druk op een toets voor vervolg. "; -20560 GOSUB 21200:REM buffer leeg -20570 GOSUB 210:GOSUB 100 +20540 HO=3:VE=24:GOSUB110 +20550 PRINT;"Druk op een toets voor vervolg. "; +20560 GOSUB21200:REM buffer leeg +20570 GOSUB210:GOSUB100 20580 RETURN 20590 : 20600 REM SCHAKELAAR 0 -20610 PRINT ;IN$; -20620 IF I=1 THEN 20680 -20630 IF I=2 THEN 20730 -20640 IF I=3 THEN 20810 -20650 HO=21:VE=3:GOSUB 21150 -20660 HO=20:VE=4:GOSUB 21150 +20610 PRINT;IN$; +20620 IFI=1 THEN20680 +20630 IFI=2 THEN20730 +20640 IFI=3 THEN20810 +20650 HO=21:VE=3:GOSUB21150 +20660 HO=20:VE=4:GOSUB21150 20670 RETURN -20680 HO=13:VE=8:GOSUB 21150 -20690 HO=29:GOSUB 21150 -20700 HO=12:VE=9:GOSUB 21150 -20710 HO=28:GOSUB 21150 +20680 HO=13:VE=8:GOSUB21150 +20690 HO=29:GOSUB21150 +20700 HO=12:VE=9:GOSUB21150 +20710 HO=28:GOSUB21150 20720 RETURN -20730 FOR HO=9 TO 33 STEP 8 -20740 GOSUB 21150 -20750 NEXT HO +20730 FORHO=9 TO33 STEP8 +20740 GOSUB21150 +20750 NEXTHO 20760 VE=14 -20770 FOR HO=8 TO 32 STEP 8 -20780 GOSUB 21150 -20790 NEXT HO +20770 FORHO=8 TO32 STEP8 +20780 GOSUB21150 +20790 NEXTHO 20800 RETURN 20810 VE=18 -20820 FOR HO=7 TO 35 STEP 4 -20830 GOSUB 21150 -20840 NEXT HO +20820 FORHO=7 TO35 STEP4 +20830 GOSUB21150 +20840 NEXTHO 20850 RETURN 20860 : 20870 REM SCHAKELAAR 1 -20880 PRINT ;IN$; -20890 IF I=1 THEN 20950 -20900 IF I=2 THEN 21000 -20910 IF I=3 THEN 21090 -20920 HO=23:VE=3:GOSUB 21150 -20930 HO=24:VE=4:GOSUB 21150 +20880 PRINT;IN$; +20890 IFI=1 THEN20950 +20900 IFI=2 THEN21000 +20910 IFI=3 THEN21090 +20920 HO=23:VE=3:GOSUB21150 +20930 HO=24:VE=4:GOSUB21150 20940 RETURN -20950 HO=15:VE=8:GOSUB 21150 -20960 HO=31:GOSUB 21150 -20970 HO=16:VE=9:GOSUB 21150 -20980 HO=32:GOSUB 21150 +20950 HO=15:VE=8:GOSUB21150 +20960 HO=31:GOSUB21150 +20970 HO=16:VE=9:GOSUB21150 +20980 HO=32:GOSUB21150 20990 RETURN 21000 VE=13 -21010 FOR HO=11 TO 35 STEP 8 -21020 GOSUB 21150 -21030 NEXT HO +21010 FORHO=11 TO35 STEP8 +21020 GOSUB21150 +21030 NEXTHO 21040 VE=14 -21050 FOR HO=12 TO 36 STEP 8 -21060 GOSUB 21150 -21070 NEXT HO +21050 FORHO=12 TO36 STEP8 +21060 GOSUB21150 +21070 NEXTHO 21080 RETURN 21090 VE=18 -21100 FOR HO=9 TO 37 STEP 4 -21110 GOSUB 21150 -21120 NEXT HO +21100 FORHO=9 TO37 STEP4 +21110 GOSUB21150 +21120 NEXTHO 21130 RETURN 21140 : 21150 REM PRINT S -21160 GOSUB 110 -21170 PRINT ;"S"; +21160 GOSUB110 +21170 PRINT;"S"; 21180 RETURN 21190 : 21200 REM BUFFER LEGEN -21210 GOSUB 200 -21220 IF IN$<>"" THEN 21210 +21210 GOSUB200 +21220 IFIN$<>"" THEN21210 21230 RETURN 21240 : 21250 REM NIEUW PAPIER -21260 GOSUB 100 -21270 HO=3:VE=10:GOSUB 110 -21280 PRINT ;"Nieuw vel papier in de printer," -21290 VE=12:GOSUB 110 -21300 PRINT ;"zodra hij gestopt is." -21310 VE=20:GOSUB 110 -21320 PRINT ;"Verder met een toets."; -21330 GOSUB 21200:REM buffer leeg -21340 GOSUB 210 +21260 GOSUB100 +21270 HO=3:VE=10:GOSUB110 +21280 PRINT;"Nieuw vel papier in de printer," +21290 VE=12:GOSUB110 +21300 PRINT;"zodra hij gestopt is." +21310 VE=20:GOSUB110 +21320 PRINT;"Verder met een toets."; +21330 GOSUB21200:REM buffer leeg +21340 GOSUB210 21350 RETURN 21360 : 21370 REM INPUT DECIMAAL GETAL -21380 GOSUB 100 -21390 HO=6:VE=5:GOSUB 110 -21400 PRINT ;"Na intikken " -21410 HO=0:VE=9:GOSUB 110 -21420 PRINT ;"Geef decimaal getal (0 t/m 255) "; -21430 INPUT D$ -21440 DE=INT(VAL(D$)):IF D$="0" THEN 21470 -21450 IF DE<=0 THEN 21380 -21460 IF DE>255 THEN 21380 -21470 PRINT :PRINT :PRINT +21380 GOSUB100 +21390 HO=6:VE=5:GOSUB110 +21400 PRINT;"Na intikken " +21410 HO=0:VE=9:GOSUB110 +21420 PRINT;"Geef decimaal getal (0 t/m 255) "; +21430 INPUTD$ +21440 DE=INT(VAL(D$)):IFD$="0" THEN21470 +21450 IFDE<=0 THEN21380 +21460 IFDE>255 THEN21380 +21470 PRINT:PRINT:PRINT 21480 RETURN 21490 : 21500 REM INPUT HEXADECIMAAL GETAL -21510 GOSUB 100 -21520 HO=6:VE=5:GOSUB 110 -21530 PRINT ;"Na intikken " -21540 HO=0:VE=9:GOSUB 110 -21550 PRINT ;"Geef hexadec. getal (00 t/m FF) "; -21560 INPUT G$ -21570 IF LEN(G$)<1 THEN 21510 -21580 IF LEN(G$)>2 THEN 21510 -21590 IF LEN(G$)=2 THEN 21640 +21510 GOSUB100 +21520 HO=6:VE=5:GOSUB110 +21530 PRINT;"Na intikken " +21540 HO=0:VE=9:GOSUB110 +21550 PRINT;"Geef hexadec. getal (00 t/m FF) "; +21560 INPUTG$ +21570 IFLEN(G$)<1 THEN21510 +21580 IFLEN(G$)>2 THEN21510 +21590 IFLEN(G$)=2 THEN21640 21600 GB=ASC(G$) -21610 IF (GB<58) AND(GB>47) THEN DE=GB-48:GOTO 21730 -21620 IF (GB<71) AND(GB>64) THEN DE=GB-55:GOTO 21730 -21630 GOTO 21510 +21610 IF(GB<58) AND(GB>47) THENDE=GB-48:GOTO21730 +21620 IF(GB<71) AND(GB>64) THENDE=GB-55:GOTO21730 +21630 GOTO21510 21640 GA=ASC(LEFT$(G$,1)) 21650 GB=ASC(MID$(G$,2,1)) -21660 IF (GA<58) AND(GA>47) THEN GA=GA-48:GOTO 21690 -21670 IF (GA<71) AND(GA>64) THEN GA=GA-55:GOTO 21690 -21680 GOTO 21510 -21690 IF (GB<58) AND(GB>47) THEN GB=GB-48:GOTO 21720 -21700 IF (GB<71) AND(GB>64) THEN GB=GB-55:GOTO 21720 -21710 GOTO 21510 +21660 IF(GA<58) AND(GA>47) THENGA=GA-48:GOTO21690 +21670 IF(GA<71) AND(GA>64) THENGA=GA-55:GOTO21690 +21680 GOTO21510 +21690 IF(GB<58) AND(GB>47) THENGB=GB-48:GOTO21720 +21700 IF(GB<71) AND(GB>64) THENGB=GB-55:GOTO21720 +21710 GOTO21510 21720 DE=GA*16+GB -21730 PRINT :PRINT :PRINT +21730 PRINT:PRINT:PRINT 21740 RETURN 21750 : 21760 REM INPUT BINAIR GETAL -21770 GOSUB 100 -21780 HO=6:VE=5:GOSUB 110 -21790 PRINT ;"Na intikken " -21800 HO=27:VE=10:GOSUB 110 -21810 PRINT ;". ." -21820 HO=0:VE=9:GOSUB 110 -21830 PRINT ;"Geef binair getal (8 bit) "; -21840 INPUT T$ +21770 GOSUB100 +21780 HO=6:VE=5:GOSUB110 +21790 PRINT;"Na intikken " +21800 HO=27:VE=10:GOSUB110 +21810 PRINT;". ." +21820 HO=0:VE=9:GOSUB110 +21830 PRINT;"Geef binair getal (8 bit) "; +21840 INPUTT$ 21850 B=0:BO$="" -21860 FOR T=8 TO 1 STEP -1 +21860 FORT=8 TO1 STEP-1 21870 Z$=MID$(T$,T,1) -21880 IF (Z$<>"1") AND(Z$<>"0") THEN 21910 +21880 IF(Z$<>"1") AND(Z$<>"0") THEN21910 21890 BO$=BO$+Z$ -21900 GOTO 21920 +21900 GOTO21920 21910 B=B+1 -21920 NEXT T -21930 IF B<>0 THEN 21770 +21920 NEXTT +21930 IFB<>0 THEN21770 21940 DE=0 -21950 FOR F=0 TO 7 +21950 FORF=0 TO7 21960 E$=MID$(BO$,F+1,1) 21970 E=ASC(E$)-48 21980 DE=DE+E*2^F -21990 NEXT F -22000 PRINT :PRINT :PRINT +21990 NEXTF +22000 PRINT:PRINT:PRINT 22010 RETURN 22020 : 22030 REM SCHERM-UITVOER -22040 GOSUB 22410:REM Bepalen bin waarde -22050 PRINT S$;D$;" Dec. = ";H$(H);L$(L); -22060 PRINT ;" Hex. = ";BI$;" Binair" +22040 GOSUB22410:REM Bepalen bin waarde +22050 PRINTS$;D$;" Dec. = ";H$(H);L$(L); +22060 PRINT;" Hex. = ";BI$;" Binair" 22070 RETURN 22080 : 22090 REM PRINTER-UITVOER -22100 GOSUB 22320:REM Bep. hex. +22100 GOSUB22320:REM Bep. hex. 22110 SR$=" "+S$+D$+" Dec. = "+H$(H)+L$(L) -22120 GOSUB 350 -22130 GOSUB 22410:REM bep. bin. waarde +22120 GOSUB350 +22130 GOSUB22410:REM bep. bin. waarde 22140 SR$=" Hex. = "+BI$+" Bin. " -22150 GOSUB 350 -22160 DE=P+N:GOSUB 22320:REM Bep. hex. +22150 GOSUB350 +22160 DE=P+N:GOSUB22320:REM Bep. hex. 22170 SR$=S$+D$+" Dec. = "+H$(H)+L$(L) -22180 GOSUB 350 -22190 GOSUB 22410:REM bep. bin. waarde +22180 GOSUB350 +22190 GOSUB22410:REM bep. bin. waarde 22200 SR$=" Hex. = "+BI$+" Bin." -22210 GOSUB 350:GOSUB 360 +22210 GOSUB350:GOSUB360 22220 RETURN 22230 : 22240 REM INLEZEN DATA 22250 VT=40:REM VERTRAGING -22260 FOR I=0 TO 15 -22270 READ H$(I) -22280 READ L$(I) -22290 NEXT I +22260 FORI=0 TO15 +22270 READH$(I) +22280 READL$(I) +22290 NEXTI 22300 RETURN 22310 : 22320 REM BEPALEN HEX WAARDE -22330 SR=DE:GOSUB 300:D$=SR$ +22330 SR=DE:GOSUB300:D$=SR$ 22340 S$="" -22350 IF DE<100 THEN S$=" " -22360 IF DE<10 THEN S$=" " +22350 IFDE<100 THENS$=" " +22360 IFDE<10 THENS$=" " 22370 H=INT(DE/16) 22380 L=DE-(H*16) 22390 RETURN 22400 : 22410 REM BEPALEN BINAIRE WAARDE 22420 BI$="" -22430 FOR I=7 TO 0 STEP -1 +22430 FORI=7 TO0 STEP-1 22440 B$="0" -22450 IF DE>=2^I THEN DE=DE-2^I:B$="1" +22450 IFDE>=2^I THENDE=DE-2^I:B$="1" 22460 BI$=BI$+B$ -22470 NEXT I +22470 NEXTI 22480 RETURN 22490 : -25000 DATA "0","0","1","1","2","2","3" -25010 DATA "3","4","4","5","5","6","6" -25020 DATA "7","7","8","8","9","9","A" -25030 DATA "A","B","B","C","C","D","D" -25040 DATA "E","E","F","F" -25050 DATA 20,2,20,3,12,6,13,6,14,6,15,6 -25060 DATA 16,6,17,6,18,6,22,6,23,6,24,6 -25070 DATA 25,6,26,6,27,6,28,6,12,7,28,7 -25080 DATA 12,8,28,8,8,11,9,11,10,11,14 -25090 DATA 11,15,11,16,11,24,11,25,11,26 -25100 DATA 11,30,11,31,11,32,11,8,12,16 -25110 DATA 12,24,12,32,12,8,13,16,13,24 -25120 DATA 13,32,13,6,16,10,16,14,16,18 -25130 DATA 16,22,16,26,16,30,16,34,16,6 -25140 DATA 17,10,17,14,17,18,17,22,17,26 -25150 DATA 17,30,17,34,17,6,18,10,18,14 -25160 DATA 18,18,18,22,18,26,18,30,18,34 -25170 DATA 18,5,20,7,20,9,20,11,20,13,20 -25180 DATA 15,20,17,20,19,20,21,20,23,20 -25190 DATA 25,20,27,20,29,20,31,20,33,20 -25200 DATA 35,20,5,21,7,21,9,21,11,21,13 -25210 DATA 21,15,21,17,21,19,21,21,21,23 -25220 DATA 21,25,21,27,21,29,21,31,21,33 -25230 DATA 21,35,21,50,0 +25000 DATA"0","0","1","1","2","2","3" +25010 DATA"3","4","4","5","5","6","6" +25020 DATA"7","7","8","8","9","9","A" +25030 DATA"A","B","B","C","C","D","D" +25040 DATA"E","E","F","F" +25050 DATA20,2,20,3,12,6,13,6,14,6,15,6 +25060 DATA16,6,17,6,18,6,22,6,23,6,24,6 +25070 DATA25,6,26,6,27,6,28,6,12,7,28,7 +25080 DATA12,8,28,8,8,11,9,11,10,11,14 +25090 DATA11,15,11,16,11,24,11,25,11,26 +25100 DATA11,30,11,31,11,32,11,8,12,16 +25110 DATA12,24,12,32,12,8,13,16,13,24 +25120 DATA13,32,13,6,16,10,16,14,16,18 +25130 DATA16,22,16,26,16,30,16,34,16,6 +25140 DATA17,10,17,14,17,18,17,22,17,26 +25150 DATA17,30,17,34,17,6,18,10,18,14 +25160 DATA18,18,18,22,18,26,18,30,18,34 +25170 DATA18,5,20,7,20,9,20,11,20,13,20 +25180 DATA15,20,17,20,19,20,21,20,23,20 +25190 DATA25,20,27,20,29,20,31,20,33,20 +25200 DATA35,20,5,21,7,21,9,21,11,21,13 +25210 DATA21,15,21,17,21,19,21,21,21,23 +25220 DATA21,25,21,27,21,29,21,31,21,33 +25230 DATA21,35,21,50,0 25240 : -30000 REM +30000 REM 30010 REM U kunt de snelheid in enkele 30020 REM onderdelen van het programma 30030 REM wijzigen met de waarde van 30040 REM VT in regel 22250 -30050 REM +30050 REM 30060 REM Programma geschreven in 30070 REM BASICODE 2 door: -30080 REM +30080 REM 30090 REM L.D.R.P.Looyenga 30100 REM Stamperweg 1 30110 REM 3813 SZ Amersfoort -30120 REM +30120 REM 30130 REM op een Acorn Electron -30140 REM +30140 REM 30150 REM oktober 1986 -30160 REM +30160 REM 30170 REM Copyright NOS Hilversum -30180 REM - \ No newline at end of file +30180 REM diff --git a/Best_of_Basicode_4/23_Meerkeuze-analyse.bc2 b/Best_of_Basicode_4/23_Meerkeuze-analyse.bc2 index 0a8bc3e..6732bbf 100644 --- a/Best_of_Basicode_4/23_Meerkeuze-analyse.bc2 +++ b/Best_of_Basicode_4/23_Meerkeuze-analyse.bc2 @@ -1,354 +1,355 @@ -1000 A=5500:GOTO 20:REM MEERKEUZE-ANALYSE + +1000 A=5500:GOTO20:REM MEERKEUZE-ANALYSE 1010 REM ******************************* -1020 DH=0:GOSUB 100:VE=8:HO=11:GOSUB 110 -1030 PRINT "M E E R K E U Z E" -1040 VE=11:HO=15:GOSUB 110 -1050 PRINT "T O E T S" -1060 VE=14:HO=13:GOSUB 110 -1070 PRINT "A N A L Y S E" -1080 VE=18:HO=5:GOSUB 110 -1090 PRINT "Heeft u een printer ? (J/N)";:GOSUB 4420 -1100 PRINT MID$("NJ",A+1,1):PR=A -1110 C=1:GOSUB 22000 -1120 GOSUB 100 -1130 VE=5:HO=5:GOSUB 110 -1140 PRINT "WILT U:" -1150 VE=8:GOSUB 110 -1160 PRINT "1 EEN NIEUWE TOETS INVOEREN" -1170 VE=10:GOSUB 110 -1180 PRINT "2 EEN OUDE TOETS INLEZEN" -1190 VE=12:GOSUB 110 -1200 PRINT "3 EEN BEGONNEN TOETS INLEZEN EN" -1210 PRINT " AFMAKEN" -1220 C=2:GOSUB 22000 -1230 VE=VE+3:GOSUB 110 -1240 PRINT "KEUZE ?"; -1250 GOSUB 210:ON VAL(IN$) GOTO 1600,1300,1410,22250 -1260 GOSUB 250:GOTO 1250 +1020 DH=0:GOSUB100:VE=8:HO=11:GOSUB110 +1030 PRINT"M E E R K E U Z E" +1040 VE=11:HO=15:GOSUB110 +1050 PRINT"T O E T S" +1060 VE=14:HO=13:GOSUB110 +1070 PRINT"A N A L Y S E" +1080 VE=18:HO=5:GOSUB110 +1090 PRINT"Heeft u een printer ? (J/N)";:GOSUB4420 +1100 PRINTMID$("NJ",A+1,1):PR=A +1110 C=1:GOSUB22000 +1120 GOSUB100 +1130 VE=5:HO=5:GOSUB110 +1140 PRINT"WILT U:" +1150 VE=8:GOSUB110 +1160 PRINT"1 EEN NIEUWE TOETS INVOEREN" +1170 VE=10:GOSUB110 +1180 PRINT"2 EEN OUDE TOETS INLEZEN" +1190 VE=12:GOSUB110 +1200 PRINT"3 EEN BEGONNEN TOETS INLEZEN EN" +1210 PRINT" AFMAKEN" +1220 C=2:GOSUB22000 +1230 VE=VE+3:GOSUB110 +1240 PRINT"KEUZE ?"; +1250 GOSUB210:ONVAL(IN$) GOTO1600,1300,1410,22250 +1260 GOSUB250:GOTO1250 1300 REM *** INLEZEN ******************* -1310 GOSUB 100 -1320 PRINT " Toets inlezen":PRINT -1330 PRINT "Met welke naam ";:INPUT CA$ -1340 GOSUB 21000 +1310 GOSUB100 +1320 PRINT" Toets inlezen":PRINT +1330 PRINT"Met welke naam ";:INPUTCA$ +1340 GOSUB21000 1350 JJ=LEN(A$(0)):J1=INT((JJ-1)/10):I1=INT((II-1)/10) -1360 PRINT "Toets ";CA$;"," -1370 PRINT :PRINT II;"leerlingen,";JJ;"vragen" -1380 GOSUB 4400:IF A=0 THEN RUN -1390 IF (II=0) OR(JJ=0) THEN RUN -1400 GOTO 2000 +1360 PRINT"Toets ";CA$;"," +1370 PRINT:PRINTII;"leerlingen,";JJ;"vragen" +1380 GOSUB4400:IFA=0 THENRUN +1390 IF(II=0) OR(JJ=0) THENRUN +1400 GOTO2000 1410 REM *** DEELTOETS INLEZEN ********* -1420 GOSUB 100 -1430 PRINT " Deel van een toets inlezen":PRINT -1440 PRINT "Met welke naam ";:INPUT CA$ -1450 GOSUB 21000 +1420 GOSUB100 +1430 PRINT" Deel van een toets inlezen":PRINT +1440 PRINT"Met welke naam ";:INPUTCA$ +1450 GOSUB21000 1460 JJ=LEN(A$(0)):J1=INT((JJ-1)/10):I1=INT((II-1)/10) -1470 FOR I=1 TO II -1480 IF A$(I)="" THEN IX=I:I=II -1490 NEXT I:PRINT -1500 IF IX=0 THEN 1540 -1510 PRINT IX-1;"leerlingen ingevuld." -1520 GOSUB 4400:IF A=0 THEN 1580 -1530 GOTO 1820 -1540 PRINT "Deze toets is compleet!":PRINT -1550 PRINT "Wilt u deze toets analyseren ? (J/N)";:GOSUB 4420 -1560 IF A=1 THEN 2000 -1570 PRINT "N" -1580 PRINT :PRINT "Het programma start opnieuw." -1590 FOR A=1 TO 2500:NEXT A:RUN +1470 FORI=1 TOII +1480 IFA$(I)="" THENIX=I:I=II +1490 NEXTI:PRINT +1500 IFIX=0 THEN1540 +1510 PRINTIX-1;"leerlingen ingevuld." +1520 GOSUB4400:IFA=0 THEN1580 +1530 GOTO1820 +1540 PRINT"Deze toets is compleet!":PRINT +1550 PRINT"Wilt u deze toets analyseren ? (J/N)";:GOSUB4420 +1560 IFA=1 THEN2000 +1570 PRINT"N" +1580 PRINT:PRINT"Het programma start opnieuw." +1590 FORA=1 TO2500:NEXTA:RUN 1600 REM *** NIEUWE TOETS ************** -1610 GOSUB 100:HO=0 -1620 PRINT " AANTAL LEERLINGEN (MAX.100)" -1630 PRINT :PRINT "Als u het aantal te hoog schat, kunt u" -1640 PRINT "na de laatste leerling het totaal aan-" -1650 PRINT "passen, als u te laag schat niet." -1660 VE=6:GOSUB 110:PRINT "Aantal ";:INPUT A$:II=VAL(A$) -1670 IF ((II<1) OR(II>100)) THEN GOSUB 250:GOTO 1660 -1680 VE=11:GOSUB 110:PRINT " AANTAL TOETSVRAGEN (MAX.50)" -1690 VE=13:GOSUB 110:PRINT "Aantal ";:INPUT A$:JJ=VAL(A$) -1700 IF (JJ<1) OR(JJ>50) THEN GOSUB 250:GOSUB 110:GOTO 1690 -1710 DIM A$(II),A(JJ):I1=INT((II-1)/10):J1=INT((JJ-1)/10) -1720 GOSUB 100:VE=3:GOSUB 110:PRINT "ANTWOORDSLEUTEL INVOEREN:" -1730 I=0:GOSUB 4000 -1740 ON A GOTO 1800,1760 -1750 GOTO 1730 -1760 GOSUB 4500 -1770 REM +1610 GOSUB100:HO=0 +1620 PRINT" AANTAL LEERLINGEN (MAX.100)" +1630 PRINT:PRINT"Als u het aantal te hoog schat, kunt u" +1640 PRINT"na de laatste leerling het totaal aan-" +1650 PRINT"passen, als u te laag schat niet." +1660 VE=6:GOSUB110:PRINT"Aantal ";:INPUTA$:II=VAL(A$) +1670 IF((II<1) OR(II>100)) THENGOSUB250:GOTO1660 +1680 VE=11:GOSUB110:PRINT" AANTAL TOETSVRAGEN (MAX.50)" +1690 VE=13:GOSUB110:PRINT"Aantal ";:INPUTA$:JJ=VAL(A$) +1700 IF(JJ<1) OR(JJ>50) THENGOSUB250:GOSUB110:GOTO1690 +1710 DIMA$(II),A(JJ):I1=INT((II-1)/10):J1=INT((JJ-1)/10) +1720 GOSUB100:VE=3:GOSUB110:PRINT"ANTWOORDSLEUTEL INVOEREN:" +1730 I=0:GOSUB4000 +1740 ONA GOTO1800,1760 +1750 GOTO1730 +1760 GOSUB4500 +1770 REM 1800 REM *** ANTWOORDEN LEERLINGEN ***** 1810 IX=1 -1820 FOR I=IX TO II:GOSUB 100 -1830 HO=5:VE=3:GOSUB 110 -1840 PRINT "ANTWOORDEN LEERLING";I -1850 GOSUB 4000 -1860 ON A GOTO 1890,1880 -1870 GOTO 1850 -1880 GOSUB 4500:I=IX -1890 NEXT I -1900 GOSUB 4800 -1910 PRINT :PRINT "Wilt u door gaan met de analyse? (J/N)"; -1920 GOSUB 4420:IF A=0 THEN 3900 +1820 FORI=IX TOII:GOSUB100 +1830 HO=5:VE=3:GOSUB110 +1840 PRINT"ANTWOORDEN LEERLING";I +1850 GOSUB4000 +1860 ONA GOTO1890,1880 +1870 GOTO1850 +1880 GOSUB4500:I=IX +1890 NEXTI +1900 GOSUB4800 +1910 PRINT:PRINT"Wilt u door gaan met de analyse? (J/N)"; +1920 GOSUB4420:IFA=0 THEN3900 2000 REM *** ANALYSE ******************* -2010 DIM SC(II),GF(JJ,4),NG(II),NS(II),DV(JJ),D1(JJ) -2020 DIM D2(JJ),CY(II) -2030 GOSUB 100:PRINT " DE RUWE SCORES WORDEN NU BEPAALD" -2040 VE=4:HO=10:GOSUB 110:PRINT "EVEN GEDULD A.U.B." -2050 PRINT :FOR J=1 TO JJ:PRINT ".";:NEXT J -2060 HO=0:VE=6:GOSUB 110 -2070 FOR J=1 TO JJ:FOR I=0 TO 4:GF(J,I)=0:NEXT I:NEXT J -2080 FOR I=1 TO II:SC(I)=0:NEXT I -2090 FOR J=1 TO JJ:A2=VAL(MID$(A$(0),J,1)) -2100 FOR I=1 TO II +2010 DIMSC(II),GF(JJ,4),NG(II),NS(II),DV(JJ),D1(JJ) +2020 DIMD2(JJ),CY(II) +2030 GOSUB100:PRINT" DE RUWE SCORES WORDEN NU BEPAALD" +2040 VE=4:HO=10:GOSUB110:PRINT"EVEN GEDULD A.U.B." +2050 PRINT:FORJ=1 TOJJ:PRINT".";:NEXTJ +2060 HO=0:VE=6:GOSUB110 +2070 FORJ=1 TOJJ:FORI=0 TO4:GF(J,I)=0:NEXTI:NEXTJ +2080 FORI=1 TOII:SC(I)=0:NEXTI +2090 FORJ=1 TOJJ:A2=VAL(MID$(A$(0),J,1)) +2100 FORI=1 TOII 2110 A1=VAL(MID$(A$(I),J,1)) -2120 IF A1=A2 THEN SC(I)=SC(I)+1:GF(J,0)=GF(J,0)+1 -2130 IF A1=5 THEN 2150 +2120 IFA1=A2 THENSC(I)=SC(I)+1:GF(J,0)=GF(J,0)+1 +2130 IFA1=5 THEN2150 2140 GF(J,A1)=GF(J,A1)+1 -2150 NEXT I:PRINT " "; -2160 FOR I=0 TO 4:GF(J,I)=GF(J,I)*100/II:NEXT I -2170 NEXT J -2180 GOSUB 100:PRINT "DE P-WAARDEN VAN DE VRAGEN:" -2190 FOR J=0 TO J1:HO=8*J -2200 FOR K=1 TO 10:VE=4+K -2210 SR=10*J+K:IF SR>JJ THEN K=10:GOTO 2260 -2220 CN=0:CT=2:GOSUB 310 -2230 GOSUB 110:PRINT SR$;":"; -2240 SR=GF(SR,0):CT=3:GOSUB 310 -2250 PRINT SR$; -2260 NEXT K:NEXT J -2270 GE=0:S1=0:GM=0:FOR I=1 TO II -2280 GE=GE+SC(I):S1=S1+SC(I)*SC(I):NEXT I +2150 NEXTI:PRINT" "; +2160 FORI=0 TO4:GF(J,I)=GF(J,I)*100/II:NEXTI +2170 NEXTJ +2180 GOSUB100:PRINT"DE P-WAARDEN VAN DE VRAGEN:" +2190 FORJ=0 TOJ1:HO=8*J +2200 FORK=1 TO10:VE=4+K +2210 SR=10*J+K:IFSR>JJ THENK=10:GOTO2260 +2220 CN=0:CT=2:GOSUB310 +2230 GOSUB110:PRINTSR$;":"; +2240 SR=GF(SR,0):CT=3:GOSUB310 +2250 PRINTSR$; +2260 NEXTK:NEXTJ +2270 GE=0:S1=0:GM=0:FORI=1 TOII +2280 GE=GE+SC(I):S1=S1+SC(I)*SC(I):NEXTI 2290 GM=GE/II:GS=SQR(S1/II-GM*GM):BE=GM-GS:BO=GM+GS -2300 HO=0:VE=16:GOSUB 110 -2310 SR=GM*100/JJ:CT=3:GOSUB 310 -2320 PRINT "GEMIDDELDE SCORE ";SR$;" %" -2330 SR=GS*100/JJ:CT=2:GOSUB 310 -2340 PRINT :PRINT "STANDAARDDEVIATIE ";SR$;" %" -2350 X=0:Y=0:FOR I=1 TO II -2360 IF SC(I)<=BE+1 THEN X=X+1:NS(X)=I -2370 IF SC(I)>=BO-1 THEN Y=Y+1:NG(Y)=I -2380 NEXT I:IF Y=0 THEN Y=1 -2390 IF X=0 THEN X=1 -2400 GOSUB 4450 +2300 HO=0:VE=16:GOSUB110 +2310 SR=GM*100/JJ:CT=3:GOSUB310 +2320 PRINT"GEMIDDELDE SCORE ";SR$;" %" +2330 SR=GS*100/JJ:CT=2:GOSUB310 +2340 PRINT:PRINT"STANDAARDDEVIATIE ";SR$;" %" +2350 X=0:Y=0:FORI=1 TOII +2360 IFSC(I)<=BE+1 THENX=X+1:NS(X)=I +2370 IFSC(I)>=BO-1 THENY=Y+1:NG(Y)=I +2380 NEXTI:IFY=0 THENY=1 +2390 IFX=0 THENX=1 +2400 GOSUB4450 2410 CT=4 -2420 I=0:FOR J=1 TO JJ:A=VAL(MID$(A$(0),J,1)) -2430 GOSUB 100:VE=3:HO=5:GOSUB 110 -2440 PRINT "ANALYSE VRAAG";J -2450 FOR K=1 TO 4:VE=4+2*K:GOSUB 110 -2460 IF (K=A) THEN PRINT "* P-WAARDE ";:GOTO 2480 -2470 PRINT " A-WAARDE "; -2480 PRINT MID$("ABCD",K,1);":";:SR=GF(J,K):GOSUB 310 -2490 PRINT SR$;" %":NEXT K -2500 D1=0:FOR K=1 TO Y -2510 IF (VAL(MID$(A$(NG(K)),J,1))=A) THEN D1=D1+1 -2520 NEXT K:SR=D1*100/Y:D1(J)=SR:GOSUB 310:VE=16:GOSUB 110 -2530 PRINT "VAN DE BESTE LL.EN SCOORT";SR$;" %" -2540 D2=0:FOR K=1 TO X -2550 IF (VAL(MID$(A$(NS(K)),J,1))=A) THEN D2=D2+1 -2560 NEXT K:SR=D2*100/X:D2(J)=SR:GOSUB 310:VE=18:GOSUB 110 -2570 PRINT "VAN DE MINDER GOEDE ";SR$;" %" -2580 VE=23:GOSUB 110:PRINT "VRAAG AFKEUREN ? (J/N)";:GOSUB 210 -2590 IF IN$="N" THEN 2620 -2600 IF IN$<>"J" THEN GOSUB 250:GOTO 2580 +2420 I=0:FORJ=1 TOJJ:A=VAL(MID$(A$(0),J,1)) +2430 GOSUB100:VE=3:HO=5:GOSUB110 +2440 PRINT"ANALYSE VRAAG";J +2450 FORK=1 TO4:VE=4+2*K:GOSUB110 +2460 IF(K=A) THENPRINT"* P-WAARDE ";:GOTO2480 +2470 PRINT" A-WAARDE "; +2480 PRINTMID$("ABCD",K,1);":";:SR=GF(J,K):GOSUB310 +2490 PRINTSR$;" %":NEXTK +2500 D1=0:FORK=1 TOY +2510 IF(VAL(MID$(A$(NG(K)),J,1))=A) THEND1=D1+1 +2520 NEXTK:SR=D1*100/Y:D1(J)=SR:GOSUB310:VE=16:GOSUB110 +2530 PRINT"VAN DE BESTE LL.EN SCOORT";SR$;" %" +2540 D2=0:FORK=1 TOX +2550 IF(VAL(MID$(A$(NS(K)),J,1))=A) THEND2=D2+1 +2560 NEXTK:SR=D2*100/X:D2(J)=SR:GOSUB310:VE=18:GOSUB110 +2570 PRINT"VAN DE MINDER GOEDE ";SR$;" %" +2580 VE=23:GOSUB110:PRINT"VRAAG AFKEUREN ? (J/N)";:GOSUB210 +2590 IFIN$="N" THEN2620 +2600 IFIN$<>"J" THENGOSUB250:GOTO2580 2610 I=I+1:DV(I)=J -2620 NEXT J -2630 DV(0)=I:GOSUB 100:VE=5:GOSUB 110 -2640 PRINT "U HEEFT";DV(0);"VRAGEN AFGEKEURD," -2650 VE=7:GOSUB 110:PRINT "ER ZIJN NOG"JJ-DV(0);"VRAGEN OVER" -2660 VE=9:GOSUB 110:PRINT "VOOR DE BEOORDELING." -2670 GOSUB 4400:IF A=0 THEN 2420 -2680 JT=JJ-DV(0):IF DV(0)=0 THEN 2790 -2690 IF JT=0 THEN JT=.1 -2700 GOSUB 100 -2710 PRINT "EVEN GEDULD, DE SCORES WORDEN AANGEPAST" -2720 PRINT :FOR J=1 TO DV(0):PRINT ".";:NEXT J:VE=2:HO=0:GOSUB 110 -2730 FOR J=1 TO DV(0):PRINT " ";:FOR I=1 TO II -2740 IF MID$(A$(I),DV(J),1)<>MID$(A$(0),DV(J),1) THEN 2760 +2620 NEXTJ +2630 DV(0)=I:GOSUB100:VE=5:GOSUB110 +2640 PRINT"U HEEFT";DV(0);"VRAGEN AFGEKEURD," +2650 VE=7:GOSUB110:PRINT"ER ZIJN NOG"JJ-DV(0);"VRAGEN OVER" +2660 VE=9:GOSUB110:PRINT"VOOR DE BEOORDELING." +2670 GOSUB4400:IFA=0 THEN2420 +2680 JT=JJ-DV(0):IFDV(0)=0 THEN2790 +2690 IFJT=0 THENJT=.1 +2700 GOSUB100 +2710 PRINT"EVEN GEDULD, DE SCORES WORDEN AANGEPAST" +2720 PRINT:FORJ=1 TODV(0):PRINT".";:NEXTJ:VE=2:HO=0:GOSUB110 +2730 FORJ=1 TODV(0):PRINT" ";:FORI=1 TOII +2740 IFMID$(A$(I),DV(J),1)<>MID$(A$(0),DV(J),1) THEN2760 2750 SC(I)=SC(I)-1 -2760 NEXT I:NEXT J -2770 GE=0:GM=0:S1=0:FOR I=1 TO II -2780 GE=GE+SC(I):S1=S1+SC(I)*SC(I):NEXT I:GM=GE/II +2760 NEXTI:NEXTJ +2770 GE=0:GM=0:S1=0:FORI=1 TOII +2780 GE=GE+SC(I):S1=S1+SC(I)*SC(I):NEXTI:GM=GE/II 2790 GS=SQR(S1/II-GM*GM) -2800 SR=100*GM/JT:GOSUB 310 -2810 GOSUB 100:PRINT "GEMIDDELDE SCORE ";SR$;" %" -2820 SR=100*GS/JT:GOSUB 310 -2830 PRINT "STANDAARDDEVIATIE";SR$;" %" +2800 SR=100*GM/JT:GOSUB310 +2810 GOSUB100:PRINT"GEMIDDELDE SCORE ";SR$;" %" +2820 SR=100*GS/JT:GOSUB310 +2830 PRINT"STANDAARDDEVIATIE";SR$;" %" 2840 REM *** SCORE OMZETTEN IN CIJFER ** -2850 PRINT :PRINT "VOORSTEL: SCORE OMZETTEN IN CIJFER" +2850 PRINT:PRINT"VOORSTEL: SCORE OMZETTEN IN CIJFER" 2860 J2=INT((JT-1)/10):DC=9/JT -2870 FOR I=0 TO J2:HO=8*I:FOR J=1 TO 10:VE=4+J:X=10*I+J -2880 IF X>JT THEN J=10:GOTO 2920 -2890 GOSUB 110:SR=X:CN=0:CT=3:GOSUB 310 -2900 PRINT SR$;">";:SR=X*DC+1:CN=1:CT=4:GOSUB 310 -2910 PRINT SR$; -2920 NEXT J:NEXT I -2930 VE=19:HO=0:GOSUB 110:PRINT "GEMIDDELDE CIJFER"; -2940 SR=GM*DC+1:CT=4:GOSUB 310:PRINT SR$ -2950 PRINT "STANDAARDDEVIATIE";:SR=GS*DC:GOSUB 310 -2960 PRINT SR$:GOSUB 4400:HO=0:IF A=1 THEN 3130 -2970 GOSUB 110:PRINT " WELKE SCORE VOOR EEN 6 ";:INPUT DC -2980 GOSUB 100:PRINT " SCORE OMZETTEN IN CIJFER":PRINT -2990 PRINT " MET EEN 6 BIJ SCORE";DC +2870 FORI=0 TOJ2:HO=8*I:FORJ=1 TO10:VE=4+J:X=10*I+J +2880 IFX>JT THENJ=10:GOTO2920 +2890 GOSUB110:SR=X:CN=0:CT=3:GOSUB310 +2900 PRINTSR$;">";:SR=X*DC+1:CN=1:CT=4:GOSUB310 +2910 PRINTSR$; +2920 NEXTJ:NEXTI +2930 VE=19:HO=0:GOSUB110:PRINT"GEMIDDELDE CIJFER"; +2940 SR=GM*DC+1:CT=4:GOSUB310:PRINTSR$ +2950 PRINT"STANDAARDDEVIATIE";:SR=GS*DC:GOSUB310 +2960 PRINTSR$:GOSUB4400:HO=0:IFA=1 THEN3130 +2970 GOSUB110:PRINT" WELKE SCORE VOOR EEN 6 ";:INPUTDC +2980 GOSUB100:PRINT" SCORE OMZETTEN IN CIJFER":PRINT +2990 PRINT" MET EEN 6 BIJ SCORE";DC 3000 DC=4/(JT-DC):DH=JT-9/DC -3010 FOR I=0 TO J2:HO=8*I:FOR J=1 TO 10:VE=4+J:X=10*I+J -3020 IF X>JT THEN J=10:GOTO 3070 -3030 GOSUB 110:SR=X:CN=0:CT=3:GOSUB 310 -3040 PRINT SR$;">";:SR=(X-DH)*DC+1:CN=1:CT=4 -3050 IF SR<1 THEN SR=1 -3060 GOSUB 310:PRINT SR$ -3070 NEXT J:NEXT I -3080 VE=19:HO=0:GOSUB 110:PRINT "GEMIDDELDE CIJFER"; -3090 SR=(GM-DH)*DC+1:CT=4:GOSUB 310:PRINT SR$ -3100 PRINT "STANDAARDDEVIATIE";:SR=GS*DC:GOSUB 310 -3110 PRINT SR$:GOSUB 4400:IF A=1 THEN 3130 -3120 HO=0:GOTO 2970 +3010 FORI=0 TOJ2:HO=8*I:FORJ=1 TO10:VE=4+J:X=10*I+J +3020 IFX>JT THENJ=10:GOTO3070 +3030 GOSUB110:SR=X:CN=0:CT=3:GOSUB310 +3040 PRINTSR$;">";:SR=(X-DH)*DC+1:CN=1:CT=4 +3050 IFSR<1 THENSR=1 +3060 GOSUB310:PRINTSR$ +3070 NEXTJ:NEXTI +3080 VE=19:HO=0:GOSUB110:PRINT"GEMIDDELDE CIJFER"; +3090 SR=(GM-DH)*DC+1:CT=4:GOSUB310:PRINTSR$ +3100 PRINT"STANDAARDDEVIATIE";:SR=GS*DC:GOSUB310 +3110 PRINTSR$:GOSUB4400:IFA=1 THEN3130 +3120 HO=0:GOTO2970 3130 REM *** SCORES/CIJFERS LEERLINGEN * -3140 FOR I=0 TO I1:GOSUB 100 -3150 PRINT " LEERLING - SCORE - CIJFER" -3160 HO=7:FOR K=1 TO 10:H=10*I+K:VE=1+2*K:SR=H:CN=0:GOSUB 310 -3170 GOSUB 110:PRINT SR$;" ";:SR=SC(H):GOSUB 310:PRINT SR$; -3180 SR=(SC(H)-DH)*DC+1:IF SR<1 THEN SR=1 -3190 CY(H)=SR:CN=1:GOSUB 310:PRINT " ";SR$ -3200 IF H=II THEN K=10 -3210 NEXT K:GOSUB 4450 -3220 NEXT I +3140 FORI=0 TOI1:GOSUB100 +3150 PRINT" LEERLING - SCORE - CIJFER" +3160 HO=7:FORK=1 TO10:H=10*I+K:VE=1+2*K:SR=H:CN=0:GOSUB310 +3170 GOSUB110:PRINTSR$;" ";:SR=SC(H):GOSUB310:PRINTSR$; +3180 SR=(SC(H)-DH)*DC+1:IFSR<1 THENSR=1 +3190 CY(H)=SR:CN=1:GOSUB310:PRINT" ";SR$ +3200 IFH=II THENK=10 +3210 NEXTK:GOSUB4450 +3220 NEXTI 3230 REM *** SLOTMENU ****************** -3240 GOSUB 100:VE=4:HO=4:GOSUB 110:A=2 -3250 PRINT " U kunt nu:":VE=7:GOSUB 110 -3260 PRINT " 1 Stoppen":VE=9:GOSUB 110 -3270 PRINT " 2 De analyse nog eens over doen":VE=11:GOSUB 110 -3280 IF PR=1 THEN VE=VE+2:A=3:PRINT " 3 Het verslag afdrukken" -3300 GOSUB 110:SR=A+1:GOSUB 300 -3305 PRINT " ";SR$;" De toets wegschrijven" -3310 VE=17:GOSUB 110:GOSUB 200:PRINT " Keuze ?"; -3320 GOSUB 210:IN=VAL(IN$) -3330 IF (IN>SR) THEN 3360 -3340 IF (PR=0) AND(IN=3) THEN IN=4 -3350 ON IN GOTO 3900,2030,3400,3370 -3360 GOSUB 250:GOTO 3320 -3370 GOSUB 4800:GOTO 3230 +3240 GOSUB100:VE=4:HO=4:GOSUB110:A=2 +3250 PRINT" U kunt nu:":VE=7:GOSUB110 +3260 PRINT" 1 Stoppen":VE=9:GOSUB110 +3270 PRINT" 2 De analyse nog eens over doen":VE=11:GOSUB110 +3280 IFPR=1 THENVE=VE+2:A=3:PRINT" 3 Het verslag afdrukken" +3300 GOSUB110:SR=A+1:GOSUB300 +3305 PRINT" ";SR$;" De toets wegschrijven" +3310 VE=17:GOSUB110:GOSUB200:PRINT" Keuze ?"; +3320 GOSUB210:IN=VAL(IN$) +3330 IF(IN>SR) THEN3360 +3340 IF(PR=0) AND(IN=3) THENIN=4 +3350 ONIN GOTO3900,2030,3400,3370 +3360 GOSUB250:GOTO3320 +3370 GOSUB4800:GOTO3230 3400 REM *** VERSLAG AFDRUKKEN ********* -3410 GOSUB 100 -3420 PRINT "Printer klaar en ON LINE ?" -3430 PRINT :PRINT "Dan een toets indrukken." -3440 GOSUB 210 -3450 PRINT :PRINT "Even geduld a.u.b." -3460 SR$="Meerkeuzetoets "+CA$:GOSUB 350:GOSUB 360:GOSUB 360 -3470 SR$="De P en A waarden van de toetsvragen:":GOSUB 350 -3480 GOSUB 360:GOSUB 360 +3410 GOSUB100 +3420 PRINT"Printer klaar en ON LINE ?" +3430 PRINT:PRINT"Dan een toets indrukken." +3440 GOSUB210 +3450 PRINT:PRINT"Even geduld a.u.b." +3460 SR$="Meerkeuzetoets "+CA$:GOSUB350:GOSUB360:GOSUB360 +3470 SR$="De P en A waarden van de toetsvragen:":GOSUB350 +3480 GOSUB360:GOSUB360 3490 SR$=" P A B C D G.lln. S.lln." -3500 GOSUB 350:GOSUB 360 -3510 CN=0:CT=3:I=1:FOR J=1 TO JJ -3520 SR=J:GOSUB 310:SR$=SR$+". ":GOSUB 350 -3530 FOR K=0 TO 4 -3540 SR=GF(J,K):GOSUB 310:SR$=SR$+" ":GOSUB 350 -3550 NEXT K -3560 SR=D1(J):GOSUB 310:SR$=" "+SR$+" ":GOSUB 350 -3570 SR=D2(J):GOSUB 310:GOSUB 350 -3580 IF DV(I)=J THEN I=I+1:SR$="-- afgekeurd":GOSUB 350 -3590 GOSUB 360:NEXT J:GOSUB 360 -3600 SR$="Omzetting score -> cijfer":GOSUB 350:GOSUB 360 -3610 GOSUB 360 -3620 FOR J=0 TO JT -3630 SR=J:CN=0:CT=3:GOSUB 310 -3640 SR$=" "+SR$+" -> ":GOSUB 350 +3500 GOSUB350:GOSUB360 +3510 CN=0:CT=3:I=1:FORJ=1 TOJJ +3520 SR=J:GOSUB310:SR$=SR$+". ":GOSUB350 +3530 FORK=0 TO4 +3540 SR=GF(J,K):GOSUB310:SR$=SR$+" ":GOSUB350 +3550 NEXTK +3560 SR=D1(J):GOSUB310:SR$=" "+SR$+" ":GOSUB350 +3570 SR=D2(J):GOSUB310:GOSUB350 +3580 IFDV(I)=J THENI=I+1:SR$="-- afgekeurd":GOSUB350 +3590 GOSUB360:NEXTJ:GOSUB360 +3600 SR$="Omzetting score -> cijfer":GOSUB350:GOSUB360 +3610 GOSUB360 +3620 FORJ=0 TOJT +3630 SR=J:CN=0:CT=3:GOSUB310 +3640 SR$=" "+SR$+" -> ":GOSUB350 3650 CN=1:CT=4:SR=(J-DH)*DC+1 -3660 IF SR<1 THEN SR=1 -3670 GOSUB 310:GOSUB 350:GOSUB 360:NEXT J -3680 GOSUB 360 -3690 SR=(GM-DH)*DC+1:GOSUB 310:SR$="Gemiddeld "+SR$:GOSUB 350 -3700 GOSUB 360:SR=GS*DC:GOSUB 310:SR$="Standaarddev."+SR$ -3710 GOSUB 350:GOSUB 360:GOSUB 360 -3720 SR$="Resultaat leerlingen (0=sleutel):":GOSUB 350 -3730 GOSUB 360:GOSUB 360 -3740 SR$=" ll. cy. sc. 1 6 11 16 2":GOSUB 350 -3750 SR$="1 26 31 36 41 46":GOSUB 350:GOSUB 360 -3760 FOR I=0 TO II:CN=0:CT=3 -3770 SR=I:GOSUB 310:SR$=SR$+". ":GOSUB 350 -3780 CT=4:CN=1:SR=CY(I):GOSUB 310:GOSUB 350 -3790 CT=3:CN=0:SR=SC(I):GOSUB 310:SR$=SR$+" ":GOSUB 350 -3800 FOR J=1 TO JJ STEP 5 -3810 SR$=" "+MID$(A$(I),J,5):GOSUB 350 -3820 NEXT J:GOSUB 360 -3830 NEXT I:GOTO 3230 +3660 IFSR<1 THENSR=1 +3670 GOSUB310:GOSUB350:GOSUB360:NEXTJ +3680 GOSUB360 +3690 SR=(GM-DH)*DC+1:GOSUB310:SR$="Gemiddeld "+SR$:GOSUB350 +3700 GOSUB360:SR=GS*DC:GOSUB310:SR$="Standaarddev."+SR$ +3710 GOSUB350:GOSUB360:GOSUB360 +3720 SR$="Resultaat leerlingen (0=sleutel):":GOSUB350 +3730 GOSUB360:GOSUB360 +3740 SR$=" ll. cy. sc. 1 6 11 16 2":GOSUB350 +3750 SR$="1 26 31 36 41 46":GOSUB350:GOSUB360 +3760 FORI=0 TOII:CN=0:CT=3 +3770 SR=I:GOSUB310:SR$=SR$+". ":GOSUB350 +3780 CT=4:CN=1:SR=CY(I):GOSUB310:GOSUB350 +3790 CT=3:CN=0:SR=SC(I):GOSUB310:SR$=SR$+" ":GOSUB350 +3800 FORJ=1 TOJJ STEP5 +3810 SR$=" "+MID$(A$(I),J,5):GOSUB350 +3820 NEXTJ:GOSUB360 +3830 NEXTI:GOTO3230 3900 REM *** EINDE ********************* -3910 GOSUB 100:END +3910 GOSUB100:END 4000 REM *** INVOER ******************** -4005 FOR J=1 TO JJ:A(J)=0:NEXT J -4010 FOR J=0 TO J1 -4020 FOR K=1 TO 10 -4030 HO=8*J:VE=5+K:GOSUB 110 -4040 SR=10*J+K:CT=2:CN=0:GOSUB 310 -4050 IF SR<=JJ THEN PRINT " ";SR$;":"; -4060 NEXT K:NEXT J -4070 FOR J=0 TO J1 -4080 FOR K=1 TO 10 -4090 IF 10*J+K>JJ THEN 4280 -4100 SR=10*J+K:HO=8*J+4:VE=5+K:GOSUB 110 -4110 GOSUB 210 -4120 IF IN$="K" THEN 4190 -4130 IF IN$="J" THEN 4210 -4140 IF IN$="I" THEN 4230 -4150 IF IN$="M" THEN 4250 -4160 A=VAL(IN$):IF A=0 THEN A=ASC(IN$)-64 -4170 IF (((A>0) AND(A<5)) OR(A=24)) THEN 4270 -4180 GOSUB 250:GOTO 4110 -4190 IF (J0 THEN J=J-1:GOTO 4100 -4220 GOTO 4180 -4230 IF K>1 THEN K=K-1:GOTO 4100 -4240 GOTO 4180 -4250 IF (K<10) AND(SRJJ THEN4280 +4100 SR=10*J+K:HO=8*J+4:VE=5+K:GOSUB110 +4110 GOSUB210 +4120 IFIN$="K" THEN4190 +4130 IFIN$="J" THEN4210 +4140 IFIN$="I" THEN4230 +4150 IFIN$="M" THEN4250 +4160 A=VAL(IN$):IFA=0 THENA=ASC(IN$)-64 +4170 IF(((A>0) AND(A<5)) OR(A=24)) THEN4270 +4180 GOSUB250:GOTO4110 +4190 IF(J0 THENJ=J-1:GOTO4100 +4220 GOTO4180 +4230 IFK>1 THENK=K-1:GOTO4100 +4240 GOTO4180 +4250 IF(K<10) AND(SR"?" THEN C=0:RETURN -22090 RESTORE :READ A,A:FOR I=0 TO 80:READ A$:NEXT I:GOSUB 100 -22100 READ U$:IF U$="#" THEN GOSUB 22140:GOTO 22100 -22110 IF U$="##" THEN GOSUB 4450:GOTO 22130 -22120 PRINT U$:GOTO 22100 +22010 ONC GOTO22030,22230 +22020 GOTO22250 +22030 VE=22:HO=3:GOSUB110 +22040 PRINT"? = UITLEG "; +22050 IFPR=1 THENPRINT"OP SCHERM, P = OP PRINTER"; +22060 PRINT:PRINT" ANDERE TOETS = VERDER"; +22070 GOSUB210:IF(IN$="P") OR(IN$="p") THEN22150 +22080 IFIN$<>"?" THENC=0:RETURN +22090 RESTORE:READA,A:FORI=0 TO80:READA$:NEXTI:GOSUB100 +22100 READU$:IFU$="#" THENGOSUB22140:GOTO22100 +22110 IFU$="##" THENGOSUB4450:GOTO22130 +22120 PRINTU$:GOTO22100 22130 RETURN -22140 GOSUB 4450:GOSUB 100:RETURN -22150 RESTORE :READ A,A:FOR I=0 TO 80:READ A$:NEXT I -22160 GOSUB 100:PRINT "Printer Ok ? Dan een toets aanslaan" -22170 GOSUB 210 -22180 READ U$:IF U$="#" THEN GOSUB 360:GOTO 22180 -22190 IF U$="##" THEN 22220 -22200 SR$=U$:GOSUB 350:GOSUB 360 -22210 GOTO 22180 +22140 GOSUB4450:GOSUB100:RETURN +22150 RESTORE:READA,A:FORI=0 TO80:READA$:NEXTI +22160 GOSUB100:PRINT"Printer Ok ? Dan een toets aanslaan" +22170 GOSUB210 +22180 READU$:IFU$="#" THENGOSUB360:GOTO22180 +22190 IFU$="##" THEN22220 +22200 SR$=U$:GOSUB350:GOSUB360 +22210 GOTO22180 22220 C=0:RETURN -22230 VE=15:GOSUB 110 -22240 PRINT "4 EEN VOORBEELD VAN EEN ANALYSE":RETURN +22230 VE=15:GOSUB110 +22240 PRINT"4 EEN VOORBEELD VAN EEN ANALYSE":RETURN 22250 REM *** VOORBEELD INLEZEN ******** -22260 RESTORE -22270 READ II,JJ:I1=INT((II-1)/10) -22280 DIM A$(II):J1=INT((JJ-1)/10) -22290 FOR I=0 TO II:READ A$(I):NEXT I -22300 GOTO 2000 +22260 RESTORE +22270 READII,JJ:I1=INT((II-1)/10) +22280 DIMA$(II):J1=INT((JJ-1)/10) +22290 FORI=0 TOII:READA$(I):NEXTI +22300 GOTO2000 25000 REM *** DATA VOORBEELD *********** -25010 DATA 80,32 -25020 DATA "22124211421242132243123131412411" -25030 DATA "23322232411243232442142134124113" -25040 DATA "22144311211212112432313131324221" -25050 DATA "24124211441222132431214133443211" -25060 DATA "22123213421242112122113131222211" -25070 DATA "22123312421242122134121141324211" -25080 DATA "22122314432213432432413121243211" -25090 DATA "24124211421242132421323131322411" -25100 DATA "42143213111221432432323341343221" -25110 DATA "22123311433141133131122141144221" -25120 DATA "22122233411211132423213231341211" -25130 DATA "22124213411232432132323131224311" -25140 DATA "32311214312311132422343232213231" -25150 DATA "12242342413221432123423131324531" -25160 DATA "42123211411214132431143121422431" -25170 DATA "22142224414111432122123244244221" -25180 DATA "21223241243211432321123141444131" -25190 DATA "23134211421241112432133131324211" -25200 DATA "23124311422211132431134131322211" -25210 DATA "22132241121211132431143444324231" -25220 DATA "22124341321212132422123131422213" -25230 DATA "21134214111231132142344121322211" -25240 DATA "22142411331243112412143141342223" -25250 DATA "22233331331214232431123144424211" -25260 DATA "23321312411141112413123141224331" -25270 DATA "22121231412213132332422141323421" -25280 DATA "22211311412414132234232144442211" -25290 DATA "22144211421312132233443131423221" -25300 DATA "24121231321242132132142141421211" -25310 DATA "42141314113421123411243141324321" -25320 DATA "22124211421211232243243131444214" -25330 DATA "22134224231111333432343131324411" -25340 DATA "22224231121422432442442131342111" -25350 DATA "24124442411241112343243144224413" -25360 DATA "23124231313121432432123131424411" -25370 DATA "23142334112342132422144131424221" -25380 DATA "23124231421222432432143131421211" -25390 DATA "22141211423214142312244141221211" -25400 DATA "32143211433314132312442421444121" -25410 DATA "42141314311344232433343241323431" -25420 DATA "14144231314233432341223123441214" -25430 DATA "22123221411311331241122111422221" -25440 DATA "22123231421211422423223141322221" -25450 DATA "22324231411242132232143131224313" -25460 DATA "23124211411212132422123131322211" -25470 DATA "22134211321231132433233141322211" -25480 DATA "42141312331441412134323241323231" -25490 DATA "23114231321242132233122121424113" -25500 DATA "23123251521142132412233141442111" -25510 DATA "23142213441141222133343131422411" -25520 DATA "24123211311224412332241231423233" -25530 DATA "24124211411242132434113131322211" -25540 DATA "24123231414212132143143131422313" -25550 DATA "42121231311244432432144111324211" -25560 DATA "24123211413241432213442241321221" -25570 DATA "21124213423142423311343141423431" -25580 DATA "23111231413131434433123131322411" -25590 DATA "22122231421212132341223131422321" -25600 DATA "22144221411311412333143141124131" -25610 DATA "23142211312212132413141341324211" -25620 DATA "23142211423212112413143141324211" -25630 DATA "23124234321232132231143141422111" -25640 DATA "23122231431212132331123131424331" -25650 DATA "23124231421221432432243141422311" -25660 DATA "22122311411242132332114131422231" -25670 DATA "24143231432311132422432134222411" -25680 DATA "24142211413212132413421344324411" -25690 DATA "42131322411233134321341331243411" -25700 DATA "22142414121211132435233134232134" -25710 DATA "23134234421123412332413144434231" -25720 DATA "22123241421211432133123131422431" -25730 DATA "22124221431432132313234131423111" -25740 DATA "22141233114123432313243141234132" -25750 DATA "22124211111222432311343231223211" -25760 DATA "23113231321121132442123131424211" -25770 DATA "22114231414444112431312141322411" -25780 DATA "23124234321212133232233131322221" -25790 DATA "22122241323231432412412131142321" -25800 DATA "22124211432211332234124241341331" -25810 DATA "22134211421321232422133141422111" -25820 DATA "22124211421231232422123141422211" +25010 DATA80,32 +25020 DATA"22124211421242132243123131412411" +25030 DATA"23322232411243232442142134124113" +25040 DATA"22144311211212112432313131324221" +25050 DATA"24124211441222132431214133443211" +25060 DATA"22123213421242112122113131222211" +25070 DATA"22123312421242122134121141324211" +25080 DATA"22122314432213432432413121243211" +25090 DATA"24124211421242132421323131322411" +25100 DATA"42143213111221432432323341343221" +25110 DATA"22123311433141133131122141144221" +25120 DATA"22122233411211132423213231341211" +25130 DATA"22124213411232432132323131224311" +25140 DATA"32311214312311132422343232213231" +25150 DATA"12242342413221432123423131324531" +25160 DATA"42123211411214132431143121422431" +25170 DATA"22142224414111432122123244244221" +25180 DATA"21223241243211432321123141444131" +25190 DATA"23134211421241112432133131324211" +25200 DATA"23124311422211132431134131322211" +25210 DATA"22132241121211132431143444324231" +25220 DATA"22124341321212132422123131422213" +25230 DATA"21134214111231132142344121322211" +25240 DATA"22142411331243112412143141342223" +25250 DATA"22233331331214232431123144424211" +25260 DATA"23321312411141112413123141224331" +25270 DATA"22121231412213132332422141323421" +25280 DATA"22211311412414132234232144442211" +25290 DATA"22144211421312132233443131423221" +25300 DATA"24121231321242132132142141421211" +25310 DATA"42141314113421123411243141324321" +25320 DATA"22124211421211232243243131444214" +25330 DATA"22134224231111333432343131324411" +25340 DATA"22224231121422432442442131342111" +25350 DATA"24124442411241112343243144224413" +25360 DATA"23124231313121432432123131424411" +25370 DATA"23142334112342132422144131424221" +25380 DATA"23124231421222432432143131421211" +25390 DATA"22141211423214142312244141221211" +25400 DATA"32143211433314132312442421444121" +25410 DATA"42141314311344232433343241323431" +25420 DATA"14144231314233432341223123441214" +25430 DATA"22123221411311331241122111422221" +25440 DATA"22123231421211422423223141322221" +25450 DATA"22324231411242132232143131224313" +25460 DATA"23124211411212132422123131322211" +25470 DATA"22134211321231132433233141322211" +25480 DATA"42141312331441412134323241323231" +25490 DATA"23114231321242132233122121424113" +25500 DATA"23123251521142132412233141442111" +25510 DATA"23142213441141222133343131422411" +25520 DATA"24123211311224412332241231423233" +25530 DATA"24124211411242132434113131322211" +25540 DATA"24123231414212132143143131422313" +25550 DATA"42121231311244432432144111324211" +25560 DATA"24123211413241432213442241321221" +25570 DATA"21124213423142423311343141423431" +25580 DATA"23111231413131434433123131322411" +25590 DATA"22122231421212132341223131422321" +25600 DATA"22144221411311412333143141124131" +25610 DATA"23142211312212132413141341324211" +25620 DATA"23142211423212112413143141324211" +25630 DATA"23124234321232132231143141422111" +25640 DATA"23122231431212132331123131424331" +25650 DATA"23124231421221432432243141422311" +25660 DATA"22122311411242132332114131422231" +25670 DATA"24143231432311132422432134222411" +25680 DATA"24142211413212132413421344324411" +25690 DATA"42131322411233134321341331243411" +25700 DATA"22142414121211132435233134232134" +25710 DATA"23134234421123412332413144434231" +25720 DATA"22123241421211432133123131422431" +25730 DATA"22124221431432132313234131423111" +25740 DATA"22141233114123432313243141234132" +25750 DATA"22124211111222432311343231223211" +25760 DATA"23113231321121132442123131424211" +25770 DATA"22114231414444112431312141322411" +25780 DATA"23124234321212133232233131322221" +25790 DATA"22122241323231432412412131142321" +25800 DATA"22124211432211332234124241341331" +25810 DATA"22134211421321232422133141422111" +25820 DATA"22124211421231232422123141422211" 26000 REM *** DATA UITLEG ************** -26010 DATA " MEERKEUZETOETS ANALYSE","" -26020 DATA "Als u meerkeuzetoetsen gebruikt, is het" -26030 DATA "een fiks karwei om na te gaan of alle" -26040 DATA "vragen wel geschikt zijn als toetsvraag." -26050 DATA "Dit analyse programma bepaalt alle" -26060 DATA "scores van zo'n toets en berekent daar" -26070 DATA "de gegevens mee die u nodig heeft om de" -26080 DATA "vragen te beoordelen.","" -26090 DATA "Daarnaast berekent het (volgens uw wen-" -26100 DATA "sen) de cijfers, rekening houdend met" -26110 DATA "eventuele afgekeurde vragen.","" -26120 DATA "Als u een printer heeft kunt u na de" -26130 DATA "analyse een volledig verslag op papier" -26140 DATA "krijgen.","" -26150 DATA "Als voorbeeld is een toets met 32 vra-" -26160 DATA "gen, gemaakt door 80 leerlingen, in het" -26170 DATA "programma opgenomen.","#" -26180 DATA "Voor elke vraag wordt berekend (in %):","" -26190 DATA "- hoe vaak het goede antwoord werd" -26200 DATA " gekozen (= P-waarde),","" -26210 DATA "- hoe vaak elke afleider werd gekozen" -26220 DATA " (= A-waarden),","" -26230 DATA "- hoeveel van de best scorende leerlin-" -26240 DATA " gen de vraag goed hadden,","" -26250 DATA "- en hoeveel van de slechtst scorende" -26260 DATA " leerlingen het goede antwoord vonden.","","" -26270 DATA "Als een vraag niet voldoet aan uw eisen" -26280 DATA "kunt u deze afkeuren, buiten de beoor-" -26290 DATA "deling houden en in een volgende toets" -26300 DATA "eventueel niet meer (zo) opnemen.","#" -26310 DATA "Als alles naar uw zin is berekent het" -26320 DATA "programma de nieuwe scores voor de" -26330 DATA "leerlingen en het doet u een voorstel" -26340 DATA "om de scores in cijfers om te zetten.","" -26350 DATA "Deze omzetting gaat uit van een 1 voor" -26360 DATA "score 0 en een 10 voor 100% goede" -26370 DATA "antwoorden.","" -26380 DATA "U kunt voor een andere omzetting kiezen" -26390 DATA "door niet accoord te gaan met het voor-" -26400 DATA "stel en de score aan te geven waaraan u" -26410 DATA "het cijfer 6 wilt toekennen.","" -26420 DATA "Die score hoeft geen geheel getal te" -26430 DATA "zijn.","" -26440 DATA "Het programma maakt een nieuwe tabel" -26450 DATA "voor u, uitgaande van een 10 voor 100%" -26460 DATA "goede antwoorden. De tabel verloopt" -26470 DATA "lineair, dus komt dan aan de onderkant" -26480 DATA "niet meer uit op een 1 voor score 0.","#" -26490 DATA "U kunt dit herhalen tot u de verdeling" -26500 DATA "heeft die u wenst, tenzij dat een niet-" -26510 DATA "lineaire schaal is. In dat geval zult u" -26520 DATA "zelf cijfers moeten toekennen.","" -26530 DATA "Als de omzettingstabel is vastgesteld" -26540 DATA "krijgt u de scores en cijfers van alle" -26550 DATA "leerlingen op het scherm.","" -26560 DATA "#" -26570 DATA "AANWIJZINGEN VOOR HET INVOEREN","" -26580 DATA "- a.u.b. alleen hoofdletters gebruiken","" -26590 DATA "- bij invoeren kunt u in plaats van A," -26600 DATA " B, C of D ook 1, 2, 3 of 4 intypen","" -26610 DATA "- een niet of meermalen ingevulde" -26620 DATA " vraag geeft u aan met X","" -26630 DATA "- met de toetsen I, J, K en M kunt u" -26640 DATA " resp. naar boven, links, rechts en" -26650 DATA " beneden gaan om te wijzigen","" -26660 DATA "- het programma staat geen onvolledig" -26670 DATA " invullen toe","" -26680 DATA "- na elke leerling wordt u een bevesti-" -26690 DATA " ging gevraagd. Met S kunt u het in-" -26700 DATA " voeren onderbreken om een deel van de" -26710 DATA " toets weg te schrijven","#" -26720 DATA "NOG MEER AANWIJZINGEN","" -26730 DATA "- De eigenlijke schrijf en leesroutines" -26740 DATA " moet u nog (laten) maken. Deze staan" -26750 DATA " resp. vanaf regel 20000 en 21000." -26760 DATA " Hier is nu (achter REMs) een voor-" -26770 DATA " beeld voor MSX - CASSETTE opgenomen.","" -26780 DATA "- Misschien vindt u het praktisch om in" -26790 DATA " plaats van I,J,K,M uw cursortoetsen" -26800 DATA " te gebruiken? Dan regels 4120-4150" -26810 DATA " aanpassen.","" -26820 DATA "- De uitleg en het voorbeeld nemen veel" -26830 DATA " ruimte in. Als u de regels 22000 t/m" -26840 DATA " 26870 verwijdert, op 22000 RETURN zet" -26850 DATA " en in regel 1250 ',22250' weghaalt" -26860 DATA " werkt het programma net zo goed.","","" -26870 DATA " VEEL SUCCES MET DE TOEPASSING." -26880 DATA "##" +26010 DATA" MEERKEUZETOETS ANALYSE","" +26020 DATA"Als u meerkeuzetoetsen gebruikt, is het" +26030 DATA"een fiks karwei om na te gaan of alle" +26040 DATA"vragen wel geschikt zijn als toetsvraag." +26050 DATA"Dit analyse programma bepaalt alle" +26060 DATA"scores van zo'n toets en berekent daar" +26070 DATA"de gegevens mee die u nodig heeft om de" +26080 DATA"vragen te beoordelen.","" +26090 DATA"Daarnaast berekent het (volgens uw wen-" +26100 DATA"sen) de cijfers, rekening houdend met" +26110 DATA"eventuele afgekeurde vragen.","" +26120 DATA"Als u een printer heeft kunt u na de" +26130 DATA"analyse een volledig verslag op papier" +26140 DATA"krijgen.","" +26150 DATA"Als voorbeeld is een toets met 32 vra-" +26160 DATA"gen, gemaakt door 80 leerlingen, in het" +26170 DATA"programma opgenomen.","#" +26180 DATA"Voor elke vraag wordt berekend (in %):","" +26190 DATA"- hoe vaak het goede antwoord werd" +26200 DATA" gekozen (= P-waarde),","" +26210 DATA"- hoe vaak elke afleider werd gekozen" +26220 DATA" (= A-waarden),","" +26230 DATA"- hoeveel van de best scorende leerlin-" +26240 DATA" gen de vraag goed hadden,","" +26250 DATA"- en hoeveel van de slechtst scorende" +26260 DATA" leerlingen het goede antwoord vonden.","","" +26270 DATA"Als een vraag niet voldoet aan uw eisen" +26280 DATA"kunt u deze afkeuren, buiten de beoor-" +26290 DATA"deling houden en in een volgende toets" +26300 DATA"eventueel niet meer (zo) opnemen.","#" +26310 DATA"Als alles naar uw zin is berekent het" +26320 DATA"programma de nieuwe scores voor de" +26330 DATA"leerlingen en het doet u een voorstel" +26340 DATA"om de scores in cijfers om te zetten.","" +26350 DATA"Deze omzetting gaat uit van een 1 voor" +26360 DATA"score 0 en een 10 voor 100% goede" +26370 DATA"antwoorden.","" +26380 DATA"U kunt voor een andere omzetting kiezen" +26390 DATA"door niet accoord te gaan met het voor-" +26400 DATA"stel en de score aan te geven waaraan u" +26410 DATA"het cijfer 6 wilt toekennen.","" +26420 DATA"Die score hoeft geen geheel getal te" +26430 DATA"zijn.","" +26440 DATA"Het programma maakt een nieuwe tabel" +26450 DATA"voor u, uitgaande van een 10 voor 100%" +26460 DATA"goede antwoorden. De tabel verloopt" +26470 DATA"lineair, dus komt dan aan de onderkant" +26480 DATA"niet meer uit op een 1 voor score 0.","#" +26490 DATA"U kunt dit herhalen tot u de verdeling" +26500 DATA"heeft die u wenst, tenzij dat een niet-" +26510 DATA"lineaire schaal is. In dat geval zult u" +26520 DATA"zelf cijfers moeten toekennen.","" +26530 DATA"Als de omzettingstabel is vastgesteld" +26540 DATA"krijgt u de scores en cijfers van alle" +26550 DATA"leerlingen op het scherm.","" +26560 DATA"#" +26570 DATA"AANWIJZINGEN VOOR HET INVOEREN","" +26580 DATA"- a.u.b. alleen hoofdletters gebruiken","" +26590 DATA"- bij invoeren kunt u in plaats van A," +26600 DATA" B, C of D ook 1, 2, 3 of 4 intypen","" +26610 DATA"- een niet of meermalen ingevulde" +26620 DATA" vraag geeft u aan met X","" +26630 DATA"- met de toetsen I, J, K en M kunt u" +26640 DATA" resp. naar boven, links, rechts en" +26650 DATA" beneden gaan om te wijzigen","" +26660 DATA"- het programma staat geen onvolledig" +26670 DATA" invullen toe","" +26680 DATA"- na elke leerling wordt u een bevesti-" +26690 DATA" ging gevraagd. Met S kunt u het in-" +26700 DATA" voeren onderbreken om een deel van de" +26710 DATA" toets weg te schrijven","#" +26720 DATA"NOG MEER AANWIJZINGEN","" +26730 DATA"- De eigenlijke schrijf en leesroutines" +26740 DATA" moet u nog (laten) maken. Deze staan" +26750 DATA" resp. vanaf regel 20000 en 21000." +26760 DATA" Hier is nu (achter REMs) een voor-" +26770 DATA" beeld voor MSX - CASSETTE opgenomen.","" +26780 DATA"- Misschien vindt u het praktisch om in" +26790 DATA" plaats van I,J,K,M uw cursortoetsen" +26800 DATA" te gebruiken? Dan regels 4120-4150" +26810 DATA" aanpassen.","" +26820 DATA"- De uitleg en het voorbeeld nemen veel" +26830 DATA" ruimte in. Als u de regels 22000 t/m" +26840 DATA" 26870 verwijdert, op 22000 RETURN zet" +26850 DATA" en in regel 1250 ',22250' weghaalt" +26860 DATA" werkt het programma net zo goed.","","" +26870 DATA" VEEL SUCCES MET DE TOEPASSING." +26880 DATA"##" 30000 REM ***************************** 30010 REM * * 30020 REM * November '86 * @@ -603,6 +604,5 @@ 30060 REM * 7322 MX Apeldoorn * 30070 REM * * 30080 REM ***************************** -30090 REM +30090 REM 30100 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/24_Beschrijving_8085_simulator.bc2 b/Best_of_Basicode_4/24_Beschrijving_8085_simulator.bc2 index f4b607c..b3ab100 100644 --- a/Best_of_Basicode_4/24_Beschrijving_8085_simulator.bc2 +++ b/Best_of_Basicode_4/24_Beschrijving_8085_simulator.bc2 @@ -1,512 +1,512 @@ -1000 A=600:GOTO 20 -1010 GOSUB 100:REM 8085-SIMULATOR BESCHRIJVING -1020 BI=0:DE=0:HP=40:VP=24:KL$="":N=1:GOSUB 100 -1130 PRINT :PRINT "Naar Printer (1) of Scherm (2) "; -1140 GOSUB 210:IF (IN$<>"1") AND(IN$<>"2") THEN 1140 -1150 PT=1:IF IN$="2" THEN PT=0:GOTO 1230 -1160 PRINT :PRINT :PRINT "Hoeveel letters per regel "; -1170 INPUT HP -1180 PRINT :PRINT "Kantlijnbreedte: "; -1190 INPUT SP:GOSUB 1900:KL$=SP$ -1200 HP=HP-SP:IF SP>1 THEN HP=HP-SP+2 -1210 PRINT :PRINT "Aantal regels per pagina "; -1220 INPUT VP:VP=VP-6 -1230 RT=0:H=0:SR$=" ":GOSUB 20000 -1320 GOSUB 100:SR$="8085-SIMULATOR" -1330 SP=INT((HP-14)/2)::IF PT=1 THEN SP=SP-3 -1340 GOSUB 1900 -1350 SR$=SP$+SR$:GOSUB 20000 -1360 SR$=SP$+"--------------":GOSUB 20000 -1370 SR$=" ":GOSUB 20000 -1375 A$="":RESTORE :READ BB$ -1380 GOSUB 22100 -1390 GOSUB 22190 -1400 GOTO 1380 + +1000 A=600:GOTO20 +1010 GOSUB100:REM 8085-SIMULATOR BESCHRIJVING +1020 BI=0:DE=0:HP=40:VP=24:KL$="":N=1:GOSUB100 +1130 PRINT:PRINT"Naar Printer (1) of Scherm (2) "; +1140 GOSUB210:IF(IN$<>"1") AND(IN$<>"2") THEN1140 +1150 PT=1:IFIN$="2" THENPT=0:GOTO1230 +1160 PRINT:PRINT:PRINT"Hoeveel letters per regel "; +1170 INPUTHP +1180 PRINT:PRINT"Kantlijnbreedte: "; +1190 INPUTSP:GOSUB1900:KL$=SP$ +1200 HP=HP-SP:IFSP>1 THENHP=HP-SP+2 +1210 PRINT:PRINT"Aantal regels per pagina "; +1220 INPUTVP:VP=VP-6 +1230 RT=0:H=0:SR$=" ":GOSUB20000 +1320 GOSUB100:SR$="8085-SIMULATOR" +1330 SP=INT((HP-14)/2)::IFPT=1 THENSP=SP-3 +1340 GOSUB1900 +1350 SR$=SP$+SR$:GOSUB20000 +1360 SR$=SP$+"--------------":GOSUB20000 +1370 SR$=" ":GOSUB20000 +1375 A$="":RESTORE:READBB$ +1380 GOSUB22100 +1390 GOSUB22190 +1400 GOTO1380 1410 END -1900 SP$="":FOR I=1 TO SP:SP$=SP$+" ":NEXT I:RETURN +1900 SP$="":FORI=1 TOSP:SP$=SP$+" ":NEXTI:RETURN 20000 REM AFDRUK SUBROUTINE -20010 IF SR$="" THEN RETURN -20020 IF PT=1 THEN 20060 -20030 PRINT SR$ -20040 RT=RT+1:IF RT=VP-4 THEN GOSUB 21000 +20010 IFSR$="" THENRETURN +20020 IFPT=1 THEN20060 +20030 PRINTSR$ +20040 RT=RT+1:IFRT=VP-4 THENGOSUB21000 20050 RETURN -20060 SR$=KL$+SR$:GOSUB 350:GOSUB 360:RT=RT+1 -20070 IF RT=VP THEN GOSUB 22000 +20060 SR$=KL$+SR$:GOSUB350:GOSUB360:RT=RT+1 +20070 IFRT=VP THENGOSUB22000 20080 RETURN 21000 REM SCHERM VOL -21010 IF RT=0 THEN RETURN -21020 HO=0:VE=VP-1:GOSUB 110 -21030 PRINT ""; -21040 GOSUB 210:GOSUB 100:RT=0:RETURN +21010 IFRT=0 THENRETURN +21020 HO=0:VE=VP-1:GOSUB110 +21030 PRINT""; +21040 GOSUB210:GOSUB100:RT=0:RETURN 22000 REM papier vol -22010 GOSUB 100:FOR I=1 TO 6:GOSUB 360:NEXT I -22020 PRINT "Zet de printer bovenaan nieuwe pagina" -22030 PRINT "en druk daarna op een toets." -22040 GOSUB 210:RT=0:GOSUB 100 -22050 N=N+1:SR=N:GOSUB 300:N$=SR$ +22010 GOSUB100:FORI=1 TO6:GOSUB360:NEXTI +22020 PRINT"Zet de printer bovenaan nieuwe pagina" +22030 PRINT"en druk daarna op een toets." +22040 GOSUB210:RT=0:GOSUB100 +22050 N=N+1:SR=N:GOSUB300:N$=SR$ 22060 SR$="8085-SIMULATOR pagina "+N$ -22070 NL=LEN(SR$):GOSUB 20060:SR$="" -22080 SR$=SR$+"-":IF LEN(SR$)"" THEN A$=A$+" " -22120 A$=A$+BB$:READ BB$ -22121 IF BB$="**" THEN READ BB$:IF PT=0 THEN GOSUB 210 -22122 IF BB$="+++++" THEN GOSUB 22480:GOTO 22121 -22123 IF RIGHT$(BB$,1)="#" THEN GOSUB 22380 -22124 IF RIGHT$(BB$,1)=";" THEN GOSUB 22430 -22130 IF LEFT$(BB$,1)="#" THEN H=1:GOTO 22180 -22140 IF LEFT$(BB$,1)="." THEN H=1:GOTO 22180 -22150 IF A$=". " THEN 22180 -22160 IF LEFT$(A$,1)="#" THEN 22180 -22170 IF LEN(A$)"" THENA$=A$+" " +22120 A$=A$+BB$:READBB$ +22121 IFBB$="**" THENREADBB$:IFPT=0 THENGOSUB210 +22122 IFBB$="+++++" THENGOSUB22480:GOTO22121 +22123 IFRIGHT$(BB$,1)="#" THENGOSUB22380 +22124 IFRIGHT$(BB$,1)=";" THENGOSUB22430 +22130 IFLEFT$(BB$,1)="#" THENH=1:GOTO22180 +22140 IFLEFT$(BB$,1)="." THENH=1:GOTO22180 +22150 IFA$=". " THEN22180 +22160 IFLEFT$(A$,1)="#" THEN22180 +22170 IFLEN(A$)".") AND(H<3) THEN 22260 +22200 IFLEFT$(A$,1)="#" THENH=3 +22210 IF(LEFT$(A$,1)<>".") AND(H<3) THEN22260 22220 LL=LEN(A$):A$=RIGHT$(A$,LL-1) -22230 IF H<3 THEN 22260 -22240 IF PT=0 THEN GOSUB 21010 -22250 IF PT=1 THEN SR$=" ":GOSUB 20000 -22260 IF A$=" " THEN SR$=A$:A$="":GOSUB 20000:GOTO 22370 -22270 L=LEN(A$):IF (H=0) AND(L5 THEN GOSUB 100:RETURN -22510 ON DE GOSUB 22720,22720,22550,22775,22775 -22515 IF DE=3 THEN RETURN -22520 IF DE=1 THEN GOSUB 210:GOSUB 100:RETURN -22530 IF DE=2 THEN RETURN -22540 IF DE>3 THEN VE=1:HO=0:GOSUB 110:READ BB$:RETURN -22550 GOSUB 210:GOSUB 22580 -22560 IF IN$<>" " THEN 22550 +22480 READBB$:IFPT=1 THENRETURN +22490 A$="":RT=0:DE=DE+1:IFDE>5 THENGOSUB100:RETURN +22510 ONDE GOSUB22720,22720,22550,22775,22775 +22515 IFDE=3 THENRETURN +22520 IFDE=1 THENGOSUB210:GOSUB100:RETURN +22530 IFDE=2 THENRETURN +22540 IFDE>3 THENVE=1:HO=0:GOSUB110:READBB$:RETURN +22550 GOSUB210:GOSUB22580 +22560 IFIN$<>" " THEN22550 22570 RETURN -22580 IF (IN$<"A") OR(IN$>"H") THEN RETURN +22580 IF(IN$<"A") OR(IN$>"H") THENRETURN 22590 A1=ASC(IN$)-ASC("A"):VE=A1+1:A1=2^A1 22600 G=INT(BI/A1):A2=INT(G/2)*2 -22610 IF G=A2 THEN BI=BI+A1:G=1:GOTO 22630 +22610 IFG=A2 THENBI=BI+A1:G=1:GOTO22630 22620 BI=BI-A1:G=0 -22630 HO=4:GOSUB 110 -22640 FOR J=1 TO 5 -22650 PRINT " ";:GOSUB 110 -22660 FOR A2=1 TO 50:NEXT A2 -22670 PRINT "-------->";:GOSUB 110 -22680 FOR A2=1 TO 50:NEXT A2 -22690 NEXT J -22700 SR=G:GOSUB 300 -22710 HO=16:GOSUB 110:PRINT SR$:RETURN -22720 HO=4:VE=0:GOSUB 110:PRINT "INPUT 00 "; -22730 PRINT "OUTPUT 00":ZZ$="--------":HO=0 -22740 FOR I=0 TO 7 -22750 SR=I:GOSUB 300 -22760 PRINT "B";SR$;" ";ZZ$;"> ( 0 ) ( 0 ) ";ZZ$;"> B";SR$ -22770 NEXT I -22775 IF DE>3 THEN GOSUB 100 -22780 VE=10:HO=0:GOSUB 110 -22790 IF DE=2 THEN RETURN +22630 HO=4:GOSUB110 +22640 FORJ=1 TO5 +22650 PRINT" ";:GOSUB110 +22660 FORA2=1 TO50:NEXTA2 +22670 PRINT"-------->";:GOSUB110 +22680 FORA2=1 TO50:NEXTA2 +22690 NEXTJ +22700 SR=G:GOSUB300 +22710 HO=16:GOSUB110:PRINTSR$:RETURN +22720 HO=4:VE=0:GOSUB110:PRINT"INPUT 00 "; +22730 PRINT"OUTPUT 00":ZZ$="--------":HO=0 +22740 FORI=0 TO7 +22750 SR=I:GOSUB300 +22760 PRINT"B";SR$;" ";ZZ$;"> ( 0 ) ( 0 ) ";ZZ$;"> B";SR$ +22770 NEXTI +22775 IFDE>3 THENGOSUB100 +22780 VE=10:HO=0:GOSUB110 +22790 IFDE=2 THENRETURN 22795 ZZ$="--------" -22800 PRINT "INSTRUCTIE ";ZZ$;ZZ$;ZZ$;"----" -22810 PRINT " REGISTER *":HO=22:VE=11:GOSUB 110 -22820 PRINT "*":HO=38:GOSUB 110:PRINT "*" -22830 PRINT "+ DECODING ";ZZ$;ZZ$;ZZ$;"----" -22840 HO=3:VE=14:GOSUB 110:PRINT "AUX.":HO=14:GOSUB 110 -22850 PRINT "ACCU":HO=25:GOSUB 110:PRINT "PROGR. TELLER" -22860 HO=1:VE=15:GOSUB 110:PRINT ZZ$;" ";ZZ$ -22870 VE=17:GOSUB 110:PRINT ZZ$;" ";ZZ$ +22800 PRINT"INSTRUCTIE ";ZZ$;ZZ$;ZZ$;"----" +22810 PRINT" REGISTER *":HO=22:VE=11:GOSUB110 +22820 PRINT"*":HO=38:GOSUB110:PRINT"*" +22830 PRINT"+ DECODING ";ZZ$;ZZ$;ZZ$;"----" +22840 HO=3:VE=14:GOSUB110:PRINT"AUX.":HO=14:GOSUB110 +22850 PRINT"ACCU":HO=25:GOSUB110:PRINT"PROGR. TELLER" +22860 HO=1:VE=15:GOSUB110:PRINTZZ$;" ";ZZ$ +22870 VE=17:GOSUB110:PRINTZZ$;" ";ZZ$ 22880 HO=25:ZZ$=ZZ$+"-----" -22890 FOR I=15 TO 23 STEP 2 -22900 VE=I:GOSUB 110:PRINT ZZ$; -22910 NEXT I -22920 HO=1:VE=16:GOSUB 110:PRINT "*":HO=8:GOSUB 110:PRINT "*" -22930 HO=12:GOSUB 110:PRINT "*":HO=19:GOSUB 110:PRINT "*" -22940 HO=25:GOSUB 110:PRINT "*":HO=37:GOSUB 110:PRINT "*" -22950 HO=1:VE=18:GOSUB 110:PRINT "******** ******** H" -22960 PRINT " *":PRINT " *":PRINT " *" -22970 PRINT " *********** B" -22980 HO=9:VE=19:GOSUB 110:PRINT "* * *":VE=20:GOSUB 110 -22990 PRINT " * * D":VE=21:GOSUB 110 -23000 PRINT "ALU *":VE=18:HO=31:GOSUB 110:PRINT "* L" -23010 VE=20:GOSUB 110:PRINT "* E" -23020 VE=22:GOSUB 110:PRINT "* C" -23030 HO=1:VE=23:GOSUB 110:PRINT "S=0 Z=0 A=0 P=0 C=0"; +22890 FORI=15 TO23 STEP2 +22900 VE=I:GOSUB110:PRINTZZ$; +22910 NEXTI +22920 HO=1:VE=16:GOSUB110:PRINT"*":HO=8:GOSUB110:PRINT"*" +22930 HO=12:GOSUB110:PRINT"*":HO=19:GOSUB110:PRINT"*" +22940 HO=25:GOSUB110:PRINT"*":HO=37:GOSUB110:PRINT"*" +22950 HO=1:VE=18:GOSUB110:PRINT"******** ******** H" +22960 PRINT" *":PRINT" *":PRINT" *" +22970 PRINT" *********** B" +22980 HO=9:VE=19:GOSUB110:PRINT"* * *":VE=20:GOSUB110 +22990 PRINT" * * D":VE=21:GOSUB110 +23000 PRINT"ALU *":VE=18:HO=31:GOSUB110:PRINT"* L" +23010 VE=20:GOSUB110:PRINT"* E" +23020 VE=22:GOSUB110:PRINT"* C" +23030 HO=1:VE=23:GOSUB110:PRINT"S=0 Z=0 A=0 P=0 C=0"; 23040 RETURN 24000 END -25000 DATA "In cursussen over microprocessors" -25010 DATA "wordt vaak gebruik gemaakt van de" -25020 DATA "8085-microprocessor." -25030 DATA ".Voor zover mij bekend wordt deze" -25040 DATA "processor niet toegepast in home-computers." -25050 DATA ".Dit programma geeft U de mogelijkheid" -25060 DATA "om op uw home-computer programma's te maken" -25070 DATA "in de 8085 assembleertaal, deze te vertalen" -25080 DATA "naar machinecode, en met een single step" -25090 DATA "routine te testen." -25100 DATA "# ","Bedenk wel, dit programma maakt geen" -25110 DATA "machinetaal programma, maar een simulatie" -25120 DATA "in basic.",".De uitvoering van de instructies" -25130 DATA "zal daardoor ook vrij traag gaan." -25140 DATA ".Dit geeft U wel de gelegenheid om goed te" -25150 DATA "volgen wat er gebeurt.",".Bij het gebruik" -25160 DATA "van het programma wordt uitgegaan van een" -25170 DATA "scherm met 40 karakters en 24 regels." -25180 DATA ".Het programma is ongeveer 20K groot en" -25190 DATA "gebruikt ongeveer 7K voor tabellen en" -25200 DATA "variabelen.",".Dit kan voor een aantal" -25210 DATA "computers problemen opleveren." -25220 DATA ".Daarom kunt U door het wijzigen van de" -25230 DATA "variabelen V en W in regel 1010 en 1020" -25240 DATA "de ruimte aanpassen die door de tabellen" -25250 DATA "wordt gebruikt." -25260 DATA "# ","De standaard instelling van V en W is" -25270 DATA "60 respectievelijk 1023." -25280 DATA ".De variabele V bepaalt het aantal regels" -25290 DATA "tekst dat U in kunt voeren." -25300 DATA ".Deze kunt U naar believen groter of" -25310 DATA "kleiner maken.",".De variabele W geeft de" -25320 DATA "grootte aan van de ruimte waarin het vertaalde" -25330 DATA "programma komt te staan." -25340 DATA ".Deze variabele mag niet groter gemaakt" -25350 DATA "worden dan 1023.",".U kunt deze variabele" -25360 DATA "eventueel wel kleiner maken." -25370 DATA ".Het bereik van de te gebruiken adressen" -25380 DATA "in uw programma, is echter afhankelijk" -25390 DATA "van de variabele W.","# ","Heeft U een voorbeeld" -25400 DATA "programma waarin adressen gebruikt worden" -25410 DATA "die groter zijn dan W, dan zult u die " -25420 DATA "moeten aanpassen." -25430 DATA "."," Bijvoorbeeld:",". ","ORG 1800H" -25440 DATA " ---> ORG 100H",".SOM EQU 2000H " -25450 DATA "---> SOM EQU 900D",".ADD B " -25460 DATA "---> ADD B",".ADD E " -25470 DATA "---> ADD E",".STA SOM " -25480 DATA "---> STA SOM",".END " -25490 DATA " ---> HLT" -25500 DATA ". ","In de eerste twee regels, ziet U dat" -25510 DATA "de adressen aangepast zijn." -25520 DATA ".Het resultaat van de optelling gaat naar" -25530 DATA "adres 900D (D = decimaal)",".Het programma" -25540 DATA "zelf wordt geplaatst op adres 100H" -25550 DATA "(H = hexadecimaal)" -25560 DATA "# ","De assembler kent een drietal directives." -25570 DATA ".(Aanwijzingen voor de assembler)" -25580 DATA ".Deze zijn:",".ORG : Geeft het beginadres" -25590 DATA ". van het vertaalde programma aan." -25600 DATA ".EQU : Geeft een waarde aan een" -25610 DATA ". symbolische naam.",".DB : Reserveert" -25620 DATA "een geheugenplaats en",". vult deze met de" -25630 DATA "achter DB",". vermelde waarde." -25640 DATA ". ","Het directive 'END' mag niet gebruikt" -25650 DATA "worden.",".Sluit het programma af met HLT." -25660 DATA ".De eerste opdracht in regel nul moet altijd" -25670 DATA "ORG zijn gevolgd door een decimaal of" -25680 DATA "hexadecimaal adres." -25690 DATA "# ","Na het commando RUN wordt de tabel die" -25700 DATA "gebruikt wordt om het werkgeheugen te simuleren" -25710 DATA "op nul gezet." -25720 DATA ".Dit vraagt wat tijd." -25730 DATA ".Hierna ziet U op het scherm het volgende:" -25740 DATA ". ",". ","8085-SIMULATOR",".KLAAR VOOR INVOER" -25750 DATA ". ",". ",". ","0 -",". ",". " -25760 DATA "Nul is het regelnummer.",".Het minteken" -25770 DATA "is de cursor.","# ","U kunt nu beginnen met het" -25780 DATA "intikken van uw 8085 programma." -25790 DATA ".Regel 0 moet altijd beginnen met ORG." -25800 DATA ".Na het intikken van een programmaregel" -25810 DATA "gevolgd door RETURN (ENTER)" -25820 DATA "wordt automatisch een nieuw regelnummer" -25830 DATA "gegenereerd.",".U kunt tijdens het intikken" -25840 DATA "gebruik maken van een aantal commando's." -25850 DATA ".Deze commando's bestaan uit een letter." -25860 DATA ".U kunt deze commando's gebruiken door" -25870 DATA "in plaats van een programmaregel de" -25880 DATA "betreffende letter in te tikken gevolgd" -25890 DATA "door RETURN (ENTER)." -25900 DATA "# ","De beschikbare commando's zijn:" -25910 DATA ".M = menu",".L = list",".W = wijzigen" -25920 DATA ".V = verwijderen",".T = tussenvoegen" -25930 DATA ".Z = geheugen dump",".A = start assembler" -25940 DATA ".R = single step",".N = nieuw programma" -25950 DATA ". ","M : Laat U het bovenstaande menu zien." -25960 DATA ". ","N : Geeft U de mogelijkheid een nieuw" -25970 DATA ". programma in te voeren.",". De" -25980 DATA "vertaalde code van het oude" -25990 DATA ". programma wordt niet gewist." -26000 DATA "# ","L : Geeft een listing van de reeds" -26010 DATA ". ingetikte programmaregels." -26020 DATA ". Tijdens de listing kunnen direct" -26030 DATA ". commando's worden ingevoerd voor" -26040 DATA ". b.v. wijzigen." -26050 DATA ". ","W : Vraagt U welke regel U wenst te" -26060 DATA ". wijzigen.",". Na het intikken van het" -26070 DATA "regelnr.",". gevolgd door RETURN (ENTER)," -26080 DATA ". tikt U de regel opnieuw in." -26090 DATA ". ","V : Vraagt U welke regel U wenst te" -26100 DATA ". verwijderen.",". Na het verwijderen" -26110 DATA "worden de",". onderliggende regels een" -26120 DATA "plaats",". naar boven opgeschoven." -26130 DATA "# ","T : Vraagt U waar U een regel wenst" -26140 DATA ". tussen te voegen.",". U geeft het" -26150 DATA "regelnr. op van de",". eerste regel die" -26160 DATA "moet zakken.",". De onderliggende" -26170 DATA "regels worden",". een plaats naar" -26180 DATA "beneden opgeschoven",". inclusief de" -26190 DATA "opgegeven regel.",". De nieuwe regel die" -26200 DATA "U nu kunt",". intikken wordt tussengevoegd." -26210 DATA ". ","Z : Vraagt U vanaf welk adres U de" -26220 DATA ". geheugen-inhoud wenst te zien." -26230 DATA ". U kunt dan decimaal",". of hexadecimaal" -26240 DATA "het gewenste adres",". intikken." -26250 DATA ". b.v. 7BH of 123D" -26260 DATA ". Op uw scherm ziet U dan het" -26270 DATA ". volgende:" -26280 DATA "# "," ADRES HEX. DEC. BINAIR" -26290 DATA ". "," 0123 3E 62 00111110" -26300 DATA ". 0124 25 37 00100101" -26310 DATA ". enz." -26320 DATA ". "," Afhankelijk van hoe U het adres" -26330 DATA ". ingeeft (hexadecimaal of decimaal)" -26340 DATA ". wordt in de kolom ADRES het adres" -26350 DATA ". hexadecimaal of decimaal" -26360 DATA ". weergegeven." -26370 DATA ". De geheugen-inhoud wordt zowel" -26380 DATA ". decimaal, hexadecimaal als binair" -26390 DATA ". weergegeven." -26400 DATA "# ","A : Vertaalt de ingetikte regels naar" -26410 DATA ". machine code en plaatst deze in" -26420 DATA ". een tabel dat gebruikt wordt om" -26430 DATA ". het werkgeheugen te simuleren." -26440 DATA ". Wordt tijdens de vertaling een" -26450 DATA ". syntax fout gesignaleerd, dan wordt" -26460 DATA ". daar melding van gemaakt." -26470 DATA ". De vertaling gaat echter door." -26480 DATA ". Wordt tijdens de vertaling het" -26490 DATA ". adres groter dan de variabele W," -26500 DATA ". dan wordt de vertaling afgebroken" -26510 DATA ". met de foutmelding 'ADRES TE HOOG'." -26520 DATA ". De vertaalde regels worden op het" -26530 DATA ". scherm weergegeven." -26540 DATA "# ","R : Is het programma foutloos vertaald," -26550 DATA ". dan kunt U door middel van de" -26560 DATA ". spatiebalk het programma stap voor" -26570 DATA ". stap laten uitvoeren." -26580 DATA ". De werking van het programma wordt" -26590 DATA ". weergegeven in een controle scherm." -26600 DATA ". ",". ","Bij de volgende druk op de#" -26610 DATA "spatiebalk ziet U een beeldlayout#" -26620 DATA "van het controle scherm.#" -26630 DATA ".Bij de daarop volgende druk op de#" -26640 DATA "spatiebalk wordt de beschrijving#" -26650 DATA "voortgezet.#" -26660 DATA "# ",". ","+++++" -26670 DATA " INPUT 00 OUTPUT 00;" -26680 DATA ".B0 --------> ( 0 ) ( 0 ) --------> B0;" -26690 DATA ".B1 --------> ( 0 ) ( 0 ) --------> B1;" -26700 DATA ".B2 --------> ( 0 ) ( 0 ) --------> B2;" -26710 DATA ".B3 --------> ( 0 ) ( 0 ) --------> B3;" -26720 DATA ".B4 --------> ( 0 ) ( 0 ) --------> B4;" -26730 DATA ".B5 --------> ( 0 ) ( 0 ) --------> B5;" -26740 DATA ".B6 --------> ( 0 ) ( 0 ) --------> B6;" -26750 DATA ".B7 --------> ( 0 ) ( 0 ) --------> B7;" -26760 DATA ". ","+++++" -26770 DATA "Dit gedeelte geeft de input en output" -26780 DATA "weer.",".Links ziet U acht input lijnen." -26790 DATA ".Deze kunt U activeren met behulp van de" -26800 DATA "toetsen A t/m H.",".Probeer het maar!#" -26810 DATA ". ","De output lijnen worden door het" -26820 DATA "door U gemaakte programma geactiveerd." -26830 DATA ".#" -26840 DATA ". ","+++++","+++++",". " -26850 DATA ".INSTRUCTIE ----------------------------;" -26860 DATA ". REGISTER * * *;" -26870 DATA ".+ DECODING ----------------------------;",". ;" -26880 DATA ". AUX. ACCU PROGR. TELLER;" -26890 DATA ". -------- -------- -------------;" -26900 DATA ". * * * * * *;" -26910 DATA ". -------- -------- -------------;" -26920 DATA ". ******** ******** H * L;" -26930 DATA ". * * * * -------------;" -26940 DATA ". * * * D * E;" -26950 DATA ". * ALU * -------------;" -26960 DATA ". *********** B * C;" -26970 DATA ". S=0 Z=0 A=0 P=0 C=0 -------------;" -26980 DATA ".Dit gedeelte geeft de inhoud van de" -26990 DATA "verschillende registers weer." -27000 DATA ".In het gedeelte instructie register" -27010 DATA "+ decoding wordt de op dat moment" -27020 DATA "in bewerking zijnde instructie weergegeven." -27030 DATA ". ","**","+++++" -27040 DATA ". ","In de progr. teller wordt het adres" -27050 DATA "weergegeven" -27060 DATA "van de opdracht die in bewerking is." -27070 DATA ".Onder de ALU wordt de inhoud van de" -27080 DATA "status flags weergegeven." -27090 DATA ".AUX. is een hulpregister dat gebruikt" -27100 DATA "wordt bij bewerkingen in de ALU." -27110 DATA ". ","**","+++++" -27111 DATA "# ","Tijdens single step kunt U de status flags" -27112 DATA "setten of resetten met behulp van de toetsen" -27113 DATA "1 t/m 5.",".Dit kunt U gebruiken om b.v." -27114 DATA "een lange wachtlus te onderbreken.",". " -27115 DATA "toets 1 = S",".toets 2 = Z",".toets 3 = A" -27116 DATA ".toets 4 = P",".toets 5 = C","# " -27120 DATA ". ","Bij het invoeren van uw programma" -27130 DATA "moet U bepaalde regels in acht nemen." -27140 DATA ". ","Symbolische namen moeten een waarde" -27150 DATA "hebben voor U ze gebruikt in uw programma." -27160 DATA ". ","Labels moeten op een aparte regel." -27170 DATA ".25 LABEL: MOV A,B is niet toegestaan." -27180 DATA ".Dit moet zijn: ---------------" -27190 DATA ".25 LABEL:",".26 MOV A,B" -27200 DATA ". ","Labels moeten eindigen met dubbele punt." -27210 DATA ".De laatste letter van een label mag" -27220 DATA "geen B D of H zijn.",". " -27230 DATA "# ","Adressen en data moeten eindigen" -27240 DATA ".op H bij hexadecimale getallen," -27250 DATA ".op B bij binaire getallen," -27260 DATA ".op D bij decimale getallen." -27270 DATA ".Het weglaten van D bij decimale" -27280 DATA "getallen is niet toegestaan." -27290 DATA ". ","Alle invoer moet in hoofdletters." -27300 DATA ". ","Er zijn enkele opdrachten die U niet" -27310 DATA "mag gebruiken.",".Dit zijn de opdrachten die" -27320 DATA "gebruik maken van interrupts." -27330 DATA ".Deze opdrachten zijn:" -27340 DATA ".RIM SIM EI DI RST 0 t/m 7" -27350 DATA "# ","Het controlescherm kan maar een input-" -27360 DATA "en een outputpoort weergeven." -27370 DATA ".Het is dus niet toegestaan meer dan" -27380 DATA "een input- en een outputnummer gelijktijdig" -27390 DATA "te gebruiken.",". ","In sprongopdrachten," -27400 DATA "die gebruik maken van labels, wordt het" -27410 DATA "sprongadres pas na de vertaling ingevult." -27420 DATA ". ","U kunt commentaar in uw programma" -27430 DATA "opnemen door dit vooraf te laten gaan" -27440 DATA "door de puntkomma.",".Bijvoorbeeld:" -27450 DATA ".LXI H,1234H ;INITIALISEER DATAPOINTER" -27460 DATA "# ","De stackpointer wordt door het" -27470 DATA "programma op W-2 gezet." -27480 DATA ".(W = grootte van de geheugentabel)" -27490 DATA ".De standaard instelling van de stackpointer" -27500 DATA "is dus 1021.",".Dit kunt U door een opdracht" -27510 DATA "in uw 8085 programma eventueel veranderen." -27520 DATA ". ","Tijdens single step kunt U terug naar de" -27530 DATA "invoermode door toets S in te drukken." -27540 DATA ".Sluit U het programma af met de opdracht" -27550 DATA "HLT, dan zal automatisch terug gesprongen" -27560 DATA "worden naar de invoermode." -27570 DATA "# ","Na uitvoering van een commando of bij" -27580 DATA "een fout tijdens single step, zal altijd" -27590 DATA "terug gesprongen worden naar de invoer mode" -27600 DATA "en wordt het laatste vrije regelnummer" -27610 DATA "weergegeven.",".Hierna kunt U weer verder" -27620 DATA "gaan met invoeren van programmaregels" -27630 DATA "of commando's.",". ","Indien U tijdens het" -27640 DATA "intikken een fout maakt, kunt U voorgaande" -27650 DATA "letters verwijderen door het ? in te tikken." -27660 DATA ".Gebruik hiervoor niet de delete toets." -27670 DATA ".Bij een aantal computers geeft dat problemen." -27680 DATA "# ","U kunt eventueel met GOTO1060 weer" -27690 DATA "terug in het programma springen zonder" -27700 DATA "dat U reeds ingetikte regels kwijtraakt." -27710 DATA ". ","Mocht U toch nog problemen hebben" -27720 DATA "met het gebruik van het programma, neemt U" -27730 DATA "dan even kontakt met mij op." -27740 DATA ". ","***************************************" -27750 DATA ".* Dit programma is gemaakt door *" -27760 DATA ".* A Commeren *" -27770 DATA ".* Weide 120 *" -27780 DATA ".* 5103 HZ Dongen *" -27790 DATA ".* *" -27800 DATA ".* Het programma is gemaakt op een *" -27810 DATA ".* 'ACORN BBC' *" -27820 DATA ".***************************************" -27830 DATA "# ","Nu volgen nog een viertal programma" -27840 DATA "voorbeelden.",". ","VOORBEELD 1",". " -27850 DATA "0 ORG 100H" -27860 DATA ".1 LXI H,900D",".2 MVI B,8D",".3 VOLGENDE:" -27870 DATA ".4 MOV A,M",".5 OUT 12H",".6 INX H" -27880 DATA ".7 DCR B",".8 JNZ VOLGENDE",".9 HLT" -27890 DATA ".10 ORG 900D",".11 DB 00000001B" -27900 DATA ".12 DB 00000010B",".13 DB 00000100B" -27910 DATA ".14 DB 00001000B",".15 DB 00010000B" -27920 DATA ".16 DB 00100000B",".17 DB 01000000B" -27930 DATA ".18 DB 10000000B",". ","Dit programma haalt" -27940 DATA "data op uit het geheugen vanaf adres 900D" -27950 DATA "en stuurt dit door naar outputpoort 12H." -27960 DATA ".Alle outputlijnen worden een voor een" -27970 DATA "geactiveerd.","# ","VOORBEELD 2" -27980 DATA ". ","0 ORG 100D",".1 GETAL1 EQU 3759H" -27990 DATA ".2 GETAL2 EQU 4263H",".3 LXI H,GETAL1" -28000 DATA ".4 LXI D,GETAL2",".5 MOV A,L",".6 ADD E" -28010 DATA ".7 DAA",".8 MOV C,A",".9 MOV A,H" -28020 DATA ".10 ADC D",".11 DAA",".12 MOV B,A",".13 HLT" -28030 DATA ". ","In registerpaar HL wordt in BCD code" -28040 DATA "het getal 3759 geplaatst." -28050 DATA ".In registerpaar DE wordt in BCD code" -28060 DATA "het getal 4263 geplaatst." -28070 DATA ".Deze getallen worden bij elkaar opgetelt" -28080 DATA " en het antwoord, in BCD code, wordt" -28090 DATA "in registerpaar BC geplaatst." -28100 DATA "# ","VOORBEELD 3",". ",".0 ORG 123H" -28110 DATA ".1 MVI A,FFH",".2 MVI B,10D" -28120 DATA ".3 LXI H,1000D",".4 NEXT:",".5 CMP M" -28130 DATA ".6 JC GROTER",".7 MOV A,M",".8 GROTER:" -28140 DATA ".9 INX H",".10 DCR B",".11 JNZ NEXT" -28150 DATA ".12 MOV M,A",".13 HLT",".14 ORG 1000D" -28160 DATA ".15 DB 73D",".16 DB 25D",".17 DB 81D" -28170 DATA ".18 DB 204D",".19 DB 17D",".20 DB 112D" -28180 DATA ".21 DB 5D",".22 DB 58D",".23 DB 13D" -28190 DATA ".24 DB 75D" -28200 DATA ". ","In het geheugen, vanaf adres 1000D," -28210 DATA "staat een reeks van 10 getallen." -28220 DATA ".Het programma zoekt de kleinste van deze" -28230 DATA "getallen op en plaatst een copie hiervan" -28240 DATA "achter de reeks getallen.","# " -28250 DATA "VOORBEELD 4",". ","0 ORG 12D" -28260 DATA ".1 DEUREN EQU 00000111B" -28265 DATA ".2 COMBINATIE1 EQU 110B" -28270 DATA ".3 COMBINATIE2 EQU 101B" -28275 DATA ".4 COMBINATIE3 EQU 011B" -28280 DATA ".5 COMBINATIE4 EQU 111B",".6 TEST-LUS:" -28290 DATA ".7 IN 23H",".8 ANI DEUREN" -28300 DATA ".9 CPI COMBINATIE1",".10 JZ MELDING" -28310 DATA ".11 CPI COMBINATIE2",".12 JZ MELDING" -28320 DATA ".13 CPI COMBINATIE3",".14 JZ MELDING" -28330 DATA ".15 CPI COMBINATIE4",".16 JZ MELDING" -28340 DATA ".17 MVI A,0D",".18 OUT 16H" -28350 DATA ".19 JMP TEST-LUS",".20 MELDING:" -28360 DATA ".21 MVI A,00000001B",".22 OUT 16H" -28370 DATA ".23 JMP TEST-LUS",". " -28380 DATA "Een kamer heeft 3 deuren.",".Deze deuren" -28390 DATA "zijn door middel van schakelaars" -28400 DATA "verbonden met de ingangen B0, B1 en B2" -28410 DATA "van inputpoort 12H van uw computer." -28420 DATA ".Is een deur gesloten, dan geeft dit een" -28430 DATA "nul op de ingang.",".I.v.m. tocht mag" -28440 DATA "er steeds maar een deur open staan." -28450 DATA ".Dit programma test de ingangen B0, B1 en B2" -28460 DATA "en maakt uitgang B0 hoog als er meer dan" -28470 DATA "een deur open staat." -28480 DATA "# ",". ","VEEL PLEZIER MET DIT PROGRAMMA" -28490 DATA "$$$$$" +25000 DATA"In cursussen over microprocessors" +25010 DATA"wordt vaak gebruik gemaakt van de" +25020 DATA"8085-microprocessor." +25030 DATA".Voor zover mij bekend wordt deze" +25040 DATA"processor niet toegepast in home-computers." +25050 DATA".Dit programma geeft U de mogelijkheid" +25060 DATA"om op uw home-computer programma's te maken" +25070 DATA"in de 8085 assembleertaal, deze te vertalen" +25080 DATA"naar machinecode, en met een single step" +25090 DATA"routine te testen." +25100 DATA"# ","Bedenk wel, dit programma maakt geen" +25110 DATA"machinetaal programma, maar een simulatie" +25120 DATA"in basic.",".De uitvoering van de instructies" +25130 DATA"zal daardoor ook vrij traag gaan." +25140 DATA".Dit geeft U wel de gelegenheid om goed te" +25150 DATA"volgen wat er gebeurt.",".Bij het gebruik" +25160 DATA"van het programma wordt uitgegaan van een" +25170 DATA"scherm met 40 karakters en 24 regels." +25180 DATA".Het programma is ongeveer 20K groot en" +25190 DATA"gebruikt ongeveer 7K voor tabellen en" +25200 DATA"variabelen.",".Dit kan voor een aantal" +25210 DATA"computers problemen opleveren." +25220 DATA".Daarom kunt U door het wijzigen van de" +25230 DATA"variabelen V en W in regel 1010 en 1020" +25240 DATA"de ruimte aanpassen die door de tabellen" +25250 DATA"wordt gebruikt." +25260 DATA"# ","De standaard instelling van V en W is" +25270 DATA"60 respectievelijk 1023." +25280 DATA".De variabele V bepaalt het aantal regels" +25290 DATA"tekst dat U in kunt voeren." +25300 DATA".Deze kunt U naar believen groter of" +25310 DATA"kleiner maken.",".De variabele W geeft de" +25320 DATA"grootte aan van de ruimte waarin het vertaalde" +25330 DATA"programma komt te staan." +25340 DATA".Deze variabele mag niet groter gemaakt" +25350 DATA"worden dan 1023.",".U kunt deze variabele" +25360 DATA"eventueel wel kleiner maken." +25370 DATA".Het bereik van de te gebruiken adressen" +25380 DATA"in uw programma, is echter afhankelijk" +25390 DATA"van de variabele W.","# ","Heeft U een voorbeeld" +25400 DATA"programma waarin adressen gebruikt worden" +25410 DATA"die groter zijn dan W, dan zult u die " +25420 DATA"moeten aanpassen." +25430 DATA"."," Bijvoorbeeld:",". ","ORG 1800H" +25440 DATA" ---> ORG 100H",".SOM EQU 2000H " +25450 DATA"---> SOM EQU 900D",".ADD B " +25460 DATA"---> ADD B",".ADD E " +25470 DATA"---> ADD E",".STA SOM " +25480 DATA"---> STA SOM",".END " +25490 DATA" ---> HLT" +25500 DATA". ","In de eerste twee regels, ziet U dat" +25510 DATA"de adressen aangepast zijn." +25520 DATA".Het resultaat van de optelling gaat naar" +25530 DATA"adres 900D (D = decimaal)",".Het programma" +25540 DATA"zelf wordt geplaatst op adres 100H" +25550 DATA"(H = hexadecimaal)" +25560 DATA"# ","De assembler kent een drietal directives." +25570 DATA".(Aanwijzingen voor de assembler)" +25580 DATA".Deze zijn:",".ORG : Geeft het beginadres" +25590 DATA". van het vertaalde programma aan." +25600 DATA".EQU : Geeft een waarde aan een" +25610 DATA". symbolische naam.",".DB : Reserveert" +25620 DATA"een geheugenplaats en",". vult deze met de" +25630 DATA"achter DB",". vermelde waarde." +25640 DATA". ","Het directive 'END' mag niet gebruikt" +25650 DATA"worden.",".Sluit het programma af met HLT." +25660 DATA".De eerste opdracht in regel nul moet altijd" +25670 DATA"ORG zijn gevolgd door een decimaal of" +25680 DATA"hexadecimaal adres." +25690 DATA"# ","Na het commando RUN wordt de tabel die" +25700 DATA"gebruikt wordt om het werkgeheugen te simuleren" +25710 DATA"op nul gezet." +25720 DATA".Dit vraagt wat tijd." +25730 DATA".Hierna ziet U op het scherm het volgende:" +25740 DATA". ",". ","8085-SIMULATOR",".KLAAR VOOR INVOER" +25750 DATA". ",". ",". ","0 -",". ",". " +25760 DATA"Nul is het regelnummer.",".Het minteken" +25770 DATA"is de cursor.","# ","U kunt nu beginnen met het" +25780 DATA"intikken van uw 8085 programma." +25790 DATA".Regel 0 moet altijd beginnen met ORG." +25800 DATA".Na het intikken van een programmaregel" +25810 DATA"gevolgd door RETURN (ENTER)" +25820 DATA"wordt automatisch een nieuw regelnummer" +25830 DATA"gegenereerd.",".U kunt tijdens het intikken" +25840 DATA"gebruik maken van een aantal commando's." +25850 DATA".Deze commando's bestaan uit een letter." +25860 DATA".U kunt deze commando's gebruiken door" +25870 DATA"in plaats van een programmaregel de" +25880 DATA"betreffende letter in te tikken gevolgd" +25890 DATA"door RETURN (ENTER)." +25900 DATA"# ","De beschikbare commando's zijn:" +25910 DATA".M = menu",".L = list",".W = wijzigen" +25920 DATA".V = verwijderen",".T = tussenvoegen" +25930 DATA".Z = geheugen dump",".A = start assembler" +25940 DATA".R = single step",".N = nieuw programma" +25950 DATA". ","M : Laat U het bovenstaande menu zien." +25960 DATA". ","N : Geeft U de mogelijkheid een nieuw" +25970 DATA". programma in te voeren.",". De" +25980 DATA"vertaalde code van het oude" +25990 DATA". programma wordt niet gewist." +26000 DATA"# ","L : Geeft een listing van de reeds" +26010 DATA". ingetikte programmaregels." +26020 DATA". Tijdens de listing kunnen direct" +26030 DATA". commando's worden ingevoerd voor" +26040 DATA". b.v. wijzigen." +26050 DATA". ","W : Vraagt U welke regel U wenst te" +26060 DATA". wijzigen.",". Na het intikken van het" +26070 DATA"regelnr.",". gevolgd door RETURN (ENTER)," +26080 DATA". tikt U de regel opnieuw in." +26090 DATA". ","V : Vraagt U welke regel U wenst te" +26100 DATA". verwijderen.",". Na het verwijderen" +26110 DATA"worden de",". onderliggende regels een" +26120 DATA"plaats",". naar boven opgeschoven." +26130 DATA"# ","T : Vraagt U waar U een regel wenst" +26140 DATA". tussen te voegen.",". U geeft het" +26150 DATA"regelnr. op van de",". eerste regel die" +26160 DATA"moet zakken.",". De onderliggende" +26170 DATA"regels worden",". een plaats naar" +26180 DATA"beneden opgeschoven",". inclusief de" +26190 DATA"opgegeven regel.",". De nieuwe regel die" +26200 DATA"U nu kunt",". intikken wordt tussengevoegd." +26210 DATA". ","Z : Vraagt U vanaf welk adres U de" +26220 DATA". geheugen-inhoud wenst te zien." +26230 DATA". U kunt dan decimaal",". of hexadecimaal" +26240 DATA"het gewenste adres",". intikken." +26250 DATA". b.v. 7BH of 123D" +26260 DATA". Op uw scherm ziet U dan het" +26270 DATA". volgende:" +26280 DATA"# "," ADRES HEX. DEC. BINAIR" +26290 DATA". "," 0123 3E 62 00111110" +26300 DATA". 0124 25 37 00100101" +26310 DATA". enz." +26320 DATA". "," Afhankelijk van hoe U het adres" +26330 DATA". ingeeft (hexadecimaal of decimaal)" +26340 DATA". wordt in de kolom ADRES het adres" +26350 DATA". hexadecimaal of decimaal" +26360 DATA". weergegeven." +26370 DATA". De geheugen-inhoud wordt zowel" +26380 DATA". decimaal, hexadecimaal als binair" +26390 DATA". weergegeven." +26400 DATA"# ","A : Vertaalt de ingetikte regels naar" +26410 DATA". machine code en plaatst deze in" +26420 DATA". een tabel dat gebruikt wordt om" +26430 DATA". het werkgeheugen te simuleren." +26440 DATA". Wordt tijdens de vertaling een" +26450 DATA". syntax fout gesignaleerd, dan wordt" +26460 DATA". daar melding van gemaakt." +26470 DATA". De vertaling gaat echter door." +26480 DATA". Wordt tijdens de vertaling het" +26490 DATA". adres groter dan de variabele W," +26500 DATA". dan wordt de vertaling afgebroken" +26510 DATA". met de foutmelding 'ADRES TE HOOG'." +26520 DATA". De vertaalde regels worden op het" +26530 DATA". scherm weergegeven." +26540 DATA"# ","R : Is het programma foutloos vertaald," +26550 DATA". dan kunt U door middel van de" +26560 DATA". spatiebalk het programma stap voor" +26570 DATA". stap laten uitvoeren." +26580 DATA". De werking van het programma wordt" +26590 DATA". weergegeven in een controle scherm." +26600 DATA". ",". ","Bij de volgende druk op de#" +26610 DATA"spatiebalk ziet U een beeldlayout#" +26620 DATA"van het controle scherm.#" +26630 DATA".Bij de daarop volgende druk op de#" +26640 DATA"spatiebalk wordt de beschrijving#" +26650 DATA"voortgezet.#" +26660 DATA"# ",". ","+++++" +26670 DATA" INPUT 00 OUTPUT 00;" +26680 DATA".B0 --------> ( 0 ) ( 0 ) --------> B0;" +26690 DATA".B1 --------> ( 0 ) ( 0 ) --------> B1;" +26700 DATA".B2 --------> ( 0 ) ( 0 ) --------> B2;" +26710 DATA".B3 --------> ( 0 ) ( 0 ) --------> B3;" +26720 DATA".B4 --------> ( 0 ) ( 0 ) --------> B4;" +26730 DATA".B5 --------> ( 0 ) ( 0 ) --------> B5;" +26740 DATA".B6 --------> ( 0 ) ( 0 ) --------> B6;" +26750 DATA".B7 --------> ( 0 ) ( 0 ) --------> B7;" +26760 DATA". ","+++++" +26770 DATA"Dit gedeelte geeft de input en output" +26780 DATA"weer.",".Links ziet U acht input lijnen." +26790 DATA".Deze kunt U activeren met behulp van de" +26800 DATA"toetsen A t/m H.",".Probeer het maar!#" +26810 DATA". ","De output lijnen worden door het" +26820 DATA"door U gemaakte programma geactiveerd." +26830 DATA".#" +26840 DATA". ","+++++","+++++",". " +26850 DATA".INSTRUCTIE ----------------------------;" +26860 DATA". REGISTER * * *;" +26870 DATA".+ DECODING ----------------------------;",". ;" +26880 DATA". AUX. ACCU PROGR. TELLER;" +26890 DATA". -------- -------- -------------;" +26900 DATA". * * * * * *;" +26910 DATA". -------- -------- -------------;" +26920 DATA". ******** ******** H * L;" +26930 DATA". * * * * -------------;" +26940 DATA". * * * D * E;" +26950 DATA". * ALU * -------------;" +26960 DATA". *********** B * C;" +26970 DATA". S=0 Z=0 A=0 P=0 C=0 -------------;" +26980 DATA".Dit gedeelte geeft de inhoud van de" +26990 DATA"verschillende registers weer." +27000 DATA".In het gedeelte instructie register" +27010 DATA"+ decoding wordt de op dat moment" +27020 DATA"in bewerking zijnde instructie weergegeven." +27030 DATA". ","**","+++++" +27040 DATA". ","In de progr. teller wordt het adres" +27050 DATA"weergegeven" +27060 DATA"van de opdracht die in bewerking is." +27070 DATA".Onder de ALU wordt de inhoud van de" +27080 DATA"status flags weergegeven." +27090 DATA".AUX. is een hulpregister dat gebruikt" +27100 DATA"wordt bij bewerkingen in de ALU." +27110 DATA". ","**","+++++" +27111 DATA"# ","Tijdens single step kunt U de status flags" +27112 DATA"setten of resetten met behulp van de toetsen" +27113 DATA"1 t/m 5.",".Dit kunt U gebruiken om b.v." +27114 DATA"een lange wachtlus te onderbreken.",". " +27115 DATA"toets 1 = S",".toets 2 = Z",".toets 3 = A" +27116 DATA".toets 4 = P",".toets 5 = C","# " +27120 DATA". ","Bij het invoeren van uw programma" +27130 DATA"moet U bepaalde regels in acht nemen." +27140 DATA". ","Symbolische namen moeten een waarde" +27150 DATA"hebben voor U ze gebruikt in uw programma." +27160 DATA". ","Labels moeten op een aparte regel." +27170 DATA".25 LABEL: MOV A,B is niet toegestaan." +27180 DATA".Dit moet zijn: ---------------" +27190 DATA".25 LABEL:",".26 MOV A,B" +27200 DATA". ","Labels moeten eindigen met dubbele punt." +27210 DATA".De laatste letter van een label mag" +27220 DATA"geen B D of H zijn.",". " +27230 DATA"# ","Adressen en data moeten eindigen" +27240 DATA".op H bij hexadecimale getallen," +27250 DATA".op B bij binaire getallen," +27260 DATA".op D bij decimale getallen." +27270 DATA".Het weglaten van D bij decimale" +27280 DATA"getallen is niet toegestaan." +27290 DATA". ","Alle invoer moet in hoofdletters." +27300 DATA". ","Er zijn enkele opdrachten die U niet" +27310 DATA"mag gebruiken.",".Dit zijn de opdrachten die" +27320 DATA"gebruik maken van interrupts." +27330 DATA".Deze opdrachten zijn:" +27340 DATA".RIM SIM EI DI RST 0 t/m 7" +27350 DATA"# ","Het controlescherm kan maar een input-" +27360 DATA"en een outputpoort weergeven." +27370 DATA".Het is dus niet toegestaan meer dan" +27380 DATA"een input- en een outputnummer gelijktijdig" +27390 DATA"te gebruiken.",". ","In sprongopdrachten," +27400 DATA"die gebruik maken van labels, wordt het" +27410 DATA"sprongadres pas na de vertaling ingevult." +27420 DATA". ","U kunt commentaar in uw programma" +27430 DATA"opnemen door dit vooraf te laten gaan" +27440 DATA"door de puntkomma.",".Bijvoorbeeld:" +27450 DATA".LXI H,1234H ;INITIALISEER DATAPOINTER" +27460 DATA"# ","De stackpointer wordt door het" +27470 DATA"programma op W-2 gezet." +27480 DATA".(W = grootte van de geheugentabel)" +27490 DATA".De standaard instelling van de stackpointer" +27500 DATA"is dus 1021.",".Dit kunt U door een opdracht" +27510 DATA"in uw 8085 programma eventueel veranderen." +27520 DATA". ","Tijdens single step kunt U terug naar de" +27530 DATA"invoermode door toets S in te drukken." +27540 DATA".Sluit U het programma af met de opdracht" +27550 DATA"HLT, dan zal automatisch terug gesprongen" +27560 DATA"worden naar de invoermode." +27570 DATA"# ","Na uitvoering van een commando of bij" +27580 DATA"een fout tijdens single step, zal altijd" +27590 DATA"terug gesprongen worden naar de invoer mode" +27600 DATA"en wordt het laatste vrije regelnummer" +27610 DATA"weergegeven.",".Hierna kunt U weer verder" +27620 DATA"gaan met invoeren van programmaregels" +27630 DATA"of commando's.",". ","Indien U tijdens het" +27640 DATA"intikken een fout maakt, kunt U voorgaande" +27650 DATA"letters verwijderen door het ? in te tikken." +27660 DATA".Gebruik hiervoor niet de delete toets." +27670 DATA".Bij een aantal computers geeft dat problemen." +27680 DATA"# ","U kunt eventueel met GOTO1060 weer" +27690 DATA"terug in het programma springen zonder" +27700 DATA"dat U reeds ingetikte regels kwijtraakt." +27710 DATA". ","Mocht U toch nog problemen hebben" +27720 DATA"met het gebruik van het programma, neemt U" +27730 DATA"dan even kontakt met mij op." +27740 DATA". ","***************************************" +27750 DATA".* Dit programma is gemaakt door *" +27760 DATA".* A Commeren *" +27770 DATA".* Weide 120 *" +27780 DATA".* 5103 HZ Dongen *" +27790 DATA".* *" +27800 DATA".* Het programma is gemaakt op een *" +27810 DATA".* 'ACORN BBC' *" +27820 DATA".***************************************" +27830 DATA"# ","Nu volgen nog een viertal programma" +27840 DATA"voorbeelden.",". ","VOORBEELD 1",". " +27850 DATA"0 ORG 100H" +27860 DATA".1 LXI H,900D",".2 MVI B,8D",".3 VOLGENDE:" +27870 DATA".4 MOV A,M",".5 OUT 12H",".6 INX H" +27880 DATA".7 DCR B",".8 JNZ VOLGENDE",".9 HLT" +27890 DATA".10 ORG 900D",".11 DB 00000001B" +27900 DATA".12 DB 00000010B",".13 DB 00000100B" +27910 DATA".14 DB 00001000B",".15 DB 00010000B" +27920 DATA".16 DB 00100000B",".17 DB 01000000B" +27930 DATA".18 DB 10000000B",". ","Dit programma haalt" +27940 DATA"data op uit het geheugen vanaf adres 900D" +27950 DATA"en stuurt dit door naar outputpoort 12H." +27960 DATA".Alle outputlijnen worden een voor een" +27970 DATA"geactiveerd.","# ","VOORBEELD 2" +27980 DATA". ","0 ORG 100D",".1 GETAL1 EQU 3759H" +27990 DATA".2 GETAL2 EQU 4263H",".3 LXI H,GETAL1" +28000 DATA".4 LXI D,GETAL2",".5 MOV A,L",".6 ADD E" +28010 DATA".7 DAA",".8 MOV C,A",".9 MOV A,H" +28020 DATA".10 ADC D",".11 DAA",".12 MOV B,A",".13 HLT" +28030 DATA". ","In registerpaar HL wordt in BCD code" +28040 DATA"het getal 3759 geplaatst." +28050 DATA".In registerpaar DE wordt in BCD code" +28060 DATA"het getal 4263 geplaatst." +28070 DATA".Deze getallen worden bij elkaar opgetelt" +28080 DATA" en het antwoord, in BCD code, wordt" +28090 DATA"in registerpaar BC geplaatst." +28100 DATA"# ","VOORBEELD 3",". ",".0 ORG 123H" +28110 DATA".1 MVI A,FFH",".2 MVI B,10D" +28120 DATA".3 LXI H,1000D",".4 NEXT:",".5 CMP M" +28130 DATA".6 JC GROTER",".7 MOV A,M",".8 GROTER:" +28140 DATA".9 INX H",".10 DCR B",".11 JNZ NEXT" +28150 DATA".12 MOV M,A",".13 HLT",".14 ORG 1000D" +28160 DATA".15 DB 73D",".16 DB 25D",".17 DB 81D" +28170 DATA".18 DB 204D",".19 DB 17D",".20 DB 112D" +28180 DATA".21 DB 5D",".22 DB 58D",".23 DB 13D" +28190 DATA".24 DB 75D" +28200 DATA". ","In het geheugen, vanaf adres 1000D," +28210 DATA"staat een reeks van 10 getallen." +28220 DATA".Het programma zoekt de kleinste van deze" +28230 DATA"getallen op en plaatst een copie hiervan" +28240 DATA"achter de reeks getallen.","# " +28250 DATA"VOORBEELD 4",". ","0 ORG 12D" +28260 DATA".1 DEUREN EQU 00000111B" +28265 DATA".2 COMBINATIE1 EQU 110B" +28270 DATA".3 COMBINATIE2 EQU 101B" +28275 DATA".4 COMBINATIE3 EQU 011B" +28280 DATA".5 COMBINATIE4 EQU 111B",".6 TEST-LUS:" +28290 DATA".7 IN 23H",".8 ANI DEUREN" +28300 DATA".9 CPI COMBINATIE1",".10 JZ MELDING" +28310 DATA".11 CPI COMBINATIE2",".12 JZ MELDING" +28320 DATA".13 CPI COMBINATIE3",".14 JZ MELDING" +28330 DATA".15 CPI COMBINATIE4",".16 JZ MELDING" +28340 DATA".17 MVI A,0D",".18 OUT 16H" +28350 DATA".19 JMP TEST-LUS",".20 MELDING:" +28360 DATA".21 MVI A,00000001B",".22 OUT 16H" +28370 DATA".23 JMP TEST-LUS",". " +28380 DATA"Een kamer heeft 3 deuren.",".Deze deuren" +28390 DATA"zijn door middel van schakelaars" +28400 DATA"verbonden met de ingangen B0, B1 en B2" +28410 DATA"van inputpoort 12H van uw computer." +28420 DATA".Is een deur gesloten, dan geeft dit een" +28430 DATA"nul op de ingang.",".I.v.m. tocht mag" +28440 DATA"er steeds maar een deur open staan." +28450 DATA".Dit programma test de ingangen B0, B1 en B2" +28460 DATA"en maakt uitgang B0 hoog als er meer dan" +28470 DATA"een deur open staat." +28480 DATA"# ",". ","VEEL PLEZIER MET DIT PROGRAMMA" +28490 DATA"$$$$$" 30000 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file diff --git a/Best_of_Basicode_4/25_Simulator_8085.bc2 b/Best_of_Basicode_4/25_Simulator_8085.bc2 index 296903d..6a4fc28 100644 --- a/Best_of_Basicode_4/25_Simulator_8085.bc2 +++ b/Best_of_Basicode_4/25_Simulator_8085.bc2 @@ -1,627 +1,628 @@ -1000 A=1000:GOTO 20:REM ++ 8085-SIMULATOR + +1000 A=1000:GOTO20:REM ++ 8085-SIMULATOR 1010 V=60:REM ++ MAX. AANTAL OPDRACHTEN 1020 W=1023:REM ++ MAX. PROGR. GEHEUGEN 1030 TE=0:Z$="":P=1 -1040 DIM GE(W),PR$(V),S(V),RI$(7),RE(8) -1050 FOR I=0 TO W:GE(I)=0:NEXT I -1060 GOSUB 100:GOSUB 8030 -1070 IF TE>V THEN PRINT "PROGRAMMA GEHEUGEN VOL" -1080 PRINT ;TE;:GOSUB 120:HO=4:GOSUB 110:PRINT "-";:GOSUB 110 -1090 SS=0:GOSUB 5480 -1100 IF (LEN(Z$)=1) OR(TE>V) THEN 1130 +1040 DIMGE(W),PR$(V),S(V),RI$(7),RE(8) +1050 FORI=0 TOW:GE(I)=0:NEXTI +1060 GOSUB100:GOSUB8030 +1070 IFTE>V THENPRINT"PROGRAMMA GEHEUGEN VOL" +1080 PRINT;TE;:GOSUB120:HO=4:GOSUB110:PRINT"-";:GOSUB110 +1090 SS=0:GOSUB5480 +1100 IF(LEN(Z$)=1) OR(TE>V) THEN1130 1110 PR$(TE)=Z$:TE=TE+1:Z$="" -1120 PRINT :GOTO 1070 -1130 ZZ$="MLWVTNARZ":GOSUB 5420 -1140 IF G=0 THEN GOSUB 250:Z$="":PRINT :GOTO 1070 -1150 IF G=9 THEN GOSUB 7760:Z$="":PRINT :GOTO 1070 -1160 IF (G<3) OR(G>5) THEN GOSUB 100:PRINT -1170 PRINT -1180 ON G GOTO 1190,1290,1420,1480,1560,1650,1690,2820 -1190 PRINT "M = MENU" -1200 PRINT "L = LIST" -1210 PRINT "W = WIJZIGEN" -1220 PRINT "R = SINGLE STEP" -1230 PRINT "V = VERWIJDEREN" -1240 PRINT "T = TUSSENVOEGEN" -1250 PRINT "Z = GEHEUGEN DUMP" -1260 PRINT "A = START ASSEMBLER" -1270 PRINT "N = NIEUW PROGRAMMA" -1280 PRINT :Z$="":GOTO 1080 -1290 IF TE=0 THEN Z$="":GOTO 1080 -1300 FOR I=1 TO TE -1310 PRINT ;I-1;:GOSUB 120:HO=4:GOSUB 110:PRINT PR$(I-1) -1320 IF ((INT(I/18)*18)<>I) THEN 1380 -1330 PRINT :PRINT "L = VERVOLG : P =STOP" -1340 PRINT "ANDERE TOETS, ZIE MENU" -1350 GOSUB 210 -1360 IF IN$="L" THEN GOSUB 100:GOTO 1380 +1120 PRINT:GOTO1070 +1130 ZZ$="MLWVTNARZ":GOSUB5420 +1140 IFG=0 THENGOSUB250:Z$="":PRINT:GOTO1070 +1150 IFG=9 THENGOSUB7760:Z$="":PRINT:GOTO1070 +1160 IF(G<3) OR(G>5) THENGOSUB100:PRINT +1170 PRINT +1180 ONG GOTO1190,1290,1420,1480,1560,1650,1690,2820 +1190 PRINT"M = MENU" +1200 PRINT"L = LIST" +1210 PRINT"W = WIJZIGEN" +1220 PRINT"R = SINGLE STEP" +1230 PRINT"V = VERWIJDEREN" +1240 PRINT"T = TUSSENVOEGEN" +1250 PRINT"Z = GEHEUGEN DUMP" +1260 PRINT"A = START ASSEMBLER" +1270 PRINT"N = NIEUW PROGRAMMA" +1280 PRINT:Z$="":GOTO1080 +1290 IFTE=0 THENZ$="":GOTO1080 +1300 FORI=1 TOTE +1310 PRINT;I-1;:GOSUB120:HO=4:GOSUB110:PRINTPR$(I-1) +1320 IF((INT(I/18)*18)<>I) THEN1380 +1330 PRINT:PRINT"L = VERVOLG : P =STOP" +1340 PRINT"ANDERE TOETS, ZIE MENU" +1350 GOSUB210 +1360 IFIN$="L" THENGOSUB100:GOTO1380 1370 I=TE:Z$=IN$ -1380 NEXT I -1390 ZZ$="MLWVTNARZ":GOSUB 5420 -1400 IF (G=2) OR(G=0) THEN Z$="":GOTO 1080 -1410 Z$="":GOTO 1150 -1420 IF TE=0 THEN Z$="":GOTO 1080 -1430 PRINT :PRINT "WELKE REGEL WIJZIGEN ";:INPUT G -1440 IF (G<0) OR(G>(TE-1)) THEN GOSUB 5590:GOTO 1080 -1450 PRINT ;G;:GOSUB 120:HO=4:GOSUB 110:Z$="" -1460 PRINT "-";:GOSUB 110:GOSUB 5480 -1470 PR$(G)=Z$:Z$="":PRINT :GOTO 1080 -1480 IF TE=0 THEN Z$="":GOTO 1080 -1490 PRINT :PRINT "WELKE REGEL":PRINT "VERWIJDEREN ";:INPUT G -1500 IF (G<0) OR(G>(TE-1)) THEN GOSUB 5590:GOTO 1080 -1510 FOR I=G TO TE-2 +1380 NEXTI +1390 ZZ$="MLWVTNARZ":GOSUB5420 +1400 IF(G=2) OR(G=0) THENZ$="":GOTO1080 +1410 Z$="":GOTO1150 +1420 IFTE=0 THENZ$="":GOTO1080 +1430 PRINT:PRINT"WELKE REGEL WIJZIGEN ";:INPUTG +1440 IF(G<0) OR(G>(TE-1)) THENGOSUB5590:GOTO1080 +1450 PRINT;G;:GOSUB120:HO=4:GOSUB110:Z$="" +1460 PRINT"-";:GOSUB110:GOSUB5480 +1470 PR$(G)=Z$:Z$="":PRINT:GOTO1080 +1480 IFTE=0 THENZ$="":GOTO1080 +1490 PRINT:PRINT"WELKE REGEL":PRINT"VERWIJDEREN ";:INPUTG +1500 IF(G<0) OR(G>(TE-1)) THENGOSUB5590:GOTO1080 +1510 FORI=G TOTE-2 1520 PR$(I)=PR$(I+1) -1530 NEXT I +1530 NEXTI 1540 TE=TE-1 -1550 Z$="":GOTO 1080 -1560 IF (TE=0) OR(TE>V) THEN Z$="":PRINT :GOTO 1070 -1570 PRINT :PRINT "WAAR TUSSENVOEGEN ";:INPUT G -1580 IF (G<0) OR(G>(TE-1)) THEN GOSUB 5590:GOTO 1080 -1590 FOR I=TE TO G+1 STEP -1 +1550 Z$="":GOTO1080 +1560 IF(TE=0) OR(TE>V) THENZ$="":PRINT:GOTO1070 +1570 PRINT:PRINT"WAAR TUSSENVOEGEN ";:INPUTG +1580 IF(G<0) OR(G>(TE-1)) THENGOSUB5590:GOTO1080 +1590 FORI=TE TOG+1 STEP-1 1600 PR$(I)=PR$(I-1) -1610 NEXT I -1620 PRINT ;G;:GOSUB 120:HO=4:GOSUB 110:Z$="" -1630 PRINT "-";:GOSUB 110:GOSUB 5480 -1640 PR$(G)=Z$:Z$="":TE=TE+1:PRINT :GOTO 1080 -1650 PRINT "NIEUW PROGRAMMA ?? J/N" -1660 GOSUB 210:GOSUB 100 -1670 IF IN$="N" THEN Z$="":GOTO 1080 -1680 Z$="":TE=0:GOTO 1060 -1690 IF TE=0 THEN Z$="":GOTO 1080 -1700 PRINT "SPATIEBALK IS ONDERBREEK VERTALEN":PRINT :PRINT -1710 ZZ$=PR$(0):GOSUB 5600:K=0:UT=2000:P=0 -1720 IF W$<>"ORG" THEN GOSUB 8050:AD=0:GOTO 1780 -1730 ZZ$=X$:GOSUB 6030 -1740 IF TT=1 THEN GOSUB 8050:AD=0:GOTO 1780 -1750 GOSUB 5820 -1760 IF (TT=1) OR(DW>W) THEN GOSUB 8050:AD=0:GOTO 1780 -1770 AD=DW:HO=15:VE=6:GOSUB 110:PRINT W$;" ";X$ -1780 FOR K=1 TO TE-1 -1790 ZZ$=PR$(K):GOSUB 5600 -1800 IF G=0 THEN S(K)=2700:GOTO 1820 -1810 ON G GOSUB 2000,2140,1920 -1820 GOSUB 200:IF IN$<>" " THEN 1860 -1830 PRINT :PRINT "A = VERVOLG":PRINT "S = STOP" -1840 GOSUB 210:IF (IN$<>"A") AND(IN$<>"S") THEN 1840 -1850 IF IN$="S" THEN K=TE+2:Z$="" -1860 NEXT K -1870 IF K=(TE+3) THEN 1080 -1880 PRINT :PRINT "---------------------":PRINT -1890 GOSUB 2660:PRINT :PRINT "---------------------":PRINT -1900 PRINT :PRINT "** ";P;" FOUTEN **" -1910 Z$="":GOTO 1080 -1920 IF X$<>"EQU" THEN GOSUB 8050:RETURN -1930 ZZ$=Y$:GOSUB 6030 -1940 IF TT=1 THEN GOSUB 8050:RETURN -1950 GOSUB 5820 -1960 IF (TT=1) OR(DW>65535!) THEN GOSUB 8050:RETURN -1970 S(K)=DW+3000:GOSUB 120:HO=15 -1980 GOSUB 110:PRINT W$;" ";X$;" ";Y$ +1610 NEXTI +1620 PRINT;G;:GOSUB120:HO=4:GOSUB110:Z$="" +1630 PRINT"-";:GOSUB110:GOSUB5480 +1640 PR$(G)=Z$:Z$="":TE=TE+1:PRINT:GOTO1080 +1650 PRINT"NIEUW PROGRAMMA ?? J/N" +1660 GOSUB210:GOSUB100 +1670 IFIN$="N" THENZ$="":GOTO1080 +1680 Z$="":TE=0:GOTO1060 +1690 IFTE=0 THENZ$="":GOTO1080 +1700 PRINT"SPATIEBALK IS ONDERBREEK VERTALEN":PRINT:PRINT +1710 ZZ$=PR$(0):GOSUB5600:K=0:UT=2000:P=0 +1720 IFW$<>"ORG" THENGOSUB8050:AD=0:GOTO1780 +1730 ZZ$=X$:GOSUB6030 +1740 IFTT=1 THENGOSUB8050:AD=0:GOTO1780 +1750 GOSUB5820 +1760 IF(TT=1) OR(DW>W) THENGOSUB8050:AD=0:GOTO1780 +1770 AD=DW:HO=15:VE=6:GOSUB110:PRINTW$;" ";X$ +1780 FORK=1 TOTE-1 +1790 ZZ$=PR$(K):GOSUB5600 +1800 IFG=0 THENS(K)=2700:GOTO1820 +1810 ONG GOSUB2000,2140,1920 +1820 GOSUB200:IFIN$<>" " THEN1860 +1830 PRINT:PRINT"A = VERVOLG":PRINT"S = STOP" +1840 GOSUB210:IF(IN$<>"A") AND(IN$<>"S") THEN1840 +1850 IFIN$="S" THENK=TE+2:Z$="" +1860 NEXTK +1870 IFK=(TE+3) THEN1080 +1880 PRINT:PRINT"---------------------":PRINT +1890 GOSUB2660:PRINT:PRINT"---------------------":PRINT +1900 PRINT:PRINT"** ";P;" FOUTEN **" +1910 Z$="":GOTO1080 +1920 IFX$<>"EQU" THENGOSUB8050:RETURN +1930 ZZ$=Y$:GOSUB6030 +1940 IFTT=1 THENGOSUB8050:RETURN +1950 GOSUB5820 +1960 IF(TT=1) OR(DW>65535) THENGOSUB8050:RETURN +1970 S(K)=DW+3000:GOSUB120:HO=15 +1980 GOSUB110:PRINTW$;" ";X$;" ";Y$ 1990 RETURN -2000 IF RIGHT$(W$,1)<>":" THEN 2030 -2010 IF UT=K-1 THEN UT=UT+1:GOSUB 8050:RETURN -2020 S(K)=2500:GOSUB 120:HO=15:GOSUB 110:PRINT W$:UT=K:RETURN -2030 RESTORE -2040 FOR J=1 TO 34:READ D$,B$:NEXT J -2050 FOR J=1 TO 27 -2060 READ D$,B$:IF D$=W$ THEN Z=J:J=30 -2070 NEXT J -2080 IF J<30 THEN GOSUB 8050:RETURN -2090 IF Z<5 THEN GOSUB 8060:RETURN -2100 IF AD>W THEN GOSUB 8080:RETURN -2110 ZZ$=B$:U=3:TS=16:GOSUB 5820:GE(AD)=DW:S(K)=AD -2120 GOSUB 6090:AD=AD+1:PRINT R$;" ";B$;" ";W$; -2130 PRINT :RETURN -2140 IF W$="RST" THEN GOSUB 8060:RETURN -2150 IF W$<>"ORG" THEN 2190 -2160 ZZ$=X$:GOSUB 6030:IF TT=1 THEN GOSUB 8050:RETURN -2170 GOSUB 5820:IF (TT=1) OR(DW>W) THEN GOSUB 8050:RETURN -2180 AD=DW:GOSUB 120:HO=15:GOSUB 110:PRINT W$;" ";X$:RETURN -2190 IF W$<>"DB" THEN 2250 -2200 ZZ$=X$:GOSUB 6120 -2210 IF (DW>255) OR(TT=1) THEN GOSUB 8050:RETURN +2000 IFRIGHT$(W$,1)<>":" THEN2030 +2010 IFUT=K-1 THENUT=UT+1:GOSUB8050:RETURN +2020 S(K)=2500:GOSUB120:HO=15:GOSUB110:PRINTW$:UT=K:RETURN +2030 RESTORE +2040 FORJ=1 TO34:READD$,B$:NEXTJ +2050 FORJ=1 TO27 +2060 READD$,B$:IFD$=W$ THENZ=J:J=30 +2070 NEXTJ +2080 IFJ<30 THENGOSUB8050:RETURN +2090 IFZ<5 THENGOSUB8060:RETURN +2100 IFAD>W THENGOSUB8080:RETURN +2110 ZZ$=B$:U=3:TS=16:GOSUB5820:GE(AD)=DW:S(K)=AD +2120 GOSUB6090:AD=AD+1:PRINTR$;" ";B$;" ";W$; +2130 PRINT:RETURN +2140 IFW$="RST" THENGOSUB8060:RETURN +2150 IFW$<>"ORG" THEN2190 +2160 ZZ$=X$:GOSUB6030:IFTT=1 THENGOSUB8050:RETURN +2170 GOSUB5820:IF(TT=1) OR(DW>W) THENGOSUB8050:RETURN +2180 AD=DW:GOSUB120:HO=15:GOSUB110:PRINTW$;" ";X$:RETURN +2190 IFW$<>"DB" THEN2250 +2200 ZZ$=X$:GOSUB6120 +2210 IF(DW>255) OR(TT=1) THENGOSUB8050:RETURN 2220 GE(AD)=DW:S(K)=AD -2230 GOSUB 7290:GOSUB 6090:PRINT R$;" ";D$;:AD=AD+1 -2240 GOSUB 120:HO=15:GOSUB 110:PRINT W$;" ";X$:RETURN -2250 RESTORE -2260 FOR J=1 TO 34 -2270 READ D$,B$:IF D$=W$ THEN Z=J:J=37 -2280 NEXT J -2290 IF J<37 THEN Q$=W$+X$:GOTO 2570 -2300 IF Z>32 THEN GOSUB 6220:IF TT=1 THEN GOSUB 8050:RETURN -2310 IF AD>W THEN GOSUB 8080:RETURN -2320 ZZ$=B$:U=3:TS=16:GOSUB 5820:GE(AD)=DW:S(K)=AD -2330 GOSUB 6090:PRINT R$;" ";B$;" ";:AD=AD+1 -2340 IF (Z<23) OR(Z=34) THEN 2420 -2350 IF Z=33 THEN X2$=X$:X$=X3$:X3$=X2$ -2360 ZZ$=X$:GOSUB 6120 -2370 IF Z=33 THEN X2$=X$:X$=X3$:X3$=X2$ -2380 IF (TT=1) OR(DW>255) THEN GOSUB 8050:RETURN -2390 IF AD>W THEN GOSUB 8080:RETURN -2400 GE(AD)=DW:GOSUB 7290:AD=AD+1 -2410 PRINT D$;" ";W$;" ";X$:RETURN -2420 IF Z=34 THEN X2$=X$:X$=X3$:X3$=X2$ -2430 ZZ$=X$:GOSUB 6120 -2440 IF Z=34 THEN X2$=X$:X$=X3$:X3$=X2$ -2450 IF ((TT=1) AND(Z=34)) OR(DW>65535!) THEN GOSUB 8050:RETURN -2460 IF Z=34 THEN 2480 -2470 IF DW>W THEN GOSUB 8050:RETURN -2480 IF AD>W-1 THEN GOSUB 8080:RETURN -2490 IF D$<>"L" THEN 2520 +2230 GOSUB7290:GOSUB6090:PRINTR$;" ";D$;:AD=AD+1 +2240 GOSUB120:HO=15:GOSUB110:PRINTW$;" ";X$:RETURN +2250 RESTORE +2260 FORJ=1 TO34 +2270 READD$,B$:IFD$=W$ THENZ=J:J=37 +2280 NEXTJ +2290 IFJ<37 THENQ$=W$+X$:GOTO2570 +2300 IFZ>32 THENGOSUB6220:IFTT=1 THENGOSUB8050:RETURN +2310 IFAD>W THENGOSUB8080:RETURN +2320 ZZ$=B$:U=3:TS=16:GOSUB5820:GE(AD)=DW:S(K)=AD +2330 GOSUB6090:PRINTR$;" ";B$;" ";:AD=AD+1 +2340 IF(Z<23) OR(Z=34) THEN2420 +2350 IFZ=33 THENX2$=X$:X$=X3$:X3$=X2$ +2360 ZZ$=X$:GOSUB6120 +2370 IFZ=33 THENX2$=X$:X$=X3$:X3$=X2$ +2380 IF(TT=1) OR(DW>255) THENGOSUB8050:RETURN +2390 IFAD>W THENGOSUB8080:RETURN +2400 GE(AD)=DW:GOSUB7290:AD=AD+1 +2410 PRINTD$;" ";W$;" ";X$:RETURN +2420 IFZ=34 THENX2$=X$:X$=X3$:X3$=X2$ +2430 ZZ$=X$:GOSUB6120 +2440 IFZ=34 THENX2$=X$:X$=X3$:X3$=X2$ +2450 IF((TT=1) AND(Z=34)) OR(DW>65535) THENGOSUB8050:RETURN +2460 IFZ=34 THEN2480 +2470 IFDW>W THENGOSUB8050:RETURN +2480 IFAD>W-1 THENGOSUB8080:RETURN +2490 IFD$<>"L" THEN2520 2500 S(K)=S(K)+1200:GE(AD)=0:GE(AD+1)=0:AD=AD+2 -2510 PRINT "00 00 ";:GOTO 2560 -2520 Z=DW:DW=DW-(INT(DW/256)*256):GOSUB 7290 +2510 PRINT"00 00 ";:GOTO2560 +2520 Z=DW:DW=DW-(INT(DW/256)*256):GOSUB7290 2530 GE(AD)=DW:AD=AD+1 -2540 PRINT D$;" ";:DW=INT(Z/256):GOSUB 7290 -2550 GE(AD)=DW:AD=AD+1:PRINT D$;" "; -2560 PRINT W$;" ";X$:RETURN -2570 FOR J=1 TO 27:READ D$,B$:NEXT J -2580 FOR J=1 TO 167 -2590 READ D$,B$:IF Q$=D$ THEN Z=J:J=187 -2600 NEXT J -2610 IF J<187 THEN GOSUB 8050:RETURN -2620 IF AD>W THEN GOSUB 8080:RETURN -2630 ZZ$=B$:U=3:TS=16:GOSUB 5820:GE(AD)=DW:S(K)=AD -2640 GOSUB 6090:PRINT R$;" ";B$;:GOSUB 120 -2650 HO=15:AD=AD+1:GOSUB 110:PRINT W$;" ";X$:RETURN -2660 FOR K=1 TO TE-1 -2670 IF (S(K)<1200) OR(S(K)>(1200+W)) THEN 2810 -2680 ZZ$=PR$(K):GOSUB 5600:D$=X$+":":TT=1 -2690 FOR J=1 TO TE-1 -2700 IF S(J)<>2500 THEN 2740 -2710 ZZ$=PR$(J):GOSUB 5600 -2720 IF D$<>W$ THEN 2740 +2540 PRINTD$;" ";:DW=INT(Z/256):GOSUB7290 +2550 GE(AD)=DW:AD=AD+1:PRINTD$;" "; +2560 PRINTW$;" ";X$:RETURN +2570 FORJ=1 TO27:READD$,B$:NEXTJ +2580 FORJ=1 TO167 +2590 READD$,B$:IFQ$=D$ THENZ=J:J=187 +2600 NEXTJ +2610 IFJ<187 THENGOSUB8050:RETURN +2620 IFAD>W THENGOSUB8080:RETURN +2630 ZZ$=B$:U=3:TS=16:GOSUB5820:GE(AD)=DW:S(K)=AD +2640 GOSUB6090:PRINTR$;" ";B$;:GOSUB120 +2650 HO=15:AD=AD+1:GOSUB110:PRINTW$;" ";X$:RETURN +2660 FORK=1 TOTE-1 +2670 IF(S(K)<1200) OR(S(K)>(1200+W)) THEN2810 +2680 ZZ$=PR$(K):GOSUB5600:D$=X$+":":TT=1 +2690 FORJ=1 TOTE-1 +2700 IFS(J)<>2500 THEN2740 +2710 ZZ$=PR$(J):GOSUB5600 +2720 IFD$<>W$ THEN2740 2730 TT=0:Z=J+1:J=TE -2740 NEXT J -2750 IF TT=1 THEN GOSUB 8090:GOTO 2810 -2760 AD=S(K)-1200:GOSUB 6090:DW=GE(AD):GOSUB 7290 -2770 PRINT R$;" ";D$;" ";:AD=AD+1 -2780 IF S(Z)>2499 THEN Z=Z+1:GOTO 2780 -2790 DW=S(Z):IF DW>W THEN DW=DW-1200 -2800 GOSUB 2520 -2810 NEXT K:RETURN -2820 Z$="":GOSUB 6640:IF TT=1 THEN 1080 -2830 SS=1:GOSUB 7690 +2740 NEXTJ +2750 IFTT=1 THENGOSUB8090:GOTO2810 +2760 AD=S(K)-1200:GOSUB6090:DW=GE(AD):GOSUB7290 +2770 PRINTR$;" ";D$;" ";:AD=AD+1 +2780 IFS(Z)>2499 THENZ=Z+1:GOTO2780 +2790 DW=S(Z):IFDW>W THENDW=DW-1200 +2800 GOSUB2520 +2810 NEXTK:RETURN +2820 Z$="":GOSUB6640:IFTT=1 THEN1080 +2830 SS=1:GOSUB7690 2840 RI$(0)="B":RI$(1)="C":RI$(2)="D":RI$(3)="E" 2850 RI$(4)="H":RI$(5)="L":RI$(6)="M":RI$(7)="A" -2860 GOSUB 7350 -2870 FOR I=0 TO 7:RE(I)=0:NEXT I:RE(8)=68 +2860 GOSUB7350 +2870 FORI=0 TO7:RE(I)=0:NEXTI:RE(8)=68 2880 S=0:Z=0:A=0:P=0:C=0:SP=W-2 2890 B1=256:B2=256:BI=0:BO=0 -2900 ZZ$=PR$(0):GOSUB 5600:ZZ$=X$:GOSUB 6030:GOSUB 5820 +2900 ZZ$=PR$(0):GOSUB5600:ZZ$=X$:GOSUB6030:GOSUB5820 2910 PC=DW:BB=0 -2920 IF PC<(W+1) THEN 2940 -2930 GOSUB 100:PRINT "PROGR. TELLER TE HOOG":GOTO 1080 -2940 G=GE(PC):AD=PC:PC=PC+1:GOSUB 6090 +2920 IFPC<(W+1) THEN2940 +2930 GOSUB100:PRINT"PROGR. TELLER TE HOOG":GOTO1080 +2940 G=GE(PC):AD=PC:PC=PC+1:GOSUB6090 2950 L1=INT(G/64):L3=G-INT(G/8)*8 2960 L2=INT((G-L1*64)/8):L4=INT(L2/2):L5=L2-L4*2 -2970 GOSUB 6370:IF TT=1 THEN 3030 -2980 TT=0:D$="00":GOSUB 3090 -2990 GOSUB 6680 -3000 IF TT=0 THEN 3040 -3010 IF TT<>2 THEN 3030 -3020 GOSUB 100:GOSUB 8030:Z$="":P=1:GOTO 1080 -3030 Z$="":P=1:GOSUB 100:PRINT "FOUT OP ADRES ";R$:GOTO 1080 -3040 HO=15:VE=0:GOSUB 110:PRINT "VOLGENDE?":GOSUB 210 -3050 GOSUB 6820:IF TT=1 THEN 3040 -3060 IF IN$="S" THEN GOSUB 100:GOSUB 8030:Z$="":P=1:GOTO 1080 -3070 IF IN$="Z" THEN GOSUB 7760 -3080 GOTO 2920 -3090 ON L1+1 GOTO 3100,4030,4080,4410 -3100 ON L3+1 GOTO 3110,3130,3290,3420,3590,3590,3740,3830 -3110 IF L2<>0 THEN TT=1:RETURN +2970 GOSUB6370:IFTT=1 THEN3030 +2980 TT=0:D$="00":GOSUB3090 +2990 GOSUB6680 +3000 IFTT=0 THEN3040 +3010 IFTT<>2 THEN3030 +3020 GOSUB100:GOSUB8030:Z$="":P=1:GOTO1080 +3030 Z$="":P=1:GOSUB100:PRINT"FOUT OP ADRES ";R$:GOTO1080 +3040 HO=15:VE=0:GOSUB110:PRINT"VOLGENDE?":GOSUB210 +3050 GOSUB6820:IFTT=1 THEN3040 +3060 IFIN$="S" THENGOSUB100:GOSUB8030:Z$="":P=1:GOTO1080 +3070 IFIN$="Z" THENGOSUB7760 +3080 GOTO2920 +3090 ONL1+1 GOTO3100,4030,4080,4410 +3100 ONL3+1 GOTO3110,3130,3290,3420,3590,3590,3740,3830 +3110 IFL2<>0 THENTT=1:RETURN 3120 RETURN 3130 IR=L4*2 -3140 IF L5=1 THEN 3230 -3150 IF PC>W-1 THEN TT=1:RETURN -3160 IF IR<>6 THEN 3210 +3140 IFL5=1 THEN3230 +3150 IFPC>W-1 THENTT=1:RETURN +3160 IFIR<>6 THEN3210 3170 SP=GE(PC+1)*256+GE(PC) -3180 GOSUB 7660:IF TT=1 THEN :RETURN -3190 GOSUB 7680 +3180 GOSUB7660:IFTT=1 THEN:RETURN +3190 GOSUB7680 3200 PC=PC+2:RETURN 3210 RE(IR)=GE(PC+1):RE(IR+1)=GE(PC):PC=PC+2 -3220 DW=RE(IR+1):GOSUB 7200:DW=RE(IR):GOSUB 7220:RETURN +3220 DW=RE(IR+1):GOSUB7200:DW=RE(IR):GOSUB7220:RETURN 3230 A1=RE(4)*256+RE(5) -3240 IF IR=6 THEN A1=A1+SP:GOTO 3260 +3240 IFIR=6 THENA1=A1+SP:GOTO3260 3250 A1=A1+(RE(IR)*256+RE(IR+1)) -3260 C=0:IF A1>65535! THEN C=1:A1=A1-65536! +3260 C=0:IFA1>65535 THENC=1:A1=A1-65536 3270 RE(4)=INT(A1/256):RE(5)=A1-RE(4)*256:A1=RE(8) -3280 GOSUB 5380:RETURN +3280 GOSUB5380:RETURN 3290 IR=L4*2 -3300 IF IR=0 THEN A1=RE(0)*256+RE(1):GOTO 3350 -3310 IF IR=2 THEN A1=RE(2)*256+RE(3):GOTO 3350 -3320 IF PC>W-1 THEN TT=1:RETURN -3330 GOSUB 7680 +3300 IFIR=0 THENA1=RE(0)*256+RE(1):GOTO3350 +3310 IFIR=2 THENA1=RE(2)*256+RE(3):GOTO3350 +3320 IFPC>W-1 THENTT=1:RETURN +3330 GOSUB7680 3340 A1=GE(PC+1)*256+GE(PC) -3350 IF A1>(W-1) THEN TT=1:RETURN -3360 IF IR>2 THEN PC=PC+2 -3370 IF L5=0 THEN 3400 -3380 IF IR=4 THEN RE(5)=GE(A1):RE(4)=GE(A1+1):RETURN +3350 IFA1>(W-1) THENTT=1:RETURN +3360 IFIR>2 THENPC=PC+2 +3370 IFL5=0 THEN3400 +3380 IFIR=4 THENRE(5)=GE(A1):RE(4)=GE(A1+1):RETURN 3390 RE(7)=GE(A1):RETURN -3400 IF IR=4 THEN GE(A1)=RE(5):GE(A1+1)=RE(4):RETURN +3400 IFIR=4 THENGE(A1)=RE(5):GE(A1+1)=RE(4):RETURN 3410 GE(A1)=RE(7):RETURN -3420 IR=L4*2:IF L5=1 THEN 3510 -3430 IF L4<>6 THEN 3460 -3440 SP=SP+1:GOSUB 7660 +3420 IR=L4*2:IFL5=1 THEN3510 +3430 IFL4<>6 THEN3460 +3440 SP=SP+1:GOSUB7660 3450 RETURN 3460 RE(IR+1)=RE(IR+1)+1 -3470 IF RE(IR+1)<256 THEN RETURN +3470 IFRE(IR+1)<256 THENRETURN 3480 RE(IR+1)=0:RE(IR)=RE(IR)+1 -3490 IF RE(IR)<256 THEN RETURN +3490 IFRE(IR)<256 THENRETURN 3500 RE(IR)=0:RETURN -3510 IF L4<>6 THEN 3540 -3520 SP=SP-1:GOSUB 7660 +3510 IFL4<>6 THEN3540 +3520 SP=SP-1:GOSUB7660 3530 RETURN 3540 RE(IR+1)=RE(IR+1)-1 -3550 IF RE(IR+1)>-1 THEN RETURN +3550 IFRE(IR+1)>-1 THENRETURN 3560 RE(IR+1)=255:RE(IR)=RE(IR)-1 -3570 IF RE(IR)>-1 THEN RETURN +3570 IFRE(IR)>-1 THENRETURN 3580 RE(IR)=255:RETURN -3590 IF L2=6 THEN GOSUB 5390:IF TT=1 THEN RETURN +3590 IFL2=6 THENGOSUB5390:IFTT=1 THENRETURN 3600 K=RE(L2)-(INT(RE(L2)/16)*16) -3610 A=0:ON L3-3 GOSUB 3650,3690 -3620 A1=RE(L2):A2=255:D=1:GOSUB 5190 -3630 GOSUB 5380:IF L2=6 THEN GE(IR)=RE(6) +3610 A=0:ONL3-3 GOSUB3650,3690 +3620 A1=RE(L2):A2=255:D=1:GOSUB5190 +3630 GOSUB5380:IFL2=6 THENGE(IR)=RE(6) 3640 RETURN -3650 IF (K+1)>15 THEN A=1 +3650 IF(K+1)>15 THENA=1 3660 RE(L2)=RE(L2)+1 -3670 Z=0:IF RE(L2)>255 THEN RE(L2)=0:Z=1 +3670 Z=0:IFRE(L2)>255 THENRE(L2)=0:Z=1 3680 RETURN -3690 IF (K-1)<0 THEN A=1 +3690 IF(K-1)<0 THENA=1 3700 RE(L2)=RE(L2)-1 -3710 IF RE(L2)<0 THEN RE(L2)=255 -3720 Z=0:IF RE(L2)=0 THEN Z=1 +3710 IFRE(L2)<0 THENRE(L2)=255 +3720 Z=0:IFRE(L2)=0 THENZ=1 3730 RETURN -3740 IF PC>W THEN TT=1:RETURN -3750 IF L2=6 THEN 3790 +3740 IFPC>W THENTT=1:RETURN +3750 IFL2=6 THEN3790 3760 RE(L2)=GE(PC):PC=PC+1 -3770 DW=RE(L2):GOSUB 7200 +3770 DW=RE(L2):GOSUB7200 3780 RETURN -3790 GOSUB 5390:IF TT=1 THEN RETURN +3790 GOSUB5390:IFTT=1 THENRETURN 3800 GE(IR)=GE(PC):PC=PC+1 -3810 DW=GE(IR):GOSUB 7200 +3810 DW=GE(IR):GOSUB7200 3820 RETURN -3830 ON L2+1 GOTO 3840,3880,3840,3880,3930,4000,4010,4020 -3840 RE(7)=RE(7)*2:IF L2=2 THEN RE(7)=RE(7)+C -3850 C=0:IF RE(7)>255 THEN C=1:RE(7)=RE(7)-256 -3860 IF L2=0 THEN RE(7)=RE(7)+C -3870 GOSUB 5380:RETURN +3830 ONL2+1 GOTO3840,3880,3840,3880,3930,4000,4010,4020 +3840 RE(7)=RE(7)*2:IFL2=2 THENRE(7)=RE(7)+C +3850 C=0:IFRE(7)>255 THENC=1:RE(7)=RE(7)-256 +3860 IFL2=0 THENRE(7)=RE(7)+C +3870 GOSUB5380:RETURN 3880 K=RE(7)-INT(RE(7)/2)*2:RE(7)=INT(RE(7)/2) -3890 IF L2=3 THEN RE(7)=RE(7)+128*C -3900 C=0:IF K=1 THEN C=1 -3910 IF L2=1 THEN RE(7)=RE(7)+128*C -3920 GOSUB 5380:RETURN -3930 GOSUB 5350:IF (K<10) AND(A=0) THEN 3960 +3890 IFL2=3 THENRE(7)=RE(7)+128*C +3900 C=0:IFK=1 THENC=1 +3910 IFL2=1 THENRE(7)=RE(7)+128*C +3920 GOSUB5380:RETURN +3930 GOSUB5350:IF(K<10) AND(A=0) THEN3960 3940 A=1-A:RE(7)=RE(7)+6 -3950 IF RE(7)>255 THEN C=1:RE(7)=RE(7)-256 -3960 K=INT(RE(7)/16):IF (K<10) AND(C=0) THEN 3890 -3970 RE(7)=RE(7)+96:IF RE(7)>255 THEN C=1:RE(7)=RE(7)-256 -3980 Z=0:IF RE(7)=0 THEN Z=1 -3990 A1=RE(7):A2=255:D=1:GOSUB 5190:GOSUB 5380:RETURN +3950 IFRE(7)>255 THENC=1:RE(7)=RE(7)-256 +3960 K=INT(RE(7)/16):IF(K<10) AND(C=0) THEN3890 +3970 RE(7)=RE(7)+96:IFRE(7)>255 THENC=1:RE(7)=RE(7)-256 +3980 Z=0:IFRE(7)=0 THENZ=1 +3990 A1=RE(7):A2=255:D=1:GOSUB5190:GOSUB5380:RETURN 4000 RE(7)=255-RE(7):RETURN -4010 C=1:GOSUB 5380:RETURN -4020 C=1-C:GOSUB 5380:RETURN -4030 IF (L2=6) AND(L3=6) THEN TT=2:RETURN -4040 IF (L2<>6) AND(L3<>6) THEN RE(L2)=RE(L3):RETURN -4050 IR=RE(4)*256+RE(5):IF IR>W THEN TT=1:RETURN -4060 IF L2=6 THEN GE(IR)=RE(L3):RETURN +4010 C=1:GOSUB5380:RETURN +4020 C=1-C:GOSUB5380:RETURN +4030 IF(L2=6) AND(L3=6) THENTT=2:RETURN +4040 IF(L2<>6) AND(L3<>6) THENRE(L2)=RE(L3):RETURN +4050 IR=RE(4)*256+RE(5):IFIR>W THENTT=1:RETURN +4060 IFL2=6 THENGE(IR)=RE(L3):RETURN 4070 RE(L2)=GE(IR):RETURN -4080 IF L3<>6 THEN 4120 +4080 IFL3<>6 THEN4120 4090 IR=RE(4)*256+RE(5) -4100 IF IR>W THEN TT=1:RETURN +4100 IFIR>W THENTT=1:RETURN 4110 RE(6)=GE(IR) -4120 DW=RE(L3):GOSUB 7290 -4130 ON L2+1 GOTO 4140,4140,4210,4210,4280,4310,4310,4350 -4140 GOSUB 5350:A=0:K=K+M:IF L2=1 THEN K=K+C -4150 IF K>15 THEN A=1 -4160 RE(7)=RE(7)+RE(L3):IF L2=1 THEN RE(7)=RE(7)+C -4170 C=0:IF RE(7)>255 THEN C=1:RE(7)=RE(7)-256 -4180 Z=0:IF RE(7)=0 THEN Z=1 -4190 A1=RE(7):A2=255:D=1:GOSUB 5190 -4200 GOSUB 5380:RETURN -4210 GOSUB 5350:A=0:K=K-M:IF L2=3 THEN K=K-C -4220 IF K<0 THEN A=1 -4230 RE(7)=RE(7)-RE(L3):IF L2=3 THEN RE(7)=RE(7)-C -4240 C=0:IF RE(7)<0 THEN C=1:RE(7)=RE(7)+256 -4250 Z=0:IF RE(7)=0 THEN Z=1 -4260 A1=RE(7):A2=255:D=1:GOSUB 5190 -4270 GOSUB 5380:RETURN -4280 A1=RE(7):A2=RE(L3):D=1:GOSUB 5190 -4290 RE(7)=G:Z=0:IF RE(7)=0 THEN Z=1 -4300 A=1:C=0:GOSUB 5380:RETURN -4310 D=2:IF L2=6 THEN D=3 -4320 A1=RE(7):A2=RE(L3):GOSUB 5190 -4330 RE(7)=G:Z=0:IF RE(7)=0 THEN Z=1 -4340 A=0:C=0:GOSUB 5380:RETURN -4350 GOSUB 5350:A=0:IF (K-M)<0 THEN A=1 +4120 DW=RE(L3):GOSUB7290 +4130 ONL2+1 GOTO4140,4140,4210,4210,4280,4310,4310,4350 +4140 GOSUB5350:A=0:K=K+M:IFL2=1 THENK=K+C +4150 IFK>15 THENA=1 +4160 RE(7)=RE(7)+RE(L3):IFL2=1 THENRE(7)=RE(7)+C +4170 C=0:IFRE(7)>255 THENC=1:RE(7)=RE(7)-256 +4180 Z=0:IFRE(7)=0 THENZ=1 +4190 A1=RE(7):A2=255:D=1:GOSUB5190 +4200 GOSUB5380:RETURN +4210 GOSUB5350:A=0:K=K-M:IFL2=3 THENK=K-C +4220 IFK<0 THENA=1 +4230 RE(7)=RE(7)-RE(L3):IFL2=3 THENRE(7)=RE(7)-C +4240 C=0:IFRE(7)<0 THENC=1:RE(7)=RE(7)+256 +4250 Z=0:IFRE(7)=0 THENZ=1 +4260 A1=RE(7):A2=255:D=1:GOSUB5190 +4270 GOSUB5380:RETURN +4280 A1=RE(7):A2=RE(L3):D=1:GOSUB5190 +4290 RE(7)=G:Z=0:IFRE(7)=0 THENZ=1 +4300 A=1:C=0:GOSUB5380:RETURN +4310 D=2:IFL2=6 THEND=3 +4320 A1=RE(7):A2=RE(L3):GOSUB5190 +4330 RE(7)=G:Z=0:IFRE(7)=0 THENZ=1 +4340 A=0:C=0:GOSUB5380:RETURN +4350 GOSUB5350:A=0:IF(K-M)<0 THENA=1 4360 A1=RE(7)-RE(L3) -4370 C=0:IF A1<0 THEN C=1:A1=A1+256 -4380 Z=0:IF A1=0 THEN Z=1 -4390 A2=255:D=1:GOSUB 5190 -4400 GOSUB 5380:RETURN -4410 ON L3+1 GOTO 4420,4800,4450,4910,4440,5080,5150,4880 -4420 GOSUB 7660:IF TT=1 THEN :RETURN -4430 L3=L3/2+1:GOTO 4470 -4440 GOSUB 7660:IF TT=1 THEN RETURN +4370 C=0:IFA1<0 THENC=1:A1=A1+256 +4380 Z=0:IFA1=0 THENZ=1 +4390 A2=255:D=1:GOSUB5190 +4400 GOSUB5380:RETURN +4410 ONL3+1 GOTO4420,4800,4450,4910,4440,5080,5150,4880 +4420 GOSUB7660:IFTT=1 THEN:RETURN +4430 L3=L3/2+1:GOTO4470 +4440 GOSUB7660:IFTT=1 THENRETURN 4450 L3=L3/2+1 -4460 IF PC>W-1 THEN TT=1:RETURN -4470 ON L2+1 GOTO 4480,4510,4540,4570,4600,4630,4660,4690 -4480 IF Z=0 THEN 4720 -4490 IF L3<>1 THEN 4780 +4460 IFPC>W-1 THENTT=1:RETURN +4470 ONL2+1 GOTO4480,4510,4540,4570,4600,4630,4660,4690 +4480 IFZ=0 THEN4720 +4490 IFL3<>1 THEN4780 4500 RETURN -4510 IF Z=1 THEN 4720 -4520 IF L3<>1 THEN 4780 +4510 IFZ=1 THEN4720 +4520 IFL3<>1 THEN4780 4530 RETURN -4540 IF C=0 THEN 4720 -4550 IF L3<>1 THEN 4780 +4540 IFC=0 THEN4720 +4550 IFL3<>1 THEN4780 4560 RETURN -4570 IF C=1 THEN 4720 -4580 IF L3<>1 THEN 4780 +4570 IFC=1 THEN4720 +4580 IFL3<>1 THEN4780 4590 RETURN -4600 IF P=0 THEN 4720 -4610 IF L3<>1 THEN 4780 +4600 IFP=0 THEN4720 +4610 IFL3<>1 THEN4780 4620 RETURN -4630 IF P=1 THEN 4720 -4640 IF L3<>1 THEN 4780 +4630 IFP=1 THEN4720 +4640 IFL3<>1 THEN4780 4650 RETURN -4660 IF S=0 THEN 4720 -4670 IF L3<>1 THEN 4780 +4660 IFS=0 THEN4720 +4670 IFL3<>1 THEN4780 4680 RETURN -4690 IF S=1 THEN 4720 -4700 IF L3<>1 THEN 4780 +4690 IFS=1 THEN4720 +4700 IFL3<>1 THEN4780 4710 RETURN -4720 ON L3 GOTO 4730,4760,4740 -4730 PC=GE(SP)+256*GE(SP+1):SP=SP+2:GOSUB 7030:RETURN +4720 ONL3 GOTO4730,4760,4740 +4730 PC=GE(SP)+256*GE(SP+1):SP=SP+2:GOSUB7030:RETURN 4740 GE(SP-1)=INT((PC+2)/256) 4750 GE(SP-2)=PC+2-(GE(SP-1)*256):SP=SP-2 -4760 GOSUB 7680 -4770 PC=GE(PC)+256*GE(PC+1):GOSUB 7030:RETURN -4780 GOSUB 7680 +4760 GOSUB7680 +4770 PC=GE(PC)+256*GE(PC+1):GOSUB7030:RETURN +4780 GOSUB7680 4790 PC=PC+2:RETURN -4800 ON L2+1 GOTO 4830,4810,4830,4880,4830,4890,4830,4900 -4810 GOSUB 7660:IF TT=1 THEN :RETURN -4820 GOTO 4730 -4830 GOSUB 7660:IF TT=1 THEN :RETURN -4840 IR=L4*2:IF IR=6 THEN IR=7 +4800 ONL2+1 GOTO4830,4810,4830,4880,4830,4890,4830,4900 +4810 GOSUB7660:IFTT=1 THEN:RETURN +4820 GOTO4730 +4830 GOSUB7660:IFTT=1 THEN:RETURN +4840 IR=L4*2:IFIR=6 THENIR=7 4850 RE(IR+1)=GE(SP):RE(IR)=GE(SP+1):SP=SP+2 -4860 IF IR=7 THEN GOSUB 7240 +4860 IFIR=7 THENGOSUB7240 4870 RETURN 4880 TT=1:RETURN -4890 PC=RE(4)*256+RE(5):GOSUB 7030:RETURN +4890 PC=RE(4)*256+RE(5):GOSUB7030:RETURN 4900 SP=RE(4)*256+RE(5):RETURN -4910 ON L2+1 GOTO 4920,4880,4940,4940,5030,5060,4880,4880 -4920 IF PC>W-1 THEN TT=1:RETURN -4930 GOTO 4760 -4940 IF PC>W THEN TT=1:RETURN +4910 ONL2+1 GOTO4920,4880,4940,4940,5030,5060,4880,4880 +4920 IFPC>W-1 THENTT=1:RETURN +4930 GOTO4760 +4940 IFPC>W THENTT=1:RETURN 4950 G=GE(PC):PC=PC+1 -4960 DW=G:GOSUB 7200 -4970 IF L2=3 THEN 5000 -4980 IF (G<>B2) AND(B2<>256) THEN TT=1:RETURN -4990 B2=G:BO=RE(7):GOSUB 7040:RETURN -5000 IF (G<>B1) AND(B1<>256) THEN TT=1:RETURN -5010 B1=G:RE(7)=BI:GOSUB 7010 +4960 DW=G:GOSUB7200 +4970 IFL2=3 THEN5000 +4980 IF(G<>B2) AND(B2<>256) THENTT=1:RETURN +4990 B2=G:BO=RE(7):GOSUB7040:RETURN +5000 IF(G<>B1) AND(B1<>256) THENTT=1:RETURN +5010 B1=G:RE(7)=BI:GOSUB7010 5020 RETURN -5030 GOSUB 7660:IF TT=1 THEN :RETURN +5030 GOSUB7660:IFTT=1 THEN:RETURN 5040 A1=RE(4):RE(4)=GE(SP+1):GE(SP+1)=A1 5050 A1=RE(5):RE(5)=GE(SP):GE(SP)=A1:RETURN 5060 A1=RE(2):RE(2)=RE(4):RE(4)=A1 5070 A1=RE(3):RE(3)=RE(5):RE(5)=A1:RETURN -5080 ON L2+1 GOTO 5090,5120,5090,4880,5090,4880,5090,4880 -5090 GOSUB 7660:IF TT=1 THEN RETURN -5100 IR=L4*2:IF IR=6 THEN IR=7 +5080 ONL2+1 GOTO5090,5120,5090,4880,5090,4880,5090,4880 +5090 GOSUB7660:IFTT=1 THENRETURN +5100 IR=L4*2:IFIR=6 THENIR=7 5110 GE(SP-1)=RE(IR):GE(SP-2)=RE(IR+1):SP=SP-2:RETURN -5120 IF PC>W-1 THEN TT=1:RETURN +5120 IFPC>W-1 THENTT=1:RETURN 5130 A1=GE(PC+1)*256+GE(PC) -5140 GOTO 4740 -5150 IF PC>W THEN TT=1:RETURN -5160 RE(6)=GE(PC):PC=PC+1:GOTO 4130 -5170 DW=RE(6):GOSUB 7200 -5180 GOTO 4130 +5140 GOTO4740 +5150 IFPC>W THENTT=1:RETURN +5160 RE(6)=GE(PC):PC=PC+1:GOTO4130 +5170 DW=RE(6):GOSUB7200 +5180 GOTO4130 5190 P=0:TS=1:G=0 -5200 FOR I=1 TO 8 +5200 FORI=1 TO8 5210 X=A1-(INT(A1/2)*2) 5220 Y=A2-(INT(A2/2)*2) 5230 A1=INT(A1/2) 5240 A2=INT(A2/2) -5250 ON D GOSUB 5300,5330,5310 +5250 OND GOSUB5300,5330,5310 5260 G=G+TS*S:P=P+S:TS=TS*2 -5270 NEXT I -5280 IF (INT(P/2)*2)=P THEN P=1:RETURN +5270 NEXTI +5280 IF(INT(P/2)*2)=P THENP=1:RETURN 5290 P=0:RETURN 5300 S=X*Y:RETURN -5310 S=0:IF (X=1) OR(Y=1) THEN S=1 +5310 S=0:IF(X=1) OR(Y=1) THENS=1 5320 RETURN -5330 S=1:IF X=Y THEN S=0 +5330 S=1:IFX=Y THENS=0 5340 RETURN 5350 K=RE(7)-(INT(RE(7)/16)*16) 5360 M=RE(L3)-(INT(RE(L3)/16)*16) 5370 RETURN 5380 RE(8)=C+P*4+A*16+Z*64+S*128:RETURN 5390 IR=RE(4)*256+RE(5) -5400 IF IR>W THEN TT=1:RETURN +5400 IFIR>W THENTT=1:RETURN 5410 RE(6)=GE(IR):RETURN 5420 G=0 -5430 IF LEN(ZZ$)=0 THEN RETURN -5440 FOR I=1 TO LEN(ZZ$) -5450 IF Z$=MID$(ZZ$,I,1) THEN G=I:I=LEN(ZZ$) -5460 NEXT I +5430 IFLEN(ZZ$)=0 THENRETURN +5440 FORI=1 TOLEN(ZZ$) +5450 IFZ$=MID$(ZZ$,I,1) THENG=I:I=LEN(ZZ$) +5460 NEXTI 5470 RETURN -5480 GOSUB 210 -5490 IF (IN$="") OR(ASC(IN$)=13) THEN 5580 -5500 IF (IN$="?") OR(ASC(IN$)=127) THEN 5510 -5505 IF (ASC(IN$)<>20) THEN 5550 -5510 IF LEN(Z$)=0 THEN GOSUB 250:GOTO 5480 -5520 IF LEN(Z$)=1 THEN Z$="":GOTO 5540 +5480 GOSUB210 +5490 IF(IN$="") OR(ASC(IN$)=13) THEN5580 +5500 IF(IN$="?") OR(ASC(IN$)=127) THEN5510 +5505 IF(ASC(IN$)<>20) THEN5550 +5510 IFLEN(Z$)=0 THENGOSUB250:GOTO5480 +5520 IFLEN(Z$)=1 THENZ$="":GOTO5540 5530 Z$=LEFT$(Z$,LEN(Z$)-1) -5540 GOSUB 120:HO=HO-1:GOSUB 110:PRINT "- ";:GOSUB 110:GOTO 5480 -5550 IF (LEN(Z$)=0) AND(IN$=" ") THEN GOSUB 250:GOTO 5480 -5560 Z$=Z$+IN$:PRINT IN$;"-";:GOSUB 120:HO=HO-1:GOSUB 110 -5570 GOTO 5480 -5580 PRINT " ";:RETURN -5590 PRINT "REGEL BESTAAT NIET":Z$="":RETURN -5600 Z$=";":GOSUB 5420:IF G=0 THEN G=LEN(ZZ$)+1 +5540 GOSUB120:HO=HO-1:GOSUB110:PRINT"- ";:GOSUB110:GOTO5480 +5550 IF(LEN(Z$)=0) AND(IN$=" ") THENGOSUB250:GOTO5480 +5560 Z$=Z$+IN$:PRINTIN$;"-";:GOSUB120:HO=HO-1:GOSUB110 +5570 GOTO5480 +5580 PRINT" ";:RETURN +5590 PRINT"REGEL BESTAAT NIET":Z$="":RETURN +5600 Z$=";":GOSUB5420:IFG=0 THENG=LEN(ZZ$)+1 5610 B=0:W$="":X$="":Y$="" -5620 IF G=1 THEN G=0:RETURN -5630 FOR I=G-1 TO 1 STEP -1 -5640 IF MID$(ZZ$,I,1)<>" " THEN B=I:I=1 -5650 NEXT I -5660 IF B=0 THEN G=0:RETURN +5620 IFG=1 THENG=0:RETURN +5630 FORI=G-1 TO1 STEP-1 +5640 IFMID$(ZZ$,I,1)<>" " THENB=I:I=1 +5650 NEXTI +5660 IFB=0 THENG=0:RETURN 5670 ZZ$=LEFT$(ZZ$,B) -5680 Z$=" ":GOSUB 5420 -5690 IF G=0 THEN W$=ZZ$:G=1:RETURN +5680 Z$=" ":GOSUB5420 +5690 IFG=0 THENW$=ZZ$:G=1:RETURN 5700 W$=LEFT$(ZZ$,G-1):ZZ$=MID$(ZZ$,G,LEN(ZZ$)-G+1) -5710 GOSUB 5770 -5720 Z$=" ":GOSUB 5420 -5730 IF G=0 THEN X$=ZZ$:G=2:RETURN +5710 GOSUB5770 +5720 Z$=" ":GOSUB5420 +5730 IFG=0 THENX$=ZZ$:G=2:RETURN 5740 X$=LEFT$(ZZ$,G-1):ZZ$=MID$(ZZ$,G,LEN(ZZ$)-G+1) -5750 GOSUB 5770 +5750 GOSUB5770 5760 Y$=ZZ$:G=3:RETURN -5770 FOR I=1 TO B -5780 IF LEFT$(ZZ$,1)<>" " THEN I=B:GOTO 5800 +5770 FORI=1 TOB +5780 IFLEFT$(ZZ$,1)<>" " THENI=B:GOTO5800 5790 ZZ$=MID$(ZZ$,2,LEN(ZZ$)-1) -5800 NEXT I +5800 NEXTI 5810 RETURN 5820 TT=0:DW=0:L=1 -5830 IF LEN(ZZ$)=0 THEN TT=1:RETURN -5840 FOR I=LEN(ZZ$) TO 1 STEP -1 +5830 IFLEN(ZZ$)=0 THENTT=1:RETURN +5840 FORI=LEN(ZZ$) TO1 STEP-1 5850 D$=MID$(ZZ$,I,1) -5860 ON U GOSUB 5910,5940,5970 -5870 IF TT=1 THEN I=1:GOTO 5890 +5860 ONU GOSUB5910,5940,5970 +5870 IFTT=1 THENI=1:GOTO5890 5880 DW=DW+M*L:L=L*TS -5890 NEXT I +5890 NEXTI 5900 RETURN -5910 IF (D$<>"1") AND(D$<>"0") THEN TT=1:RETURN +5910 IF(D$<>"1") AND(D$<>"0") THENTT=1:RETURN 5920 M=VAL(D$) 5930 RETURN -5940 IF (D$<"0") OR(D$>"9") THEN TT=1:RETURN +5940 IF(D$<"0") OR(D$>"9") THENTT=1:RETURN 5950 M=VAL(D$) 5960 RETURN -5970 IF (D$>="0") AND(D$<="9") THEN 6000 -5980 IF (D$>="A") AND(D$<="F") THEN 6010 +5970 IF(D$>="0") AND(D$<="9") THEN6000 +5980 IF(D$>="A") AND(D$<="F") THEN6010 5990 TT=1:RETURN 6000 M=VAL(D$):RETURN 6010 M=ASC(D$)-ASC("A")+10 6020 RETURN -6030 U=0:IF LEN(ZZ$)<2 THEN TT=1:RETURN +6030 U=0:IFLEN(ZZ$)<2 THENTT=1:RETURN 6040 D$=RIGHT$(ZZ$,1):ZZ$=LEFT$(ZZ$,LEN(ZZ$)-1):TT=0 -6050 IF D$="B" THEN U=1:TS=2:RETURN -6060 IF D$="D" THEN U=2:TS=10:RETURN -6070 IF D$="H" THEN U=3:TS=16:RETURN +6050 IFD$="B" THENU=1:TS=2:RETURN +6060 IFD$="D" THENU=2:TS=10:RETURN +6070 IFD$="H" THENU=3:TS=16:RETURN 6080 TT=1:RETURN -6090 Z$=D$:DW=INT(AD/256):GOSUB 7290:R$=D$ -6100 DW=AD-DW*256:GOSUB 7290:R$=R$+D$:D$=Z$ +6090 Z$=D$:DW=INT(AD/256):GOSUB7290:R$=D$ +6100 DW=AD-DW*256:GOSUB7290:R$=R$+D$:D$=Z$ 6110 RETURN -6120 GOSUB 6030:D$="C" -6130 IF TT=0 THEN 6210 +6120 GOSUB6030:D$="C" +6130 IFTT=0 THEN6210 6140 W2$=W$:X2$=X$:Y2$=Y$:D$="L" -6150 FOR J=1 TO K-1 -6160 IF S(J)<3000 THEN 6190 -6170 ZZ$=PR$(J):GOSUB 5600 -6180 IF W$=X2$ THEN DW=S(J)-3000:J=K-1:TT=0:D$="C" -6190 NEXT J +6150 FORJ=1 TOK-1 +6160 IFS(J)<3000 THEN6190 +6170 ZZ$=PR$(J):GOSUB5600 +6180 IFW$=X2$ THENDW=S(J)-3000:J=K-1:TT=0:D$="C" +6190 NEXTJ 6200 W$=W2$:X$=X2$:Y$=Y2$:RETURN -6210 GOSUB 5820:RETURN -6220 ZZ$=X$:Z$=",":GOSUB 5420:TT=0 -6230 IF G<2 THEN TT=1:RETURN -6240 IF (LEN(X$)=G) THEN TT=1:RETURN +6210 GOSUB5820:RETURN +6220 ZZ$=X$:Z$=",":GOSUB5420:TT=0 +6230 IFG<2 THENTT=1:RETURN +6240 IF(LEN(X$)=G) THENTT=1:RETURN 6250 D$=LEFT$(X$,G-1):X3$=RIGHT$(X$,LEN(X$)-G) -6260 IF G=2 THEN 6290 -6270 IF (D$<>"SP") OR(Z=33) THEN TT=1:RETURN +6260 IFG=2 THEN6290 +6270 IF(D$<>"SP") OR(Z=33) THENTT=1:RETURN 6280 B$="31":RETURN -6290 IF (D$<"A") OR(D$>"M") THEN TT=1:RETURN +6290 IF(D$<"A") OR(D$>"M") THENTT=1:RETURN 6300 G=ASC(D$)-ASC("A")+1 -6310 IF Z=34 THEN G=G+13 -6320 IF G>21 THEN TT=1:RETURN +6310 IFZ=34 THENG=G+13 +6320 IFG>21 THENTT=1:RETURN 6330 ZZ$="3E060E161E0000260000002E360001001100000021" 6340 B$=MID$(ZZ$,G*2-1,2) -6350 IF B$="00" THEN TT=1 +6350 IFB$="00" THENTT=1 6360 RETURN -6370 HO=15:VE=0:GOSUB 110 -6380 GOSUB 110:PRINT "WACHTEN ! ":TT=0:BB=1 -6390 HO=29:VE=16:GOSUB 110:PRINT R$ -6400 DW=G:GOSUB 7290:HO=13:VE=11:GOSUB 110:PRINT D$;" " -6410 HO=24:VE=11:GOSUB 110 -6420 PRINT " ":GOSUB 110 -6430 IF (L1<>0) OR(L3<>6) THEN 6450 -6440 PRINT "MVI ";RI$(L2);",data8":GOTO 6630 -6450 IF (L1<>0) OR(L3<>1) OR(L5<>0) THEN 6480 -6460 PRINT "LXI ";:IF L4=3 THEN PRINT "SP,data16":GOTO 6630 -6470 PRINT RI$(L4*2);",data16":GOTO 6630 -6480 IF D$="D3" THEN PRINT "OUT poortnr.":GOTO 6630 -6490 IF D$="DB" THEN PRINT "IN poortnr.":GOTO 6630 -6500 RESTORE -6510 FOR I=1 TO 228 -6520 READ B$,ZZ$ -6530 IF ZZ$=D$ THEN J=I:I=240 -6540 NEXT I -6550 IF (I<230) OR(ZZ$="FF") THEN TT=1:GOTO 6630 -6560 IF J<23 THEN PRINT B$;" adres":GOTO 6630 -6570 IF J<33 THEN PRINT B$;" data8":GOTO 6630 -6580 IF J<62 THEN PRINT B$:GOTO 6630 -6590 IF (J<125) OR(J>132) THEN 6620 -6600 PRINT LEFT$(B$,4);" ";RIGHT$(B$,LEN(B$)-4) -6610 GOTO 6630 -6620 PRINT LEFT$(B$,3);" ";RIGHT$(B$,LEN(B$)-3) +6370 HO=15:VE=0:GOSUB110 +6380 GOSUB110:PRINT"WACHTEN ! ":TT=0:BB=1 +6390 HO=29:VE=16:GOSUB110:PRINTR$ +6400 DW=G:GOSUB7290:HO=13:VE=11:GOSUB110:PRINTD$;" " +6410 HO=24:VE=11:GOSUB110 +6420 PRINT" ":GOSUB110 +6430 IF(L1<>0) OR(L3<>6) THEN6450 +6440 PRINT"MVI ";RI$(L2);",data8":GOTO6630 +6450 IF(L1<>0) OR(L3<>1) OR(L5<>0) THEN6480 +6460 PRINT"LXI ";:IFL4=3 THENPRINT"SP,data16":GOTO6630 +6470 PRINTRI$(L4*2);",data16":GOTO6630 +6480 IFD$="D3" THENPRINT"OUT poortnr.":GOTO6630 +6490 IFD$="DB" THENPRINT"IN poortnr.":GOTO6630 +6500 RESTORE +6510 FORI=1 TO228 +6520 READB$,ZZ$ +6530 IFZZ$=D$ THENJ=I:I=240 +6540 NEXTI +6550 IF(I<230) OR(ZZ$="FF") THENTT=1:GOTO6630 +6560 IFJ<23 THENPRINTB$;" adres":GOTO6630 +6570 IFJ<33 THENPRINTB$;" data8":GOTO6630 +6580 IFJ<62 THENPRINTB$:GOTO6630 +6590 IF(J<125) OR(J>132) THEN6620 +6600 PRINTLEFT$(B$,4);" ";RIGHT$(B$,LEN(B$)-4) +6610 GOTO6630 +6620 PRINTLEFT$(B$,3);" ";RIGHT$(B$,LEN(B$)-3) 6630 RETURN -6640 IF TE=0 THEN TT=1:RETURN -6650 IF P=0 THEN TT=0:RETURN -6660 PRINT "FOUTEN VERWIJDEREN EN/OF VERTALEN !" +6640 IFTE=0 THENTT=1:RETURN +6650 IFP=0 THENTT=0:RETURN +6660 PRINT"FOUTEN VERWIJDEREN EN/OF VERTALEN !" 6670 TT=1:RETURN -6680 HO=4:VE=16:GOSUB 110:PRINT D$ -6690 HO=15:GOSUB 110:DW=RE(7):GOSUB 7290:PRINT D$ -6700 HO=27:VE=18:GOSUB 110:DW=RE(4):GOSUB 7290:PRINT D$ -6710 HO=34:GOSUB 110:DW=RE(5):GOSUB 7290:PRINT D$ -6720 VE=20:GOSUB 110:DW=RE(3):GOSUB 7290:PRINT D$ -6730 HO=27:GOSUB 110:DW=RE(2):GOSUB 7290:PRINT D$ -6740 VE=22:GOSUB 110:DW=RE(0):GOSUB 7290:PRINT D$ -6750 HO=34:GOSUB 110:DW=RE(1):GOSUB 7290:PRINT D$ -6760 HO=1:VE=23:GOSUB 110 -6770 SR=S:GOSUB 300:PRINT "S=";SR$; -6780 SR=Z:GOSUB 300:PRINT " Z=";SR$; -6790 SR=A:GOSUB 300:PRINT " A=";SR$; -6800 SR=P:GOSUB 300:PRINT " P=";SR$; -6810 SR=C:GOSUB 300:PRINT " C=";SR$;:GOSUB 5380:RETURN -6820 TT=1:IF IN$="1" THEN S=1-S:GOTO 6760 -6830 IF IN$="2" THEN Z=1-Z:GOTO 6760 -6840 IF IN$="3" THEN A=1-A:GOTO 6760 -6850 IF IN$="4" THEN P=1-P:GOTO 6760 -6860 IF IN$="5" THEN C=1-C:GOTO 6760 -6870 TT=0:IF (IN$<"A") OR(IN$>"H") THEN RETURN +6680 HO=4:VE=16:GOSUB110:PRINTD$ +6690 HO=15:GOSUB110:DW=RE(7):GOSUB7290:PRINTD$ +6700 HO=27:VE=18:GOSUB110:DW=RE(4):GOSUB7290:PRINTD$ +6710 HO=34:GOSUB110:DW=RE(5):GOSUB7290:PRINTD$ +6720 VE=20:GOSUB110:DW=RE(3):GOSUB7290:PRINTD$ +6730 HO=27:GOSUB110:DW=RE(2):GOSUB7290:PRINTD$ +6740 VE=22:GOSUB110:DW=RE(0):GOSUB7290:PRINTD$ +6750 HO=34:GOSUB110:DW=RE(1):GOSUB7290:PRINTD$ +6760 HO=1:VE=23:GOSUB110 +6770 SR=S:GOSUB300:PRINT"S=";SR$; +6780 SR=Z:GOSUB300:PRINT" Z=";SR$; +6790 SR=A:GOSUB300:PRINT" A=";SR$; +6800 SR=P:GOSUB300:PRINT" P=";SR$; +6810 SR=C:GOSUB300:PRINT" C=";SR$;:GOSUB5380:RETURN +6820 TT=1:IFIN$="1" THENS=1-S:GOTO6760 +6830 IFIN$="2" THENZ=1-Z:GOTO6760 +6840 IFIN$="3" THENA=1-A:GOTO6760 +6850 IFIN$="4" THENP=1-P:GOTO6760 +6860 IFIN$="5" THENC=1-C:GOTO6760 +6870 TT=0:IF(IN$<"A") OR(IN$>"H") THENRETURN 6880 A1=ASC(IN$)-ASC("A"):VE=A1+1:A1=2^A1 6890 G=INT(BI/A1):A2=INT(G/2)*2 -6900 IF G=A2 THEN BI=BI+A1:G=1:GOTO 6920 +6900 IFG=A2 THENBI=BI+A1:G=1:GOTO6920 6910 BI=BI-A1:G=0 -6920 HO=4:GOSUB 110 -6930 FOR J=1 TO 5 -6940 PRINT " ";:GOSUB 110 -6950 FOR A2=1 TO 50:NEXT A2 -6960 PRINT "-------->";:GOSUB 110 -6970 FOR A2=1 TO 50:NEXT A2 -6980 NEXT J:TT=1 -6990 SR=G:GOSUB 300 -7000 HO=16:GOSUB 110:PRINT SR$:RETURN -7010 HO=10:VE=0:GOSUB 110:DW=B1:GOSUB 7290 -7020 PRINT D$:D$="00":RETURN -7030 AD=PC:GOSUB 6090:HO=29:VE=16:GOSUB 110:PRINT R$:RETURN -7040 A1=BO:HO=33:VE=0:GOSUB 110:DW=B2 -7050 GOSUB 7290:PRINT D$:D$="00" -7060 FOR I=1 TO 8 +6920 HO=4:GOSUB110 +6930 FORJ=1 TO5 +6940 PRINT" ";:GOSUB110 +6950 FORA2=1 TO50:NEXTA2 +6960 PRINT"-------->";:GOSUB110 +6970 FORA2=1 TO50:NEXTA2 +6980 NEXTJ:TT=1 +6990 SR=G:GOSUB300 +7000 HO=16:GOSUB110:PRINTSR$:RETURN +7010 HO=10:VE=0:GOSUB110:DW=B1:GOSUB7290 +7020 PRINTD$:D$="00":RETURN +7030 AD=PC:GOSUB6090:HO=29:VE=16:GOSUB110:PRINTR$:RETURN +7040 A1=BO:HO=33:VE=0:GOSUB110:DW=B2 +7050 GOSUB7290:PRINTD$:D$="00" +7060 FORI=1 TO8 7070 G=A1-INT(A1/2)*2 -7080 SR=G:GOSUB 300 -7090 HO=22:VE=I:GOSUB 110:PRINT SR$ -7100 IF G=1 THEN GOSUB 250:GOSUB 7130 +7080 SR=G:GOSUB300 +7090 HO=22:VE=I:GOSUB110:PRINTSR$ +7100 IFG=1 THENGOSUB250:GOSUB7130 7110 A1=INT(A1/2) -7120 NEXT I:RETURN -7130 HO=26:VE=I:GOSUB 110 -7140 FOR J=1 TO 5 -7150 PRINT " ";:GOSUB 110 -7160 FOR A2=1 TO 50:NEXT A2 -7170 PRINT "-------->";:GOSUB 110 -7180 FOR A2=1 TO 50:NEXT A2 -7190 NEXT J:RETURN -7200 GOSUB 7290:HO=16:VE=11:GOSUB 110:PRINT D$ +7120 NEXTI:RETURN +7130 HO=26:VE=I:GOSUB110 +7140 FORJ=1 TO5 +7150 PRINT" ";:GOSUB110 +7160 FORA2=1 TO50:NEXTA2 +7170 PRINT"-------->";:GOSUB110 +7180 FORA2=1 TO50:NEXTA2 +7190 NEXTJ:RETURN +7200 GOSUB7290:HO=16:VE=11:GOSUB110:PRINTD$ 7210 D$="00":RETURN -7220 GOSUB 7290:HO=19:VE=11:GOSUB 110:PRINT D$ +7220 GOSUB7290:HO=19:VE=11:GOSUB110:PRINTD$ 7230 D$="00":RETURN 7240 A1=RE(8):C=A1-INT(A1/2)*2 7250 A1=INT(A1/4):P=A1-INT(A1/2)*2 @@ -629,153 +630,152 @@ 7270 A1=INT(A1/4):Z=A1-INT(A1/2)*2 7280 A1=INT(A1/2):S=A1-INT(A1/2)*2:RETURN 7290 SR=INT(DW/16):ZZ$="ABCDEF" -7300 IF SR<10 THEN GOSUB 300:D$=SR$:GOTO 7320 +7300 IFSR<10 THENGOSUB300:D$=SR$:GOTO7320 7310 D$=MID$(ZZ$,SR-9,1) 7320 SR=DW-SR*16 -7330 IF SR<10 THEN GOSUB 300:D$=D$+SR$:RETURN +7330 IFSR<10 THENGOSUB300:D$=D$+SR$:RETURN 7340 D$=D$+MID$(ZZ$,SR-9,1):RETURN -7350 HO=4:VE=0:GOSUB 110:PRINT "INPUT 00 "; -7360 PRINT "OUTPUT 00":ZZ$="--------":HO=0 -7370 FOR I=0 TO 7 -7380 SR=I:GOSUB 300 -7390 PRINT "B";SR$;" ";ZZ$;"> ( 0 ) ( 0 ) ";ZZ$;"> B";SR$ -7400 NEXT I -7410 VE=10:GOSUB 110 -7420 PRINT "INSTRUCTIE ";ZZ$;ZZ$;ZZ$;"----" -7430 PRINT " REGISTER *":HO=22:VE=11:GOSUB 110 -7440 PRINT "*":HO=38:GOSUB 110:PRINT "*" -7450 PRINT "+ DECODING ";ZZ$;ZZ$;ZZ$;"----" -7460 HO=3:VE=14:GOSUB 110:PRINT "AUX.":HO=14:GOSUB 110 -7470 PRINT "ACCU":HO=25:GOSUB 110:PRINT "PROGR. TELLER" -7480 HO=1:VE=15:GOSUB 110:PRINT ZZ$;" ";ZZ$ -7490 VE=17:GOSUB 110:PRINT ZZ$;" ";ZZ$ +7350 HO=4:VE=0:GOSUB110:PRINT"INPUT 00 "; +7360 PRINT"OUTPUT 00":ZZ$="--------":HO=0 +7370 FORI=0 TO7 +7380 SR=I:GOSUB300 +7390 PRINT"B";SR$;" ";ZZ$;"> ( 0 ) ( 0 ) ";ZZ$;"> B";SR$ +7400 NEXTI +7410 VE=10:GOSUB110 +7420 PRINT"INSTRUCTIE ";ZZ$;ZZ$;ZZ$;"----" +7430 PRINT" REGISTER *":HO=22:VE=11:GOSUB110 +7440 PRINT"*":HO=38:GOSUB110:PRINT"*" +7450 PRINT"+ DECODING ";ZZ$;ZZ$;ZZ$;"----" +7460 HO=3:VE=14:GOSUB110:PRINT"AUX.":HO=14:GOSUB110 +7470 PRINT"ACCU":HO=25:GOSUB110:PRINT"PROGR. TELLER" +7480 HO=1:VE=15:GOSUB110:PRINTZZ$;" ";ZZ$ +7490 VE=17:GOSUB110:PRINTZZ$;" ";ZZ$ 7500 HO=25:ZZ$=ZZ$+"-----" -7510 FOR I=15 TO 23 STEP 2 -7520 VE=I:GOSUB 110:PRINT ZZ$; -7530 NEXT I -7540 HO=1:VE=16:GOSUB 110:PRINT "*":HO=8:GOSUB 110:PRINT "*" -7550 HO=12:GOSUB 110:PRINT "*":HO=19:GOSUB 110:PRINT "*" -7560 HO=25:GOSUB 110:PRINT "*":HO=37:GOSUB 110:PRINT "*" -7570 HO=1:VE=18:GOSUB 110:PRINT "******** ******** H" -7580 PRINT " *":PRINT " *":PRINT " *" -7590 PRINT " *********** B" -7600 HO=9:VE=19:GOSUB 110:PRINT "* * *":VE=20:GOSUB 110 -7610 PRINT " * * D":VE=21:GOSUB 110 -7620 PRINT "ALU *":VE=18:HO=31:GOSUB 110:PRINT "* L" -7630 VE=20:GOSUB 110:PRINT "* E" -7640 VE=22:GOSUB 110:PRINT "* C" +7510 FORI=15 TO23 STEP2 +7520 VE=I:GOSUB110:PRINTZZ$; +7530 NEXTI +7540 HO=1:VE=16:GOSUB110:PRINT"*":HO=8:GOSUB110:PRINT"*" +7550 HO=12:GOSUB110:PRINT"*":HO=19:GOSUB110:PRINT"*" +7560 HO=25:GOSUB110:PRINT"*":HO=37:GOSUB110:PRINT"*" +7570 HO=1:VE=18:GOSUB110:PRINT"******** ******** H" +7580 PRINT" *":PRINT" *":PRINT" *" +7590 PRINT" *********** B" +7600 HO=9:VE=19:GOSUB110:PRINT"* * *":VE=20:GOSUB110 +7610 PRINT" * * D":VE=21:GOSUB110 +7620 PRINT"ALU *":VE=18:HO=31:GOSUB110:PRINT"* L" +7630 VE=20:GOSUB110:PRINT"* E" +7640 VE=22:GOSUB110:PRINT"* C" 7650 RETURN -7660 TT=0:IF (SP>W-1) OR(SP<2) THEN TT=1 +7660 TT=0:IF(SP>W-1) OR(SP<2) THENTT=1 7670 RETURN -7680 DW=GE(PC):GOSUB 7200:DW=GE(PC+1):GOSUB 7220:RETURN -7690 PRINT "MET DE TOETS S KUNT U" -7700 PRINT "SINGLE STEP STOPPEN" -7710 PRINT :PRINT "MET DE TOETS Z KUNT U TIJDENS" -7720 PRINT "SINGLE STEP EEN GEHEUGEN DUMP OPVRAGEN" -7730 PRINT :PRINT "GEBRUIK SPATIEBALK VOOR SINGLE STEP" -7740 HO=0:VE=20:GOSUB 110:PRINT ""; -7750 GOSUB 210:GOSUB 100:RETURN -7760 GOSUB 100:PRINT :PRINT "S = STOP":PRINT -7770 PRINT "SPATIEBALK = REGEL VOOR REGEL VERDER":PRINT -7780 PRINT :PRINT "VANAF WELK ADRES ?";:INPUT ZZ$ -7790 GOSUB 6030:IF (TT=1) OR(U=1) THEN 8010 -7800 GOSUB 5820:IF TT=1 THEN 8010 -7810 IF DW>W THEN 8010 -7820 GOSUB 100:G=DW+18 -7830 PRINT "ADRES DEC. HEX. BINAIR":PRINT -7840 FOR I=DW TO W -7850 IF U=3 THEN AD=I:GOSUB 6090 -7860 IF U<>2 THEN 7890 -7870 SR=I:GOSUB 300:R$=SR$ -7880 IF LEN(R$)<4 THEN R$="0"+R$:GOTO 7880 -7890 DW=GE(I):GOSUB 7290 -7900 SR=DW:GOSUB 300:S$=SR$ -7910 IF LEN(S$)<3 THEN S$="0"+S$:GOTO 7910 +7680 DW=GE(PC):GOSUB7200:DW=GE(PC+1):GOSUB7220:RETURN +7690 PRINT"MET DE TOETS S KUNT U" +7700 PRINT"SINGLE STEP STOPPEN" +7710 PRINT:PRINT"MET DE TOETS Z KUNT U TIJDENS" +7720 PRINT"SINGLE STEP EEN GEHEUGEN DUMP OPVRAGEN" +7730 PRINT:PRINT"GEBRUIK SPATIEBALK VOOR SINGLE STEP" +7740 HO=0:VE=20:GOSUB110:PRINT""; +7750 GOSUB210:GOSUB100:RETURN +7760 GOSUB100:PRINT:PRINT"S = STOP":PRINT +7770 PRINT"SPATIEBALK = REGEL VOOR REGEL VERDER":PRINT +7780 PRINT:PRINT"VANAF WELK ADRES ?";:INPUTZZ$ +7790 GOSUB6030:IF(TT=1) OR(U=1) THEN8010 +7800 GOSUB5820:IFTT=1 THEN8010 +7810 IFDW>W THEN8010 +7820 GOSUB100:G=DW+18 +7830 PRINT"ADRES DEC. HEX. BINAIR":PRINT +7840 FORI=DW TOW +7850 IFU=3 THENAD=I:GOSUB6090 +7860 IFU<>2 THEN7890 +7870 SR=I:GOSUB300:R$=SR$ +7880 IFLEN(R$)<4 THENR$="0"+R$:GOTO7880 +7890 DW=GE(I):GOSUB7290 +7900 SR=DW:GOSUB300:S$=SR$ +7910 IFLEN(S$)<3 THENS$="0"+S$:GOTO7910 7920 Z$="" -7930 FOR J=1 TO 8 -7940 SR=DW-INT(DW/2)*2:GOSUB 300 +7930 FORJ=1 TO8 +7940 SR=DW-INT(DW/2)*2:GOSUB300 7950 Z$=SR$+Z$:DW=INT(DW/2) -7960 NEXT J -7970 IF I>G THEN GOSUB 210:IF IN$="S" THEN I=W+5 -7980 PRINT R$;" ";S$;" ";D$;" ";Z$ -7990 NEXT I -8000 IF I<(W+5) THEN GOSUB 210 -8010 GOSUB 100:PRINT :PRINT :IF SS=1 THEN GOSUB 7350 +7960 NEXTJ +7970 IFI>G THENGOSUB210:IFIN$="S" THENI=W+5 +7980 PRINTR$;" ";S$;" ";D$;" ";Z$ +7990 NEXTI +8000 IFI<(W+5) THENGOSUB210 +8010 GOSUB100:PRINT:PRINT:IFSS=1 THENGOSUB7350 8020 RETURN -8030 PRINT "8085-SIMULATOR" -8040 PRINT "KLAAR VOOR INVOER":PRINT :PRINT :RETURN -8050 PRINT "**FOUT IN REGEL ";K;"**":S(K)=2700:P=P+1:RETURN -8060 PRINT :PRINT "OPDRACHT IN REGEL ";K -8070 PRINT "IS NIET TOEGESTAAN":PRINT :P=P+1:S(K)=2700:RETURN -8080 K=TE+2:PRINT "ADRES TE HOOG":RETURN -8090 PRINT "LABEL FOUT IN REGEL ";K:P=P+1:RETURN -25000 DATA "LDA","3A","LHLD","2A","STA","32","SHLD","22" -25010 DATA "JMP","C3","JNZ","C2","JZ","CA","JNC","D2" -25020 DATA "JC","DA","JPO","E2","JPE","EA","JP","F2" -25030 DATA "JM","FA","CALL","CD","CNZ","C4","CZ","CC" -25040 DATA "CNC","D4","CC","DC","CPO","E4","CPE","EC" -25050 DATA "CP","F4","CM","FC" -25060 DATA "OUT","D3","IN","DB","ANI","E6","ORI","F6" -25070 DATA "XRI","EE","CPI","FE","ADI","C6","ACI","CE" -25080 DATA "SUI","D6","SBI","DE","MVI","FF","LXI","FF" -25090 DATA "SIM","FF","RIM","FF","EI","FF","DI","FF" -25100 DATA "SPHL","F9","XTHL","E3","XCHG","EB","CMA","2F" -25110 DATA "RLC","07","RRC","0F","RAL","17","RAR","1F" -25120 DATA "PCHL","E9","RET","C9","RNZ","C0","RZ","C8" -25130 DATA "RNC","D0","RC","D8","RPO","E0","RPE","E8" -25140 DATA "RP","F0","RM","F8","DAA","27","STC","37" -25150 DATA "CMC","3F","NOP","00","HLT","76" -25160 DATA "MOVA,A","7F","MOVA,B","78","MOVA,C","79" -25170 DATA "MOVA,D","7A","MOVA,E","7B","MOVA,H","7C" -25180 DATA "MOVA,L","7D","MOVB,A","47","MOVB,B","40" -25190 DATA "MOVB,C","41","MOVB,D","42","MOVB,E","43" -25200 DATA "MOVB,H","44","MOVB,L","45","MOVC,A","4F" -25210 DATA "MOVC,B","48","MOVC,C","49","MOVC,D","4A" -25220 DATA "MOVC,E","4B","MOVC,H","4C","MOVC,L","4D" -25230 DATA "MOVD,A","57","MOVD,B","50","MOVD,C","51" -25240 DATA "MOVD,D","52","MOVD,E","53","MOVD,H","54" -25250 DATA "MOVD,L","55","MOVE,A","5F","MOVE,B","58" -25260 DATA "MOVE,C","59","MOVE,D","5A","MOVE,E","5B" -25270 DATA "MOVE,H","5C","MOVE,L","5D","MOVH,A","67" -25280 DATA "MOVH,B","60","MOVH,C","61","MOVH,D","62" -25290 DATA "MOVH,E","63","MOVH,H","64","MOVH,L","65" -25300 DATA "MOVL,A","6F","MOVL,B","68","MOVL,C","69" -25310 DATA "MOVL,D","6A","MOVL,E","6B","MOVL,H","6C" -25320 DATA "MOVL,L","6D","MOVA,M","7E","MOVB,M","46" -25330 DATA "MOVC,M","4E","MOVD,M","56","MOVE,M","5E" -25340 DATA "MOVH,M","66","MOVL,M","6E","MOVM,A","77" -25350 DATA "MOVM,B","70","MOVM,C","71","MOVM,D","72" -25360 DATA "MOVM,E","73","MOVM,H","74","MOVM,L","75" -25370 DATA "LDAXB","0A","LDAXD","1A","STAXB","02","STAXD" -25380 DATA "12","PUSHPSW","F5","PUSHB","C5","PUSHD","D5" -25390 DATA "PUSHH","E5","POPPSW","F1","POPB","C1","POPD","D1" -25400 DATA "POPH","E1","ANAA","A7","ANAB","A0","ANAC","A1" -25410 DATA "ANAD","A2","ANAE","A3","ANAH","A4","ANAL","A5" -25420 DATA "ANAM","A6","ORAA","B7","ORAB","B0","ORAC","B1" -25430 DATA "ORAD","B2","ORAE","B3","ORAH","B4","ORAL","B5" -25440 DATA "ORAM","B6","XRAA","AF","XRAB","A8","XRAC","A9" -25450 DATA "XRAD","AA","XRAE","AB","XRAH","AC","XRAL","AD" -25460 DATA "XRAM","AE","CMPA","BF","CMPB","B8","CMPC","B9" -25470 DATA "CMPD","BA","CMPE","BB","CMPH","BC","CMPL","BD" -25480 DATA "CMPM","BE","ADDA","87","ADDB","80","ADDC","81" -25490 DATA "ADDD","82","ADDE","83","ADDH","84","ADDL","85" -25500 DATA "ADDM","86","ADCA","8F","ADCB","88","ADCC","89" -25510 DATA "ADCD","8A","ADCE","8B","ADCH","8C","ADCL","8D" -25520 DATA "ADCM","8E","SUBA","97","SUBB","90","SUBC","91" -25530 DATA "SUBD","92","SUBE","93","SUBH","94","SUBL","95" -25540 DATA "SUBM","96","SBBA","9F","SBBB","98","SBBC","99" -25550 DATA "SBBD","9A","SBBE","9B","SBBH","9C","SBBL","9D" -25560 DATA "SBBM","9E","INRA","3C","INRB","04","INRC","0C" -25570 DATA "INRD","14","INRE","1C","INRH","24","INRL","2C" -25580 DATA "INRM","34","DCRA","3D","DCRB","05","DCRC","0D" -25590 DATA "DCRD","15","DCRE","1D","DCRH","25","DCRL","2D" -25600 DATA "DCRM","35","DADB","09","DADD","19","DADH","29" -25610 DATA "DADSP","39","DCXB","0B","DCXD","1B","DCXH","2B" -25620 DATA "DCXSP","3B","INXB","03","INXD","13","INXH","23" -25630 DATA "INXSP","33" -25640 REM +8030 PRINT"8085-SIMULATOR" +8040 PRINT"KLAAR VOOR INVOER":PRINT:PRINT:RETURN +8050 PRINT"**FOUT IN REGEL ";K;"**":S(K)=2700:P=P+1:RETURN +8060 PRINT:PRINT"OPDRACHT IN REGEL ";K +8070 PRINT"IS NIET TOEGESTAAN":PRINT:P=P+1:S(K)=2700:RETURN +8080 K=TE+2:PRINT"ADRES TE HOOG":RETURN +8090 PRINT"LABEL FOUT IN REGEL ";K:P=P+1:RETURN +25000 DATA"LDA","3A","LHLD","2A","STA","32","SHLD","22" +25010 DATA"JMP","C3","JNZ","C2","JZ","CA","JNC","D2" +25020 DATA"JC","DA","JPO","E2","JPE","EA","JP","F2" +25030 DATA"JM","FA","CALL","CD","CNZ","C4","CZ","CC" +25040 DATA"CNC","D4","CC","DC","CPO","E4","CPE","EC" +25050 DATA"CP","F4","CM","FC" +25060 DATA"OUT","D3","IN","DB","ANI","E6","ORI","F6" +25070 DATA"XRI","EE","CPI","FE","ADI","C6","ACI","CE" +25080 DATA"SUI","D6","SBI","DE","MVI","FF","LXI","FF" +25090 DATA"SIM","FF","RIM","FF","EI","FF","DI","FF" +25100 DATA"SPHL","F9","XTHL","E3","XCHG","EB","CMA","2F" +25110 DATA"RLC","07","RRC","0F","RAL","17","RAR","1F" +25120 DATA"PCHL","E9","RET","C9","RNZ","C0","RZ","C8" +25130 DATA"RNC","D0","RC","D8","RPO","E0","RPE","E8" +25140 DATA"RP","F0","RM","F8","DAA","27","STC","37" +25150 DATA"CMC","3F","NOP","00","HLT","76" +25160 DATA"MOVA,A","7F","MOVA,B","78","MOVA,C","79" +25170 DATA"MOVA,D","7A","MOVA,E","7B","MOVA,H","7C" +25180 DATA"MOVA,L","7D","MOVB,A","47","MOVB,B","40" +25190 DATA"MOVB,C","41","MOVB,D","42","MOVB,E","43" +25200 DATA"MOVB,H","44","MOVB,L","45","MOVC,A","4F" +25210 DATA"MOVC,B","48","MOVC,C","49","MOVC,D","4A" +25220 DATA"MOVC,E","4B","MOVC,H","4C","MOVC,L","4D" +25230 DATA"MOVD,A","57","MOVD,B","50","MOVD,C","51" +25240 DATA"MOVD,D","52","MOVD,E","53","MOVD,H","54" +25250 DATA"MOVD,L","55","MOVE,A","5F","MOVE,B","58" +25260 DATA"MOVE,C","59","MOVE,D","5A","MOVE,E","5B" +25270 DATA"MOVE,H","5C","MOVE,L","5D","MOVH,A","67" +25280 DATA"MOVH,B","60","MOVH,C","61","MOVH,D","62" +25290 DATA"MOVH,E","63","MOVH,H","64","MOVH,L","65" +25300 DATA"MOVL,A","6F","MOVL,B","68","MOVL,C","69" +25310 DATA"MOVL,D","6A","MOVL,E","6B","MOVL,H","6C" +25320 DATA"MOVL,L","6D","MOVA,M","7E","MOVB,M","46" +25330 DATA"MOVC,M","4E","MOVD,M","56","MOVE,M","5E" +25340 DATA"MOVH,M","66","MOVL,M","6E","MOVM,A","77" +25350 DATA"MOVM,B","70","MOVM,C","71","MOVM,D","72" +25360 DATA"MOVM,E","73","MOVM,H","74","MOVM,L","75" +25370 DATA"LDAXB","0A","LDAXD","1A","STAXB","02","STAXD" +25380 DATA"12","PUSHPSW","F5","PUSHB","C5","PUSHD","D5" +25390 DATA"PUSHH","E5","POPPSW","F1","POPB","C1","POPD","D1" +25400 DATA"POPH","E1","ANAA","A7","ANAB","A0","ANAC","A1" +25410 DATA"ANAD","A2","ANAE","A3","ANAH","A4","ANAL","A5" +25420 DATA"ANAM","A6","ORAA","B7","ORAB","B0","ORAC","B1" +25430 DATA"ORAD","B2","ORAE","B3","ORAH","B4","ORAL","B5" +25440 DATA"ORAM","B6","XRAA","AF","XRAB","A8","XRAC","A9" +25450 DATA"XRAD","AA","XRAE","AB","XRAH","AC","XRAL","AD" +25460 DATA"XRAM","AE","CMPA","BF","CMPB","B8","CMPC","B9" +25470 DATA"CMPD","BA","CMPE","BB","CMPH","BC","CMPL","BD" +25480 DATA"CMPM","BE","ADDA","87","ADDB","80","ADDC","81" +25490 DATA"ADDD","82","ADDE","83","ADDH","84","ADDL","85" +25500 DATA"ADDM","86","ADCA","8F","ADCB","88","ADCC","89" +25510 DATA"ADCD","8A","ADCE","8B","ADCH","8C","ADCL","8D" +25520 DATA"ADCM","8E","SUBA","97","SUBB","90","SUBC","91" +25530 DATA"SUBD","92","SUBE","93","SUBH","94","SUBL","95" +25540 DATA"SUBM","96","SBBA","9F","SBBB","98","SBBC","99" +25550 DATA"SBBD","9A","SBBE","9B","SBBH","9C","SBBL","9D" +25560 DATA"SBBM","9E","INRA","3C","INRB","04","INRC","0C" +25570 DATA"INRD","14","INRE","1C","INRH","24","INRL","2C" +25580 DATA"INRM","34","DCRA","3D","DCRB","05","DCRC","0D" +25590 DATA"DCRD","15","DCRE","1D","DCRH","25","DCRL","2D" +25600 DATA"DCRM","35","DADB","09","DADD","19","DADH","29" +25610 DATA"DADSP","39","DCXB","0B","DCXD","1B","DCXH","2B" +25620 DATA"DCXSP","3B","INXB","03","INXD","13","INXH","23" +25630 DATA"INXSP","33" +25640 REM 25650 REM A COMMEREN 25660 REM WEIDE 120 25670 REM 5103 HZ DONGEN 30000 REM COPYRIGHT NOS HILVERSUM - \ No newline at end of file