Memoryspiel mit Tönen

Programmiere ein Memoryspiel, bei dem du die vom Powerbrain gespielten Töne in der richtigen Reihenfolge wiederholen musst.

Ein Powerbrain mit einer Musiknote darüber.

Diese Aufgabe ist mit allen eXperiBot-Sets kompatibel.

Diese Aufgabe erfordert ein fortgeschrittenes Verständnis für das Arbeiten mit Variablen, Listen und Funktionen.

Aufgabe

Schreibe ein Programm, welches dein Powerbrain eine zufällige Melodie spielen lässt. Danach musst du die Melodie nachspielen.

  1. Dein Powerbrain hat, neben der Start/Stopp-Taste, drei weitere Tasten: A (oder „-“), B (oder „•“), C (oder „+“). Jede Taste soll beim Drücken eine Note spielen.

  2. Das Powerbrain spielt eine zufällige Melodie, die du mit den Tasten nachspielen musst. Zu Beginn besteht die Melodie nur aus einem Ton. Spielst du die Melodie richtig, spielt das Powerbrain eine Melodie aus zwei Tönen. Spielst du die Melodie wieder richtig, spielt das Powerbrain eine Melodie aus drei Tönen usw.

  3. Sobald ein falscher Ton gespielt wird, bricht das Programm ab und das Spiel ist verloren.

  4. Wenn das Programm gestartet wird, spielt das Powerbrain einmal jeden der drei Töne ab, damit du weißt, wie sie klingen. Danach beginnt das Spiel, indem das Powerbrain den ersten Ton spielt, der nachgespielt werden muss.

Aufbau

Für diese Aufgabe benötigst du nur ein Powerbrain!

Tipps

Tipp 1

Du benötigst drei verschiedene Töne, die in einer zufälligen Reihenfolge gespielt werden sollen. Du kannst diese Töne als Zahlenwerte, die die Frequenz der gespielten Note repräsentieren, in einer Liste speichern.

Hier sind die Frequenzen für die Noten C5, D5 und E5 in einer Liste.

Tipp 2

Nimm ein zufälliges Element aus deiner Liste und füge es einer weiteren Liste hinzu, welche deine Melodie speichert. Lass den Ton außerdem mit dem „spiele Ton mit einer Frequenz“ Block wiedergeben.

Tipp 3

Du kannst das Hinzufügen neuer Töne jetzt in eine Schleife geben und die Anzahl der Wiederholungen in einer Variable „Schwierigkeitsgrad“ speichern.

Tipp 4

Um die Übersicht zu bewahren, kannst du deinen „Melodie-Generator“ in eine separate Funktion auslagern. Füge außerdem eine weitere Funktion zum Prüfen der gespielten Melodie hinzu. In dieser Funktion soll geprüft werden, ob die Tasten in der richtigen Reihenfolge gedrückt werden, um die Melodie zu wiederholen.

Tipp 5

Jetzt ist es an der Zeit, die Eingaben über die Tasten zu überprüfen und mit der Melodie zu vergleichen. Schreibe zuerst eine weitere Funktion, die den ersten Ton in deiner Liste „melodie“ mit einem gespielten Ton vergleicht. Wenn der Vergleich erfolgreich ist, wird das Element aus der Liste entfernt. Wenn der Vergleich fehlschlägt (wenn also der falsche Ton gespielt wurde), wird eine „Game over“ Melodie gespielt und das Programm abgebrochen.

Um deiner Funktion einen Eingabeparameter „ton“ hinzuzufügen, nutze das Zahnrad direkt neben dem Funktionsnamen.

Tipp 6

Jetzt muss die Funktion „pruefe_ton“ aus der Funktion „pruefe_melodie“ aufgerufen werden. Nutze eine Endlosschleife, um auf Tastatureingaben zu warten. Sobald eine Taste gedrückt wurde, spiele die Note ab und führe die Funktion „pruefe_ton“ aus. Brich die Schleife ab, sobald die Liste „melodie“ leer ist – also wenn alle Werte gespielt wurden. Danach erhöhe den Schwierigkeitsgrad um 1. Wiederhole „spiele_melodie,“ „pruefe_melodie“ und „ändere Schwierigkeitsgrad“ in einer Endlosschleife.

Füge deinem Programmstart noch drei „spiele Ton“ Blöcke hinzu, um alle drei Töne einmal zu spielen.

Dein Memoryspiel ist nun fertig! Wie viele Töne kannst du dir merken?

Du kannst das Programm verbessern, indem du die drei Frequenzen in Variablen speicherst. Dann kannst du die Frequenzen einfach ändern und so etwa das Spiel schwieriger oder leichter machen!

Das fertige Projekt zum Herunterladen:

Memoryspiel mit Tönen
eXperiBot-Dokumentation eXperiBot-Dokumentation Version 1.2.0 (Latest)
Made with by the eXperiBot Team © 2026 Cornelsen Experimenta GmbH