Loading...

Code-Schloss - Teil 1

In den nächsten drei Kapiteln programmieren wir ein Code-Schloss!

Über die Arme werden wir einen vierstelligen Code eingeben. Nachdem der Code eingegeben wurde, soll er überprüft werden:

Bei korrekter Code-Eingabe sollen die Augen grün leuchten, beim einem falschen Code sollen sie rot glimmen!

Der richtige Code ist vierstellig und ist in dem Array code enthalten. Die Zahlen entsprechen den Werten aus der getEvent()-Funktion

Die Deklaration in Zeile 4 ist neu:

int input[4];

Wir erzeugen damit ein Array mit 4 Speicherplätzen in dem wir uns später den eingegebenen Code merken können.

In Zeile 7 bis Zeile 25 ist die getEvent()-Funktion wie in den vorherigen Kapiteln definiert.

Die Funktion liefert wie bisher bei Berührung von Arm 1 die Werte 11, 12 und 13, und bei Arm 2 die Werte 21, 22 und 23 zurück.

Falls nichts berührt wird, liefert die Funktion 0 zurück.

Im ersten Teil der loop()-Funktion warten wir auf vier Events von der Funktion getEvent().

Die vier Eingabe-Events speichern wir in dem Array input, die jeweilige Position (0, 1, 2 oder 3) merken wir uns mit der Variablen index.

Wenn index den Wert 4 erreicht, beenden wir die while-Schleife.

Im nächsten Abschnitt der loop()-Funktion überprüfen wir den eingegeben Code mit Hilfe einer for-Schleife.
Dazu müssen wir in der Schleife die Fehler in der Eingabe zählen!

Bau den folgenden Code zur Überprüfung an der richtigen Stelle in die Schleife ein:

if (input[i] != code[i]) {
  fehler++;
}
Compiliere das Beispiel!
1: Welchen Wert hat die Variable fehler am Ende der loop()-Funktion, wenn die Events in der folgender Reihenfolge eingetreten sind:
11, 21, 23, 12?
 Du hast nichts ausgefüllt!
 Prima, soweit richtig…
 Prima, alles richtig!
 Leider falsch…
 Eine Antwort ist richtig
 Schon ein paar richtig…