Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Demoprogramm: Zahlenraten - Gut für die Einsteiger in die Programmierung geeignet Kategorie: Open-Micro/Open-Mini/Open-Midi/Open-Macro/Open-Maxi (von Dietmar, Homepage - 14.07.2025 15:15)
Dietmar nutzt:  Open-Micro, Open-Mini, Open-Midi, Open-Macro, Open-Maxi, Open-Mini Station
' ===========================================================================
' Demoprogramm: Der Anwender muß eine Zahl von 1 bis 100 erraten
' In OCBASIC 1.12a_e1 für Open-Maxi von Dietmar Harlos am 14. Juli 2025
' ===========================================================================

' Dieses Programm ist gut für einen Einstieg in die Programmierung geeignet.

' --- Definitionen ----------------------------------------------------------

INCLUDE "omax.def"               'Definitionsdatei 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     BYTE                'die zu erratende Zahl
DIM z        BYTE                'die geratene Zahl
DIM versuche BYTE                'Anzahl Versuche

' --- Hauptprogramm ---------------------------------------------------------

PrintSpc=ON    'Bei PRINT dezimale Zahlen mit führendem Leerzeichen ausgeben
End2Host=ON    'Bei Programmende (siehe END) gleich in den Host-Modus wechseln

' Initialisierungen:

debug=ON 'OFF  'Debuggingmodus: Zahl anzeigen
RANDOMIZE 42   'Zufallszahlengenerator initialisieren

' Hauptschleife des Programms:

WHILE TRUE

  ' Titel:

  PRINT
  PRINT "Zahlenraten"
  PRINT "==========="
  PRINT

  zahl=((RAND AND &h7fff) MOD 100)+1 'Zufallszahl von 1 bis 100

  geloest=FALSE                      'Bitvariable auf unwahr setzen

  versuche=0                         'Anzahl Versuche initialisieren

  REPEAT
    IF debug THEN
      PRINT "Zu erraten ist die Zahl"zahl"."
    END IF

    versuche=versuche+1              'Anzahl Versuche zählen

    ?"Dein Tip (Ende mit 0): ";      'PRINT läßt sich durch ? abkürzen
    INPUT z                          'Geratene Zahl des Anwenders

    IF z=0 THEN                      'Abbruch durch den Anwender
      GOTO exit
    ELSEIF z=zahl THEN
      ?"Du hast die Zahl erraten!"
      ?"Du hast";versuche;" Versuche gebraucht."
      geloest=TRUE                   'Bitvariable auf wahr setzen
    ELSEIF z>zahl THEN
      ?"Die geratene Zahl"z" ist zu groß."
    ELSE
      ?"Die geratene Zahl"z" ist zu klein."
    END IF
  UNTIL geloest

WEND
#exit

?:?"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

Bisherige Antworten: