100 REM ******************************* 110 REM *** *** 120 REM *** RAETSEL-GENERATOR *** 130 REM *** *** 140 REM *** VON THOMAS LIPP *** 150 REM *** *** 160 REM ******************************* 170 : 180 DIM Z%(3,9) : REM ZIFFERN 190 DIM Q%(9) : REM ZAHLEN 200 DIM A$(9) : REM CODIERUNG 210 DIM C$(9) : REM CODIERTE ZAHL 220 DIM F$(9) : REM FORMATSTRING 230 : 240 FOR I = 1 TO 4 250 Z%(3,I)=RND(0)*10 260 Z%(2,I)=RND(0)*10 270 Z%(1,I)=RND(0)*7 280 Q%(I)=100*Z%(1,I)+10*Z%(2,I)+Z%(3,I) 290 NEXT I 300 : 310 Q%(5)=Q%(1)+Q%(2) 320 Q%(6)=Q%(3)+Q%(4) 330 Q%(7)=Q%(1)+Q%(3) 340 Q%(8)=Q%(2)+Q%(4) 350 Q%(9)=Q%(7)+Q%(8) 360 : 370 IF Q%(9) > 999 THEN240 380 : 390 FOR I = 5 TO 9 400 Z%(1,I)=Q%(I)/100 410 Z%(2,I)=(Q%(I)-Z%(1,I)*100)/10 420 Z%(3,I)=Q%(I)-Z%(1,I)*100-Z%(2,I)*10 430 NEXT I 440 : 450 A$(0)=CHR$(RND(0)*26+65) 460 FOR I = 1 TO 9 470 A$(I)=CHR$(RND(0)*26+65) 480 FOR J = 0 TO I-1 490 IF A$(J)=A$(I) THEN J=I : NEXT J : GOTO470 500 NEXT J 510 NEXT I 520 : 530 FOR I = 1 TO 9 540 C$(I)=A$(Z%(1,I))+A$(Z%(2,I))+A$(Z%(3,I)) 550 NEXT I 560 : 570 PRINT 580 PRINT" ";C$(1);" + ";C$(2);" = ";C$(5) 590 PRINT" + + + " 600 PRINT" ";C$(3);" + ";C$(4);" = ";C$(6) 610 PRINT" = = = " 620 PRINT" ";C$(7);" + ";C$(8);" = ";C$(9) 630 : 640 POKE 198,0:WAIT 198,1 650 : 660 PRINT"LOESUNG:" 670 FOR I = 1 TO 9 680 FOR J = 1 TO 3 690 F$(I)=F$(I)+RIGHT$(STR$(Z%(J,I)),1) 700 NEXT J 710 NEXT I 720 : 730 PRINT 740 PRINT" ";F$(1);" + ";F$(2);" = ";F$(5) 750 PRINT" + + + " 760 PRINT" ";F$(3);" + ";F$(4);" = ";F$(6) 770 PRINT" = = = " 780 PRINT" ";F$(7);" + ";F$(8);" = ";F$(9) 790 : 800 PRINT" 0 1 2 3 4 5 6 7 8 9 " 810 PRINT" "; 820 FOR I=0TO9:PRINTA$(I);" ";:NEXTI:PRINT 830 : 840 END