RosettaCodeData/Task/Associative-array-Merging/GW-BASIC/associative-array-merging.b...

33 lines
731 B
Plaintext

100 CLS
110 DIM O$(3,2)
120 O$(0,0) = "name"
130 O$(0,1) = "Rocket Skates"
140 O$(1,0) = "price"
150 O$(1,1) = "12.75"
160 O$(2,0) = "color"
170 O$(2,1) = "yellow"
180 DIM U$(3,2)
190 U$(0,0) = "price"
200 U$(0,1) = "15.25"
210 U$(1,0) = "color"
220 U$(1,1) = "red"
230 U$(2,0) = "year"
240 U$(2,1) = "1974"
250 DIM M$(6,2)
270 FOR I = 0 TO 2
280 M$(I,0) = U$(I,0)
290 M$(I,1) = U$(I,1)
300 NEXT I
320 INDEX = 3
330 FOR I = 0 TO 2
340 FOUND = 0
350 FOR J = 0 TO 2
360 IF O$(I,0) = U$(J,0) THEN FOUND = 1 : GOTO 370
370 NEXT J
380 IF FOUND = 0 THEN M$(INDEX,0) = O$(I,0) : M$(INDEX,1) = O$(I,1) : INDEX = INDEX+1
390 NEXT I
410 FOR I = 0 TO INDEX-1
420 PRINT "key: ";M$(I,0);", value: ";M$(I,1)
430 NEXT I
440 END