Skip to main content

Logik

Bedingte Anweisungen

Bedingte Anweisungen sind zentral für die Programmierung. Sie machen es möglich, Fallunterscheidungen zu formulieren wie:

  • Wenn es einen Weg nach links gibt, biege links ab.
  • Wenn Punktzahl = 100, drucke "Gut gemacht!".

wenn-Blöcke

Die einfachste Bedingung ist ein wenn-Block:

Bild1_d.PNG

Wenn dieser ausgeführt wird, wird der Wert der Variable x mit 100 verglichen. Wenn er größer ist, wird "Was für eine große Zahl!" ausgegeben. Andernfalls passiert nichts.

wenn-sonst-Blöcke

Es ist auch möglich, anzugeben, dass etwas passieren soll, wenn die Bedingung nicht wahr ist, wie in diesem Beispiel:

Bild2_d.PNG

Wie beim vorherigen Block wird "Was für eine große Zahl!" ausgegeben, wenn x > 100 ist. Andernfalls wird "Das ist nicht sehr groß." angegeben.

Ein wenn-Block einen sonst-Abschnitt haben, aber nicht mehr als einen.

wenn-sonst-wenn-Blöcke

Es ist auch möglich, mehrere Bedingungen mit einem einzigen wenn-Block zu testen, indem sonst-wenn-Klauseln hinzugefügt werden:

Bild3_d.PNG

Der Block prüft zuerst, ob x > 100 ist, und gibt "Was für eine große Zahl!" aus, wenn das der Fall ist. Ist dies nicht der Fall, prüft er weiter, ob x = 42 ist. Wenn ja, gibt er "Das ist meine Glückszahl!" aus. Andernfalls passiert nichts.

Ein wenn-Block kann eine beliebige Anzahl von sonst-wenn-Abschnitten haben. Die Bedingungen werden von oben nach unten ausgewertet, bis eine erfüllt ist oder bis keine Bedingung mehr übrig sind.

wenn-sonst-wenn-sonst-Blöcke

wenn-Blöcke können sowohl sonst-wenn als auch sonst-Abschnitte haben:

Bild4_d.PNG

Der sonst-Abschnitt garantiert, dass eine Aktion ausgeführt wird, auch wenn keine der vorherigen Bedingungen wahr ist.

Ein sonst-Abschnitt kann nach einer beliebigen Anzahl von sonst-wenn-Abschnitten auftreten, einschließlich Null, dann erhält man einen ganz normalen wenn-sonst-Block.

Blockmodifikation

In der Werkzeugleiste erscheint nur der einfache wenn-Block und der wenn-sonst-Block:

image-1638372839221.png

Um sonst-wenn - und sonst-Klauseln hinzuzufügen, klickst du auf das (+) Symbol. Mit (-) Symbol lassen sich sonst-wenn -Klauseln wieder entfernen:

image-1638373059561.png

Beachte, dass die Formen der Blöcke das Hinzufügen einer beliebigen Anzahl von sonst-wenn-Unterblöcken erlauben, aber nur bis zu einem wenn-Block.

Boolesche Logik

Boolesche Logik istbildet eindie einfachesGrundlage mathematischesfür System,die dasImplementierung bedingter Anweisungen. Sie basiert auf einem einfachen mathematischen System mit zwei Werte hat:Zuständen:

  • wahr
  • falsch

Logikblöcke in ROBO Pro Coding sind in der Regel dafür da, Bedingungen und Schleifen zu kontrollieren.

Hier ein Beispiel:

Bild1_d.PNG

Wenn der Wert der Variable x größer als 100 ist, istgilt die Bedingung als wahr und der Text "Was für eine große Zahl!" wird ausgegeben. Ist der Wert von x nicht größer als 100, ist die Bedingung falsch und es wird "Das ist nicht sehr groß." wird ausgegeben. Boolesche Werte können auch in Variablen gespeichert werden und an Funktionen weitergegebenübergeben werden, genausoähnlich wie Zahlen, TextTexte und Listenwerte.

Blöcke

Wenn ein Block einen Booleschen Wert als Eingabe erwartet,erwartet und keine Eingabe erfolgt, wird eine fehlende Eingabedies als falsch interpretiert. NichtEs ist technisch möglich, jedoch nicht empfohlen, nicht boolesche Werte können nicht direkt dort eingefügt werden, wo boolesche Werte erwartet werden, obwohl es möglich (aber nicht ratsam) ist, einen nicht-booleschen Wert in einer VariablenBedingungseingaben zu speichern und diese dann in die Bedingungseingabe einzufügen.verwenden. Diese Methode wird nicht empfohlen, und ihr Verhalten kann sich in zukünftigen Versionen von ROBO Pro Coding ändern.

Werte abrufen

Ein spezifischer Block mit einer Dropdown-Liste ermöglicht die Auswahl zwischen den Werten wahr oder falsch, um Boolesche Werte direkt abzurufen.

Werte

Ein einzelner Block mit einer Dropdown-Liste, die entweder wahr oder falsch angibt, kann verwendet werden, um einen Booleschen Wert abzurufen:

Vergleichsoperatoren

Es gibt sechs Vergleichsoperatoren. Jedem werden zwei Eingaben (normalerweise zwei Zahlen) übergeben und der Vergleichsoperator gibt wahr oder falsch zurück, je nachdem, wie die Eingaben miteinander verglichen werden.

image-1623518116706.pngimage-1623518117182.png

image-1623518116894.pngimage-1623518116802.png

image-1623518116985.pngimage-1623518166030.png

Die sechs Operatoren sind: gleich, nicht gleich, kleiner als, größer als, kleiner als oder gleich, größer als oder gleich.

Logische Operatoren

Der und-Block gibt dann und nur dann wahr zurück, wenn seine beiden Eingangswerte wahr sind.

image-1623518251877.png

Der oder-Block gibt wahr zurück, wenn mindestens einer seiner beiden Eingangswerte wahr ist.

image-1623518258449.png

nicht

Der nicht-Block wandelt eine boolesche Eingabe in ihr Gegenteil um. Zum Beispiel ist das Ergebnis von:

image-1623518278596.png

falsch

Wenn keine Eingabe erfolgt, wird der Wert wahr angenommen, sodass der folgende Block den Wert falsch erzeugt:

image-1623518270686.png

Es wird jedoch nicht empfohlen, eine Eingabe leer zu lassen.

dreier Operator

Der dreier Operator verhält sich wie ein Miniatur-wenn-sonst-Block. Er nimmt drei Eingangswerte entgegen, der erste Eingangswert ist die zu testende boolesche Bedingung, der zweite Eingangswert ist der Wert, der zurückgegeben werden soll, wenn der Test wahr ergibt, der dritte Eingangswert ist der Wert, der zurückgegeben werden soll, wenn der Test falsch ergibt. Im folgenden Beispiel wird die Variable Farbe auf Rot gesetzt, wenn die Variable x kleiner als 10 ist, andernfalls wird die Variable Farbe auf Grün gesetzt.

image-1623518297713.png

Ein dreier Block kann immer durch einen wenn-sonst-Block ersetzt werden. Die folgenden zwei Beispiele sind genau gleich.   

image-1638450294773.png   

    Bild14_d.PNG