Lernpfad:Scratch für Fortgeschrittene/Informationen speichern und abrufen
Bei vielen Projekten müssen bestimmte Informationen aus unterschiedlichen Gründen gespeichert werden. Die häufigsten Gründe sind:
- Der Benutzer muss eine Eingabe machen, die gespeichert werden muss.
- Eine Information ist nicht fest, sondern ändert sich im Laufe der Zeit.
- Ein Wert wird an mehreren Stellen verwendet.
Wann immer eine Information gespeichert und wieder abgerufen werden soll, werden in Scratch (und anderen Programmiersprachen) Variablen angelegt. Im folgenden werden die Grundlagen von Variablen in Scratch beschrieben. Weiter unten findest du Beispiele zu den drei oben genannten Gründen, Informationen zu speichern.
Globale und lokale Variablen
Variablen erstellen und abrufen
Variablen verändern
Beispiele
Beispiel 1: Der Benutzer muss eine Eingabe machen, die gespeichert werden muss.
Beispiel 2: Eine Information ist nicht fest, sondern ändert sich im Laufe der Zeit.
Beispiel 3: Ein Wert wird an mehreren Stellen verwendet
Wenn ein Wert an mehreren Stellen in einem Skript oder sogar in mehreren Figuren verwendet werden soll, dann bietet es sich oft an, diesen Wert nicht direkt in die Anweisungen zu schreiben, sondern ihn in einer Variablen zu speichern. Auf diese Weise kann der Wert sehr einfach verändert werden, ohne ihn in jeder Anweisung einzeln anpassen zu müssen.
Beispielsweise kann man eine Figur animieren, indem durch die Kostüme der Figur gewechselt wird. Um die Geschwindigkeit der Animation zu steuern baut man zwischen den Kostümwechseln eine Verzögerung ein.
nächstes Kostüm warte (0.2) Sek. nächstes Kostüm warte (0.2) Sek. nächstes Kostüm warte (0.2) Sek. nächstes Kostüm
Merkt man erst später, dass die Animation zu langsam oder schnell abläuft, dann müsste man in allen drei warte (0.2) Sek. Anweisungen den Wert verändern.
Statt dessen könnte man eine neue Variable (wartezeit) anlegen und verwenden.
setze [wartezeit v] auf (0.1) nächstes Kostüm warte (wartezeit) Sek. nächstes Kostüm warte (wartezeit) Sek. nächstes Kostüm warte (wartezeit) Sek. nächstes Kostüm
Nun kann mit den Wert für die Wartezeit beliebig experimentiert werden, bis die Animation in der richtigen Geschwindigkeit abläuft.
Wenn die grüne Flagge angeklickt setze Richtung auf (Zufallszahl von (0) bis (360)) wiederhole fortlaufend gehe (tempo :: list)er-Schritt pralle vom Rand ab end
Wenn die grüne Flagge angeklickt setze [tempo v] auf (1) Wenn ich angeklickt werde ändere [tempo v] um (2)