10 REM * * * * A M O B A * * * * 20 CLS 30 LOCATE 20, 1: PRINT "Mozg s:NumLock+hely“r" 40 LOCATE 21, 1: PRINT "Ezeket l‚phetem:sz¢k”z" 50 LOCATE 22, 1: PRINT "L‚p‚sv logat s v‚ge: *" 60 LOCATE 23, 1: PRINT "Befulladtam: x" 70 LOCATE 1, 1: PRINT "V‚rre megy?(i)" 80 z$ = INKEY$: IF z$ = "" THEN 80 90 IF z$ = "i" OR z$ = "I" THEN jat = 1 100 LOCATE 1, 1: PRINT " " 110 REM 120 DIM c$(15, 15) 130 DIM a$(15) 140 DIM b$(15) 150 DIM a(15) 160 DIM k(100) 170 DIM r(100) 180 DIM u$(100) 190 DIM f1(15, 15) 200 DIM f2(15, 15) 210 DIM el$(100, 20) 220 n = 1: k(1) = 1: r(1) = 1 230 c(1) = -1: c(4) = -1: c(7) = -1: c(3) = 1: c(6) = 1: c(9) = 1 240 d(1) = -1: d(2) = -1: d(3) = -1: d(7) = 1: d(8) = 1: d(9) = 1 250 d = 50: E = 1 260 c0$(0) = "°°": c0$(1) = "²²" 270 most$ = "><": majd$ = "()" 280 x = 8: y = 8 290 FOR i = 1 TO 15: FOR j = 1 TO 15 300 t = 2 * ((i + j) / 2 - INT((i + j) / 2)) 310 c$(i, j) = c0$(t) 320 NEXT: NEXT 330 REM 340 LOCATE 1, 45: PRINT " >< ()" 350 FOR t = 1 TO 22 360 LOCATE t + 1, 42 - LEN(STR$(t)): PRINT t; ".³ ³ ³" 370 NEXT t 380 LOCATE 21, 28: PRINT "ÉÍÍÍÍÍ»" 390 LOCATE 22, 28: PRINT "º º" 400 LOCATE 23, 28: PRINT "ÈÍÍÍÍͼ" 410 REM 420 FOR i = 97 TO 111 430 a$(i - 96) = CHR$(i): a(ASC(a$(i - 96)) - 96) = i - 96 440 NEXT i 450 FOR i = 1 TO 15 460 b$(i) = STR$(i) 470 NEXT i 480 REM 490 LOCATE 2, 4: PRINT "É" 500 FOR x1 = 5 TO 34 510 LOCATE 2, x1: PRINT "Í": LOCATE 1, x1: PRINT a$(INT(x1 - 4) / 2) 520 NEXT x1 530 LOCATE 2, 35: PRINT "»" 540 FOR x2 = 3 TO 17 550 LOCATE x2, 35: PRINT "º": LOCATE x2, 36: PRINT b$(18 - x2) 560 NEXT x2 570 LOCATE 18, 35: PRINT "¼" 580 FOR x3 = 34 TO 5 STEP -1 590 LOCATE 18, x3: PRINT "Í": LOCATE 19, x3: PRINT a$(INT((x3 - 4) / 2 + .5)) 600 NEXT x3 610 LOCATE 18, 4: PRINT "È" 620 FOR x4 = 17 TO 3 STEP -1 630 LOCATE x4, 4: PRINT "º": LOCATE x4, 1: PRINT b$(18 - x4) 640 NEXT x4 650 FOR i = 1 TO 15: FOR j = 1 TO 15 660 LOCATE 18 - j, i * 2 + 3: PRINT c$(i, j) 670 NEXT: NEXT 680 REM 690 k$ = c$(x, y) 700 REM ********************** l‚p‚s ************************** 710 LOCATE 18 - y, x * 2 + 3: PRINT k$ 720 FOR h = 1 TO 20 730 f$ = INKEY$: f = VAL(f$) 740 IF f = 0 THEN 810 750 LOCATE 18 - y, 3 + 2 * x: PRINT c$(x, y) 760 x = x + c(f): y = y + d(f) 770 IF x = 16 THEN x = 1 780 IF x = 0 THEN x = 15 790 IF y = 16 THEN y = 1 800 IF y = 0 THEN y = 15 810 IF f$ <> " " THEN 840 820 IF f1(x, y) = 1 OR f2(x, y) = 1 THEN BEEP: GOTO 860 830 el$(n, k(n)) = a$(x) + STR$(y): f1(x, y) = 1: k(n) = k(n) + 1: GOTO 860 840 IF f$ = "*" AND k(n) > 1 THEN u$(n) = el$(n, 1): LOCATE 18 - y, x * 2 + 3: PRINT c$(x, y): r(n) = 1: GOTO 910 850 IF f$ = "x" OR f$ = "X" THEN LOCATE 18 - y, x * 2 + 3: PRINT c$(x, y): GOTO 1080 860 NEXT h 870 LOCATE 22, 30: PRINT a$(x); RIGHT$(STR$(y), 2) 880 IF k$ = "ÛÛ" THEN k$ = c$(x, y): GOTO 700 890 k$ = "ÛÛ": GOTO 700 900 REM 910 REM ******************** beiktat s **************************** 920 FOR h = 1 TO k(n) - 1 930 u = a(ASC(LEFT$(el$(n, h), 1)) - 96): v = VAL(RIGHT$(el$(n, h), 2)) 940 f1(u, v) = 0 950 NEXT h 960 REM 970 x = a(ASC(LEFT$(u$(n), 1)) - 96): y = VAL(RIGHT$(u$(n), 2)) 980 c$(x, y) = most$: f2(x, y) = 1 990 LOCATE 18 - y, x * 2 + 3: PRINT most$ 1000 REM 1010 IF most$ = "><" THEN d = 50: E = E + 1 1020 IF most$ = "()" THEN d = 60 1030 LOCATE E, d: PRINT u$(n) 1040 x$ = most$: most$ = majd$: majd$ = x$ 1050 n = n + 1: k(n) = 1: r(n) = 1 1060 GOTO 690 1070 REM 1080 REM ********************** visszal‚p‚s ************************* 1090 IF n = 1 AND jat = 0 THEN LOCATE 23, 50: PRINT "Elemz‚s v‚ge!": END 1100 IF jat = 0 THEN n = n - 1: GOTO 1210 1110 IF n = 1 AND c = 0 THEN LOCATE 23, 50: PRINT ">< elbukta!": END 1120 IF n = 2 AND c = 0 AND r(2) = k(2) - 1 THEN LOCATE 23, 50: PRINT "() elbukta!": END 1130 IF n = 2 AND c = 1 AND r(1) = k(1) - 1 THEN LOCATE 23, 50: PRINT ">< elbukta!": END 1140 n = n - 1 1150 IF c = 1 THEN 1210 1160 FOR O = 1 TO k(n) - 1 1170 el$(n, O) = "" 1180 NEXT O 1190 k(n) = 1: r(n) = 1 1200 REM 1210 X0 = a(ASC(LEFT$(u$(n), 1)) - 96): Y0 = VAL(RIGHT$(u$(n), 2)) 1220 f2(X0, Y0) = 0 1230 k = 2 * ((X0 + Y0) / 2 - INT((X0 + Y0) / 2)) 1240 c$(X0, Y0) = c0$(k) 1250 LOCATE 18 - Y0, 3 + 2 * X0: PRINT c0$(k) 1260 u$(n) = "" 1270 IF most$ = "><" THEN d = 60 1280 IF most$ = "()" THEN d = 50 1290 LOCATE E, d: PRINT " " 1300 x$ = most$: most$ = majd$: majd$ = x$ 1310 IF most$ = "><" THEN E = E - 1 1320 IF c = 1 THEN c = 0: GOTO 1340 1330 IF jat = 1 THEN c = 1: GOTO 1080 1340 IF r(n) < k(n) - 1 THEN r(n) = r(n) + 1: u$(n) = el$(n, r(n)): GOTO 910 1350 IF r(n) = k(n) - 1 THEN 1080