
If-Anweisungen

Upgrade für mehr Inhalte
True or false? The instructions for the robot's program is called pseudocode.
Ich hab eine Schachtel Pralinen geschenkt bekommen. Wollt ihr eine? Ja, aber nur Vollmilch. Ich mag nur dunkle. Hier ist dunkle Schokolade.
Vollmilchschokolade! Die wirst du mögen, Maria. Noch eine ... Hier. Ich auch ...
Mehr! Hey! Ihr könnt sie euch selbst nehmen. Ich werde euch keine Pralinen bringen ... Aber mein Roboter könnte das vielleicht machen!
Och, aber der Roboter weiß nicht, was wir mögen. Er weiß nicht, welche Pralinen wir gern hätten. Das kann man ihm beibringen. Lina wird ihrem Roboter beibringen, der richtigen Person die Pralinen zu geben. Maria mag Vollmilchschokolade.
Es ist ihre Anforderung, wenn sie eine Praline isst. Leons Anforderung an eine Praline ist, dass sie aus dunkler Schokolade ist. Anforderungen bestimmen, was der Roboter tun soll, sie bestimmen die Bedingungen. Eine Bedinung kann nur wahr oder falsch sein, erfüllt oder nicht erfüllt, niemals irgendwas dazwischen. Jetzt wird Lina dem Roboter erklären, was er tun soll.
Dem Roboter muss alles ganz genau erklärt werden. Die Anweisungen werden in Linas Programm Pseudocode genannt. Der Pseudocode sieht so aus: Nimm eine Praline. Wenn es Vollmilchschokolade ist, gib Maria die Praline. Wenn es dunkle Schokolade ist, gib Leon die Praline.
Lina rückt diese beiden Zeilen im Pseudocode ein. Warum? Um deutlicher zu machen, wie die Bedingungen den Roboter steuern. Der Roboter liest diese Wenn-Anweisung. Wenn die Bedingung erfüllt ist, wird die nächste Anweisung ausgeführt.
Wenn die Bedingung nicht erfüllt ist, überspringt der Roboter alle Anweisungen, die mit dieser Wenn-Reihe verbunden sind. Die Anweisung "Gib Maria die Schokolade" wird nur ausgeführt, wenn die Bedingung "Vollmilchschokolade" erfüllt ist. Die Anweisung "Gib Leon die Schokolade" wird nur ausgeführt, wenn die Bedingung "dunkle Schokolade" erfüllt ist. Wenn Lina diese zwei Zeilen im Pseudocode einrückt, ist es deutlicher, wie die Bedingungen "Vollmilch-" oder "dunkle" Schokolade bestimmen, welche Anweisungen ausgeführt werden sollen. Jetzt lasst uns mal sehen, ob der Roboter etwas gelernt hat.
Der Roboter nimmt eine Praline. Es ist dunkle Schokolade und die erste Bedingung ist ... nicht erfüllt. Der Roboter überspringt die Anweisung, Maria die Praline zu geben. Dann kommt die nächste Zeile.
Die Bedingung ist dunkle Schokolade. Die Bedingung ist erfüllt. Der Roboter hält dunkle Schokolade in der Hand. Also führt der Roboter die Anweisung der nächsten Zeile aus und gibt Leon die Praline. Maria hat keine Praline bekommen und startet deshalb das Programm im Roboter neu.
Der Roboter nimmt eine weitere Praline. Diesmal ist es Vollmilchschokolade und die erste Bedingung ist ... erfüllt. Deshalb gibt der Roboter Maria die Praline. Das Programm macht mit der nächsten Zeile weiter und der Roboter steht mit leeren Händen da.
Er hat gar keine Schokolade! Ist die Bedingung "dunkle Schokolade" dann erfüllt oder nicht erfüllt? Wir hatten gesagt, dass programmierte Bedingungen nur entweder wahr oder falsch sein können und nichts dazwischen. Keine Praline bedeutet, dass die Bedingung "dunkle Schokolade" nicht erfüllt ist, weil gar keine Praline da ist. Also überspringt das Programm die Anweisung, Leon eine Praline zu geben und stoppt.
Durch Bedingungen kann der Roboter Maria und Leon die Pralinen geben, die sie am liebsten mögen. Jeder ist glücklich und zufrieden. Guter Roboter!