Aus Das deutschsprachige Scratch-Wiki

Stub.png Dieser Artikel (oder Abschnitt) ist noch sehr kurz (oder unvollständig!). Hilf mit, ihn ausführlicher zu gestalten, indem du Informationen, Bildmaterial oder Texte hinzufügst.


Mit diesem Tutorial kann man programmieren, wie man den Listeninhalt als Zahlen in einer Variable speichert.

Funktion

Dieses Tutorial hat eigentlich doch eine ganz nützliche Funktion: Wenn man ein Speicher-Skript in seinem Projekt hat, aber die Liste viele Inhalte enthält, dann muss man halt diese Methode nutzen. Dieses Tutorial ist sehr schwer zu programmieren, aber dafür sehr leicht zu verstehen, sodass es lieber nur Profis machen sollten. (Dies heißt aber nicht, dass keine neuen Scratcher dieses Tutorial machen dürfen.)

Erforderliche Materialien

Die folgenden Materialien sind für dieses Tutorial erforderlich:

Skripte

Beispiel: Ein Projekt enthält eine Liste namens "abc" mit den Inhalten a, b und c. Diese sollen nun in der Variable "Listenspeicherung" als Zahlen gespeichert werden. Dafür müssen die folgenden Skripte zusammengebaut werden.

Erstes Skript

Wenn die grüne Flagge angeklickt
lösche alles aus [abc v]
falls <<nicht <<<[abc v] enthält (a)?> und <[abc v] enthält (b)?>> und <[abc v] enthält (c)?>>> = [true]>, dann
füge [a] als (1 v) in [abc v] ein
füge [b] als (2 v) in [abc v] ein
füge [c] als (3 v) in [abc v] ein
sende [Umwandeln v] an alle

Zweites Skript

Wenn ich [Umwandeln v] empfange
ersetze Element (a v) von [abc v] durch (1)
ersetze Element (b v) von [abc v] durch (2)
ersetze Element (c v) von [abc v] durch (3)
sende [Einsetzen v] an alle

Letztes Skript

Wenn ich [Einsetzen v] empfange
setze [Listenspeicherung v] auf (verbinde (verbinde (Element (1 v) von [abc v]) und [,]) und (verbinde (Element (2 v) von [abc v]) und (verbinde [,] und (verbinde (Element (3 v) von [abc v]) und [,]))))
zeige Variable [Listenspeicherung v]

Mehrere Listen

Dieses Tutorial funktioniert auch mit mehreren Listen. Möchte man jetzt zusätzlich auch noch den Inhalt der Liste "123" speichern, dann muss man noch eine Variable mit dem Namen "Listenspeicherung 2" oder "Listenspeicherung-123" erstellen, da er doppelte Variablennamen nicht akzeptiert und die obenstehenden Skripte wiederholen (also ohne den Wiederholungsblock), sondern die Skripte nochmal neu zusammenbauen. Man kann auch eine Figur erstellen und dann die Listenspeichervariable privat (manche nennen es auch "lokal") (also nur für die Figur selbst) machen. Dies (also das mit der lokalen Variable) funktioniert NICHT mit der Bühne, da man mit der Bühne Variablen nur für alle Figuren erstellen kann.

Cloud-Variable

Dies kann man auch mit einer Cloud-Variable machen, man muss nur prüfen, ob hinter einer Variable das Cloud-Zeichen (☁) steht, dann ist diese Variable nämlich eine Cloud-Variable und der in Zahlen umwandelte Listeninhalt in der Cloud-Variable wird nun auf dem Scratch-Server gespeichert. So kann man ihn dann nächstes mal dann wieder vom Scratch-Server herunterladen.

Hinweise

  • Man muss dies nicht mit der Liste "abc" und der Variable "Listenspeicherung" machen, sondern dies funktioniert auch mit jeder beliebigen Liste und jeder beliebigen Variable und sogar auch mit mehreren Listen und mehreren Variablen. Denn der obenstehende Text mit den Skripten soll ja nur ein Programmierbeispiel sein.
  • Dieses Tutorial funktioniert erst ab der Scratch-Version 1.3, da erst in dieser Version Listen eingeführt wurden.
  • Für dieses Tutorial sind sehr gute Scratch-Kenntnisse erforderlich, da dies ein sehr schweres Tutorial ist. Deshalb ist es eher auch nur für Profis geeignet. Das heißt aber nicht, dass es keine neuen Scratcher machen sollten.
  • Man muss darauf achten, dass man die Blöcke richtig zusammenbaut (also so, wie die Blöcke auch da oben stehen), denn sonst funktioniert das Skript bzw. Tutorial nicht (richtig).



Code zum Einbinden ins Forum:
[wiki=de:Listeninhalt als Zahlen in Variablen speichern]Listeninhalt als Zahlen in Variablen speichern[/wiki]