![]() ![]() INFO - FAQ - CC2-Forum - CCPro-Forum |
|
' =========================================================================== ' Demoprogramm: Kopfrechnen - um geistig fit zu bleiben ' In OCBASIC 1.12a_e1 für Open-Maxi von Dietmar Harlos am 30. März 2021 ' =========================================================================== ' Dieses Programm demonstriert Zufallszahlen und die Schleife REPEAT..UNTIL. ' An dieser Stelle möchte ich mich bei Dirk von "das |_ Team" und bei Norbert ' für ihre Unterstützung bedanken. ' --- Definitionen ---------------------------------------------------------- INCLUDE "omax.def" 'Definitionen für die Open-Maxi DIM zb,z,d1,d2,d3,d4,e,w WORD DIM debug,nummer BYTE ' --- Hauptprogramm --------------------------------------------------------- PrintSpc=ON 'SPACE vor einem dezimalen PRINT End2Host=ON 'Bei Programmende gleich in den Host-Modus wechseln debug=OFF 'zum Debugging RANDOMIZE 0 'Zufallsgenerator initialisieren (z.B. RANDOMIZE TIMER) zb=100 'Zahlenbereich, ein anderer wird z.Z. nicht unterstützt nummer=0 ?:?"Kopfrechnen auf der Open-Maxi mit Zahlenbereich"zb WHILE TRUE z=0:d1=0:d2=0:d3=0:d4=0:e=0 'z/d1*d2-d3+d4=e ? d1=((RAND SHR 1)+16384)/1366+2 'Zufallszahlen von 2 bis 25 generieren REPEAT e=((RAND SHR 1)+16384)/1311+1 '1 bis 25 UNTIL e<>1 AND d1*e<=zb z=d1*e IF debug THEN ?"1:"z;d1;d2;d3;d4;e REPEAT d2=((RAND SHR 1)+16384)/1311+1 '1 bis 25 UNTIL d2<>1 AND d2<>d1 AND e*d2<=zb e=e*d2 IF debug THEN ?"2:"z;d1;d2;d3;d4;e REPEAT d3=((RAND SHR 1)+16384)/328+1 '1 bis 100 UNTIL (e-d3)>0 e=e-d3 IF debug THEN ?"3:"z;d1;d2;d3;d4;e REPEAT d4=((RAND SHR 1)+16384)/328+1 '1 bis 100 UNTIL (e+d4)<=zb e=e+d4 IF debug THEN ?"4:"z;d1;d2;d3;d4;e ADD nummer,1 REPEAT PrintSpc=OFF ?nummer". Aufgabe:" ?z"/"d1"*"d2"-"d3"+"d4"="; PrintSpc=ON INPUT w IF w=-1 THEN GOTO abbruch IF w=0 THEN ?"Das richtige Ergebnis lautet"e"." GOTO naechste END IF IF w<>e THEN ?"Das ist leider nicht richtig. Bitte noch einmal rechnen." END IF UNTIL w=e ?"Das war richtig!" #naechste WEND #abbruch ?:?"Auf Wiedersehen!" END 'Zurück in den Hostmodus. Neustart mit RETURN-Taste. ' --- Programmende --------------------------------------------------------- Passender Link: Offizielle Infosite zu den OM-Mikrocontrollern Meine Homepage: http://ccintern.dharlos.de |
Antwort schreiben |