Die While-Funktion

Wenn du eine SIM-Karte in deinem Smartphone besitzt, wirst du beim Neustart des Gerätes in der Regel dreimal nach einer vierstelligen SIM-Karten PIN gefragt. Wurde die PIN dreimal falsch eingegeben wird meist nach der PUK gefragt bevor die SIM-Karte für eine gewisse Zeit gesperrt wird. Wir schauen uns nun einmal genauer an, wie dieses Szenario (einfach) in Python realisiert werden kann.

Icon by Smashicons from flaticon.com

Hinweis: Im folgenden vereinfachen wir die Situation derart, dass nach dreimaliger Falscheingabe die SIM-Karte direkt 30 Sekunden gesperrt wird.

Aufgabe 1: Jona hat zur Lösung des Problems ein Struktogramm angefertigt. Übersetze dieses Programm auf der Website in einen Quelltext.

Optimierung mittels einer Wiederholung

Das von Jona aufgestellte Programm ist aufwendig und verschachtelt, es kann mithilfe einer sogenannten Wiederholung, oder auch Schleife genannt, weiter optimiert werden. Dafür nutzen wir eine kopfgesteuerte WHILE()-Schleife. Dabei läuft ein Anweisungsblock solange durch, wie eine Bedingung zutrifft. Die Bedingung wird immer vor einem Durchlauf des Anweisungsblocks geprüft. Ist sie falsch, wird der Anweisungsblock nicht aufgerufen.

Icon by Freepik from flaticon.com

Aufgabe 2: Ändere dein Programm aus Aufgabe 1 ab. Nutze eine WHILE()-Schleife. Vergleiche im Anschluss deine Lösung mit der von der Website , nimm ggf. Anpassungen vor. Hinweis: Eine Schleife kann mit dem Befehl break beendet werden!