![]() ![]() INFO - FAQ - CC2-Forum - CCPro-Forum |
|
![]() ' =========================================================================== ' Demoprogramm: Die Open-Maxi errät eine Zahl zwischen -16384 und 16383 ' In OCBASIC 1.12a_e1 für Open-Maxi von Dietmar Harlos am 22. Mai 2022 ' =========================================================================== ' Dieses Programm ist gut für einen Einstieg in die Programmierung geeignet. ' --- Definitionen ---------------------------------------------------------- INCLUDE "omax.def" 'Definitionen für die Open-Maxi DIM bitarray BYTE 'ein Bitarray DIM debug BIT[1] OF bitarray 'ist HIGH, wenn Debugging aktiv DIM geloest BIT[2] OF bitarray 'ist HIGH, wenn Zahl erraten DIM zahl WORD 'die zu erratende Zahl DIM unten WORD 'untere Grenze \ Bereich, in dem sich die DIM oben WORD 'obere Grenze / zu erratene Zahl befindet DIM w WORD 'die geratene Zahl ' --- Hauptprogramm --------------------------------------------------------- PrintSpc=ON 'Bei PRINT dezimale Zahlen mit führendem Leerzeichen ausgeben End2Host=ON 'Bei Programmende (siehe END) gleich in den Host-Modus wechseln ' Titel: PRINT "Zahlenraten" PRINT "===========" ' Initialisierungen: debug=ON 'OFF 'Grenzen anzeigen zahl=2 '1000 '16383 '-16384 'hier die zu erratene Zahl eingeben PRINT "Zu erraten ist die Zahl"zahl"." unten=-32768 'untere Grenze auf Anfangswert setzen oben=32767 'obere Grenze auf Anfangswert setzen geloest=FALSE 'Bitvariable auf unwahr setzen ' Hauptschleife des Programms: REPEAT IF debug THEN ?"Untere Grenze="unten 'PRINT läßt sich durch ? abkürzen ?"Obere Grenze="oben END IF w=(unten+oben)/2 'mittlere Zahl nehmen ?"Ich rate"w": "; IF w=zahl THEN ?"Ich habe die Zahl erraten!" geloest=TRUE 'Bitvariable auf wahr setzen ELSEIF w>zahl THEN ?"Die geratene Zahl"w" ist zu groß." oben=w 'Obere Grenze nach unten verschieben ELSE ?"Die geratene Zahl"w" ist zu klein." unten=w 'Untere Grenze nach oben verschieben END IF UNTIL geloest ?:?"Programmende." END 'Zurück in den Hostmodus. Neustart mit RETURN-Taste. ' --- Programmende --------------------------------------------------------- Passender Link: Infosite zu den OM-Mikrocontrollern Meine Homepage: http://ccintern.dharlos.de |
Antwort schreiben |