Ein einfaches Spiel, bei dem der Arduino eine Zufallszahl generiert und du sie durch Zahleneingabe im Serial Monitor und mit den Hinweisen („größer“ / „kleiner“) finden musst. Das sieht dann so aus:
Der Arduino denkt sich eine Zahl aus.
Du gibst über den seriellen Monitor eine Zahl ein.
Er antwortet mit:
- 🔽 „Zu klein“ → Die Zahl ist größer
- 🔼 „Zu groß“ → Die Zahl ist kleiner
- 🎯 „Treffer!“ → Du hast gewonnen!
🔧 Material
- Arduino Uno (oder kompatibel)
- USB-Kabel
- Diess Spiel stammt aus der Sammlung: https://www.kreativekiste.de/200-spielideen
⚙️ Aufbau und Programm
- Keine Verkabelung nötig, nur den Arduino mit dem PC verbinden.
- Sollte immer die gleiche Zahl kommen, am analogen PIN einen Draht anbringen.
- Ursprünglich in Ardublock programmiert. Leider zu groß um es als Bilder hier hochzuladen.
- Hier geht es zum Video mit der Ardublock Programmierung.
💡 Tipps & Erweiterungen
- Immer gleiche Zahl? → loses Kabel in A5 stecken
- Schwierigkeit ändern:
Passe MIN_NUM / MAX_NUM an (z. B. 1–1000) - Extras: LEDs, Buzzer oder Versuchslimit hinzufügen
🕹️ Arduino Programmierung
int eingehendeZahl = 0;
int incomingByte = 0;
int zufall = 0;
int spiel = 0;
int zahl = 0;
int versuche = 0;
void setup() {
Serial.begin(9600);
zufall = 0;
spiel = 0;
zahl = 0;
Serial.print("wollen wir ein Spiel spielen? tippe JA ");
Serial.println();
}
void loop() {
while ( ( spiel == 0 ) ) {
if (Serial.available() > 0) {
incomingByte = Serial.read();
}
if (( incomingByte == 106 )) {
Serial.print("schön, ich habe mir eine zahl zwischen 1 und 100 ausgedacht ");
Serial.println();
Serial.print("_______ ");
Serial.println();
Serial.print("versuche die zahl herauszufinden, indem du eine zahl eingibst ");
Serial.println();
Serial.print("_______ ");
Serial.println();
Serial.print("ich sage dir dann ob die zahl zu hoch oder zu tief ist ");
Serial.println();
Serial.print("_______ ");
Serial.println();
spiel = 1;
for (int i = 0; i < analogRead(5); i++) {
zufall = random( 1 , 100 );
}
}
}
delay( 1300 );
Serial.print("gib jetzt eine zahl ein ");
Serial.println();
while ( ( spiel == 1 ) ) {
if (Serial.available() > 0) {
eingehendeZahl = Serial.parseInt();
}
if (( eingehendeZahl > 1 )) {
versuche = ( versuche + 1 );
if (( eingehendeZahl > zufall )) {
Serial.print(eingehendeZahl );
Serial.print("_ist zu groß" );
Serial.println();
}
if (( eingehendeZahl > 100 )) {
Serial.print("die zahl muss zwischen 1 und 100 liegen! ");
Serial.println();
}
if (( eingehendeZahl < zufall )) {
Serial.print(eingehendeZahl );
Serial.print("_ist zu klein" );
Serial.println();
}
if (( eingehendeZahl == zufall )) {
Serial.print(eingehendeZahl );
Serial.print("_perfekt das ist die gesucht zahl" );
Serial.println();
Serial.print("du hast_ ");
Serial.print(versuche );
Serial.print("_versuche benötigt" );
Serial.println();
spiel = 0;
delay( 1000 );
}
}
}
Serial.print("_________________________________________ ");
Serial.println();
Serial.print("willst du nochmal spielen? tippe ja ");
Serial.println();
}