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: Nimm-Spiel - Gut für die Einsteiger in die Programmierung geeignet Kategorie: Open-Micro/Open-Mini/Open-Midi/Open-Macro/Open-Maxi (von Dietmar, Homepage - 2.07.2023 21:46)
Dietmar nutzt:  Open-Micro, Open-Mini, Open-Midi, Open-Macro, Open-Maxi, Open-Mini Station
' ===========================================================================
' Demoprogramm: Nimm-Spiel - Gut für Programmiereinsteiger geeignet
' In OCBASIC 1.12a_e1 für Open-Maxi von Dietmar Harlos am 02. Juli 2023
' ===========================================================================

' Das Nim-Spiel ist ein Spiel für zwei Personen, bei dem abwechselnd eine
' Anzahl von Gegenständen, etwa Streichhölzer, weggenommen werden. Gewonnen
' hat derjenige, der das letzte Hölzchen nimmt.

' Dieses Programm basiert auf dem folgenden:
' https://rosettacode.org/wiki/Nim_game#QBasic

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

INCLUDE "omax.def"               'Definitionen für die Open-Maxi

DIM monton WORD                  'eine WORD-Variable, -32768 bis 32767
DIM llevar BYTE                  'eine BYTE-Variable, 0 bis 255

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

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

monton = 12                      'Variablen einen Wert zuweisen
llevar = 0

WHILE monton>0                   'wiederholen, solange monton größer als 0 ist

  WHILE TRUE                     'WHILE-Schleife endlos wiederholen

    ?:?"Demoprogramm: Nimm-Spiel":?   'PRINT läßt sich durch ? abkürzen

    ?"Es sind noch";monton;" Streichhölzer übrig. Wie viele willst Du nehmen? ";
    GET llevar                   'einen Tastendruck vom Terminalprogramm holen
    ?
    SUB llevar,ASC("0")          'umwandeln in Zahl

    IF llevar>0 AND llevar<=3 THEN 'Schleife beenden wenn Zahl 1, 2 oder 3 ist
      GOTO weiter                'entspricht EXIT von anderen Programmiersprachen
    END IF

    ?"Diese Eingabe ist nicht gültig! Du kannst maximal 3 Streichhölzer nehmen."

  WEND
  #weiter

  ?"Ich nehme";4-llevar;" Streichhölzer."
  monton=monton-4                '4 subtrahieren

WEND

?:?"Ich habe das letzte Streichholz gezogen. Ich habe gewonnen!"
?"Mehr Glück beim nächsten mal."

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

Re: Demoprogramm: Nimm-Spiel - Gut für die Einsteiger in die Programmierung geeignet (von Christian - 16.07.2023 15:34)