forked from robhagemans/basicode
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathB18_Quiz.bc3
More file actions
187 lines (186 loc) · 5.75 KB
/
Copy pathB18_Quiz.bc3
File metadata and controls
187 lines (186 loc) · 5.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
1000 A=500:GOTO20:REM " Q U I Z "
1010 GOSUB100
1020 HO=8:VE=1:GOSUB110:PRINT"EVEN GEDULD";
1030 DIMA(10),B(11),C$(10),D$(10),E$(10),F$(11)
1040 REM --- DATA tellen ---
1050 RESTORE:T=0
1060 READA$:IFA$<>"*" THENT=T+1:GOTO1060
1070 RESTORE
1080 REM === HOOFDPROGRAMMA ===
1090 GD=0:HO=8:VE=1:GOSUB110:PRINT"EVEN GEDULD";
1100 REM --- B() vullen met 1-10---
1110 FORN=1 TO10:B(N)=N:NEXTN
1120 REM --- B() "geschud" naar A()--
1130 FORN=1 TO9:GOSUB260:X=INT(1+RV*(11-N)):A(N)=B(X)
1140 FORD=X TO10:B(D)=B(D+1):NEXTD
1150 NEXTN:A(10)=B(1)
1160 REM --- titel lezen ---
1170 READT$:P=P+1
1180 REM ---10 paren DATA inlezen ---
1190 FORN=1 TO10:READA$:READB$:P=P+2
1200 C$(A(N))=A$:E$(A(N))=B$:F$(A(N))=B$:NEXTN
1210 REM --- F$()"geschud"naar D$()---
1220 FORN=1 TO9:GOSUB260:X=INT(1+RV*(11-N)):D$(N)=F$(X)
1230 FORD=X TO10:F$(D)=F$(D+1):NEXTD
1240 NEXTN:D$(10)=F$(1)
1250 GOSUB110:PRINTT$;" "
1260 REM --- C$ en D$ op het scherm---
1270 FORN=1 TO10
1280 HO=1:VE=N+3:GOSUB110:PRINTCHR$(ASC("A")+N-1);" ";C$(N);
1290 SR=N:GOSUB300:IFSR$="10" THENSR$="0"
1300 PRINTTAB(20);SR$;" ";D$(N)
1310 NEXTN
1320 HO=1:VE=18:GOSUB110:PRINT"Wat hoort bij elkaar?"
1330 FORX=1 TO10
1340 HO=1:VE=20:GOSUB110
1350 PRINTCHR$(ASC("A")+X-1);" hoort bij nr: ";
1360 REM --- antwoorden innemen ---
1370 GOSUB210:IF(IN<48)OR(IN>57) THEN1370
1380 PRINTIN$:N=IN-48:IFN=0 THENN=10
1390 REM --- antwoord toetsen aan E$()
1400 HO=1:VE=X+3:GOSUB110
1410 IFE$(X)=D$(N) THENGD=GD+1:PRINT"+":GOTO1430
1420 PRINT"-"
1430 HO=18:VE=20:GOSUB110:GOSUB1640
1440 HO=1:VE=20:GOSUB110:PRINT" "
1450 GOSUB1640
1460 NEXTX
1470 REM --- de uitslag ---
1480 HO=1:VE=18:GOSUB110
1490 PRINT"Je hebt er ";GD;" van de 10 goed."
1500 HO=1:VE=20:GOSUB110:IFGD=10 THENPRINT"GOED GEDAAN!"
1510 IFGD<10 THENPRINT"Kijk maar hierboven."
1520 FORX=1 TO10:HO=20:VE=X+3:GOSUB110
1530 PRINT" ";LEFT$(E$(X)+" ",16)
1540 NEXTX
1550 HO=1:VE=22:GOSUB110
1560 PRINT"WIL JE NOG EEN KEER?";
1570 GOSUB210:IF(IN$="N")OR(IN$="n") THEN GOSUB100:GOTO950
1580 IF(IN$<>"J")AND(IN$<>"j") THEN1570
1590 GOSUB100
1600 IFP=T THENP=0:RESTORE
1610 GOTO1090
1620 GOTO950
1630 REM === ANTWOORD WACHTROUTINE ===
1640 SP=0:SV=0:SD=10:GOSUB400
1650 RETURN
25000 REM------------------
25010 DATA"RADIOPROGRAMMA'S"
25020 DATA"NIEUWS","NOS"
25030 DATA"BASICODE-3","TROS"
25040 DATA"HIER EN NU","NCRV"
25050 DATA"TIJDSEIN","EO"
25060 DATA"ECHO","KRO"
25070 DATA"VROEGE VOGELS","VARA"
25080 DATA"STRAUSS & CO","VOO"
25090 DATA"WILDE GANZEN","IKON"
25100 DATA"PRONTO","TELEAC"
25110 DATA"HET GEBOUW","VPRO"
25120 REM-----------------
25130 DATA"AARDRIJKSKUNDE"
25140 DATA"BELGIE","BRUSSEL"
25150 DATA"FINLAND","HELSINKI"
25160 DATA"ITALIE","ROME"
25170 DATA"GRIEKENLAND","ATHENE"
25180 DATA"INDONESIE","JAKARTA"
25190 DATA"SPANJE","MADRID"
25200 DATA"DENEMARKEN","KOPENHAGEN"
25210 DATA"IJSLAND","REYKJAVIK"
25220 DATA"JAPAN","TOKIO"
25230 DATA"HONGARIJE","BOEDAPEST"
25240 REM------------------
25250 DATA"GRONDSTOFFEN"
25260 DATA"GERST","BIER"
25270 DATA"MELK","BOTER"
25280 DATA"KLEI","AARDEWERK"
25290 DATA"AARDOLIE","PLASTICS"
25300 DATA"DRUIVEN","WIJN"
25310 DATA"BIETEN","SUIKER"
25320 DATA"VLAS","LINNEN"
25330 DATA"BAUXIET","ALUMINIUM"
25340 DATA"LATEX","RUBBER"
25350 DATA"HOUT","PAPIER"
25360 REM-------------------
25370 DATA"TECHNIEK"
25380 DATA"SCHROEF","MOER"
25390 DATA"VIJL","AREND"
25400 DATA"COMPUTER","PROGRAMMA"
25410 DATA"COMPRESSOR","MANOMETER"
25420 DATA"METAALBOOR","CENTERPONS"
25430 DATA"VERFKWAST","TAKELING"
25440 DATA"SLEUTEL","BAARD"
25450 DATA"ACCU","ZUURWEGER"
25460 DATA"DEURSLOT","NACHTSCHOOT"
25470 DATA"SCHAKELAAR","KONTAKT"
25480 REM------------------
25490 DATA"DIEREN"
25500 DATA"OLIFANT","SLURF"
25510 DATA"KANGOEROE","BUIDEL"
25520 DATA"KOE","HORENS"
25530 DATA"VIS","VINNEN"
25540 DATA"WESP","ANGEL"
25550 DATA"KREEFT","SCHAREN"
25560 DATA"WALVIS","BALEINEN"
25570 DATA"SLAK","HUISJE"
25580 DATA"SPIN","WEB"
25590 DATA"HERT","GEWEI"
25600 REM------------------
25610 DATA"UITDRUKKINGEN"
25620 DATA"KOMMER","KWEL"
25630 DATA"VALLEN","OPSTAAN"
25640 DATA"HALEN","BRENGEN"
25650 DATA"MAKEN","BREKEN"
25660 DATA"REGEN","DRUP"
25670 DATA"GEVEN","NEMEN"
25680 DATA"JAN RAP","ZIJN MAAT"
25690 DATA"BOTER","VIS"
25700 DATA"EIEREN","GELD"
25710 DATA"PEPER","ZOUT"
25720 REM-----------------
25730 DATA"SPROOKJES"
25740 DATA"ROODKAPJE","WOLF"
25750 DATA"SNEEUWWITJE","DWERGEN"
25760 DATA"ALI BABA","ROVERS"
25770 DATA"HANS","GRIETJE"
25780 DATA"KLEIN DUIMPJE","REUS"
25790 DATA"KREKEL","MIER"
25800 DATA"DOORNROOSJE","SPINNEWIEL"
25810 DATA"HAAS","SCHILDPAD"
25820 DATA"VOS","RAAF"
25830 DATA"GEEST","FLES"
29999 DATA"*"
30000 REM Elk blok DATA bestaat uit een
30010 REM TITEL + 10 PAREN WOORDEN.
30020 REM Het aantal blokken is vrij
30030 REM
30040 REM NA HET LAATSTE DATA-BLOK HET
30050 REM SLUITTEKEN "*" PLAATSEN.
30060 REM
30070 REM Het programma leest telkens
30080 REM een TITEL + 10 opeenvolgende
30090 REM woordparen, de woordparen
30100 REM in "geschudde" volgorde.
30110 REM
30120 REM De tweede kolom woorden wordt
30130 REM nogmaals "geschud" voor de
30140 REM afdruk op het scherm maar het
30150 REM origineel van deze kolom
30160 REM wordt bewaard voor de
30170 REM beoordeling van de gegeven
30180 REM antwoorden en voor de uitslag.
30190 REM
30200 REM Door het "schudden" is de
30210 REM volgorde steeds weer anders.
30220 REM Toepassingen o.a. landen en
30230 REM hoofdsteden, jaartallen, en
30240 REM alles wat paarsgewijs bij
30250 REM elkaar hoort.
30260 REM=============================
32000 REM GEMAAKT OP EEN BBC COMPUTER
32010 REM DOOR
32020 REM Ch.W.Brederode
32030 REM Von Bonninghausenlaan 33
32040 REM 2161 ES LISSE
32050 REM
32060 REM TROS-RADIO dd 880921
32070 REM incl.corr. dd 881014