Wir nutzen Cookies, um das allgemeine Benutzerelebnis zu verbessern. Mit der Nutzung unseres Wikis stimmst du der Nutzung von Cookies zu.

Blockform = Wahrheits-Blöcke

Die Form eines Wahrheits Blocks

In Scratch gibt es viele verschiedene Wahrheitsblöcke. Eine Variable kann eine beliebige Zahl oder eine beliebige Buchstabenkombination enthalten, für die Wahrheitsblöcke gibt es nur 2 Möglichkeiten: Wahr oder falsch. Dies entspricht beim "richtigen" Programmieren dem Datentyp Boolean, der nur true oder false kennt.

Wahrheitsblöcke.png

Auflistung

In Scratch 2.0 gibt es insgesamt 12 verschiedene Wahrheitsblöcke aus 4 Kategorien.

Fühlen

Wird () berührt Dieser Block prüft, ob ein bestimmtes Objekt, der Mauszeiger oder der Rand berührt wird.
Wird Farbe () berührt Dieser Block prüft, ob das entsprechende Objekt die ausgewählte Farbe berührt.
Farbe () berührt () Dieser Block funktioniert wie der obere, nur dass geprüft wird ob eine Farbe eine andere Farbe berührt.
Maustaste gedrückt Prüft, ob die Maustaste gedrückt ist oder nicht.
Taste () gedrückt Dieser Block prüft, ob eine Taste gedrückt wird.

Weitere Blöcke

Wenn die Weitere-Blöcke Kategorie mit einem Shift-Klick aufgerufen wurde, und dann die Erweiterung "PicoBoard" hinzugefügt wurde, findet sich folgender Wahrheitsblock:

Sensor ()? Dieser Block ist für das PicoBoard zuständig. Er prüft, ob die Schaltfläche gedrückt wird, oder die Widerstandsmesser A, B, C oder D verbunden ist.

Operatoren

Operator Erklärung
() < () Dieser Block prüft, ob der linke Input kleiner ist als der rechte. Es können dort als Inputs sowohl Variablen als auch ganz normale Zahlen angegeben werden.
() > () Und dieser prüft, ob die linke Input größer ist als der rechte. Es können dort als Inputs ebenfalls sowohl Variablen als auch ganz normale Zahlen angegeben werden.
() = () Dieser Block hingegen, kann für Wörter und Zahlen benutzt werden, er prüft ob sie gleich sind.
() und () In diesen Block müssen zwei beliebige, weitere Wahrheitsblöcke eingesetzt werden (auch weitere Und- oder Oder-Blöcke sind möglich), es wird dann geprüft, ob beide Bedingungen wahr oder falsch sind.
() oder () Auch in diesen Block müssen zwei beliebige Wahrheitsblöcke eingesetzt werden (lässt sich auch mit weiteren Oder- und Und-Blöcken kombinieren). Hier wird jedoch überprüft, ob entweder die eine oder die andere Bedingung wahr ist.
Nicht () Sämtliche anderen Blöcke prüfen immer, ob das Ergebnis wahr ist. Mit diesem Block lässt sich das ganze umkehren, sodass die Bedingung falsch sein muss.

Listen

() enthält () Dieser Block überprüft, ob eine Liste etwas enthält. In das freie Feld kann man entweder etwas hineinschreiben oder einen Variablenblock mit runden Ecken einbauen.

Frühere Blöcke

Folgende Blöcke wurden in Scratch 2.0 enfernt:

  • Laut?: Gibt an, ob das in das Mikrophon eingegebene Audio laut, also (Lautstärke > 30) ist.

Verwendung

Hier seht ihr eine Übersicht aller Blöcke, in deren Lücken ein Wahrheitsblock eingesetzt werden muss. Die ersten 5 sind Steuerungsblöcke die nur dann Wirkung zeigen, wenn die entsprechende Bedingung wahr ist (oder falsch ist, wenn man den Nicht-Block verwendet hat, siehe dazu oben). Die letzen 3 sind selber Wahrheitsblöcke, die mit anderen kombiniert werden.

falls <> dann
end

falls <> dann
sonst
end

warte bis <>

wiederhole bis <>
end

<<> und <>>

<<> oder <>>

<nicht <>>

Beispiel

Jetzt noch ein kleines Beispiel für die Verwendung von Wahrheitsblöcke. Sieht auf den ersten Blick sehr kompliziert aus, ist es aber nicht, schau einfach mal genauer hin!

Wenn gf angeklickt
wiederhole bis <(Gesammelte Äpfel) = [10]>
falls <wird [Apfel v] berührt> dann
ändere [Gesammelte Äpfel v] um (1)
end
end
warte bis <nicht <wird [Apfelbaum v] berührt>>
füge [Apfel] zu [Früchtekorb v] hinzu
sage [Lass uns noch anderes Obst sammeln!] für (2) Sek.
warte bis <<wird [Pflaumenbaum v] berührt> oder <wird [Birnbaum v] berührt>>
falls <wird [Birnbaum v] berührt> dann
sage [Birnen sind lecker! Lass uns 5 Stück sammeln] für (2) Sek.
wiederhole bis <(Gesammelte Birnen) = [5]>
falls <wird [Birne v] berührt> dann
ändere [Gesammelte Birnen v] um (1)
end
end
füge [Birnen] zu [Früchtekorb v] hinzu
sage [Wir haben genug Obst gesammelt!]
sonst
sage [Ich mag Pflaumen, 15 würden genügen!] für (2) Sek.
wiederhole bis <(Gesammelte Pflaumen) = [15]>
falls <wird [Pflaume v] berührt> dann
ändere [Gesammelte Pflaumen v] um (1)
füge [Pflaumen] zu [Früchtekorb v] hinzu
sage [Wir haben genug Obst gesammelt!]
end
falls <<[Früchtekorb v] enthält [Äpfel]> und <[Früchtekorb v] enthält [Birnen]>> dann
sage [Wollen wir Apfelpflaumenkuchen backen?] für (2) Sek.
end
falls <<[Früchtekorb v] enthält [Äpfel]> und <[Früchtekorb v] enthält [Pflaumen]>> dann
sage [Ich habe richtig Lust auf Apfeleis mit Birnenstücken!] für (2) Sek.
end  

Eine Schleife läuft zuerst solange, bis die Anzahl der Gesammelten Äpfel 10 beträgt. Danach wartet das Skript mit seiner Ausführung, bis der Apfelbaum nicht mehr berührt wird, sprich der Charakter wieder auf der Wiese steht. Die gesammelten Äpfel werden zur Liste Früchtekorb hinzugefügt und der Charakter sagt, er wolle noch anderes Obst sammeln.

Es wird gewartet, bis entweder der Birnenbaum oder der Pflaumenbaum berührt wird, sprich: Der Charakter erklimmt zum Obstsammeln einen neuen Baum. Ist dies der Birnbaum, sollen 5 Birnen gesammelt werden. Birnen werden dann auch dem Früchtekorb hinzugefügt. Bei den Pflaumen ist es genauso, nur muss man hier 15 Stück sammeln.

Zum Schluss wird geprüft, ob der Früchtekorb Äpfel und Pflaumen enthält oder Äpfel und Birnen, je nach dem sagt der Charakter etwas anderes.

Siehe auch



Code zum Einbinden ins Forum:
[wiki=de:Blockform = Wahrheits-Blöcke]Blockform = Wahrheits-Blöcke[/wiki]