i

Endlosschleifen

Frustrierende Erlebnisse

Jeder kennt diese Situation: Man hat ein Programm entwickelt und will es testen. Aber, nichts tut sich, Python liefert kein Ergebnis.

Python Shell

Ein Blick in den Quelltext verrät hier die Ursache: Endlosschleife!

def primzahl(n):
    if n == 1:
        prim = False
    else:
        prim = True
        i = 2
        while i < n:
            if n % i == 0:
                prim = False
    return prim

Man muss die Programmausführung ohne Ergebnis abbrechen (in Python mit [Strg][C]).

Aufgabe 1

Findest du den Fehler? Korrigiere ihn und teste dann die Funktion noch einmal.

Aufgabe 2

Es gibt typische Fehler, die eine Endlosschleife verursachen. Beschreibe den Fehler, der hier vorliegt.

Aufgabe 3

Es ist nicht immer so einfach wie oben, Endlosschleifen direkt am Quelltext zu erkennen. Verdeutliche das mit selbst gewählten Beispielen.

Suche

v
2.5.1.1
www.inf-schule.de/algorithmen/berechenbarkeit/halteproblem/station_endlosschleifen
www.inf-schule.de/2.5.1.1
www.inf-schule.de/@/page/W0ABpf2J7qUKXidG

Rückmeldung geben