Benutzer-Werkzeuge

Webseiten-Werkzeuge


neuerlehrplan:klasse10:schleifen

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
neuerlehrplan:klasse10:schleifen [2025/09/13 14:28] – [Die for-Anweisung und Listen] lutzneuerlehrplan:klasse10:schleifen [2025/09/13 16:22] (aktuell) – [Übungen] lutz
Zeile 1: Zeile 1:
 ======Schleifen====== ======Schleifen======
 +
 +Die Beispiele aus diesem Abschnitt können in einem Jupyternotebook nachvollzogen werden. Es muss zusammen mit den Bilddateien vorher entpackt werden.
 +
 +<WRAP center round download 60%>
 +{{ :neuerlehrplan:klasse10:schleifen.zip |Notebook Schleifen}}
 +</WRAP>
 +
 +Danach kann man das Notebook zusammen mit den Bildern z.B. bei https://jupyter.org/try -> JupyterLab hochladen und öffnen.
  
 Häufig wiederholen sich Anweisungen in Algorithmen. Solche Anweisungen lassen sich in der Datenstruktur Schleife zusammenfassen. Die Frage ist nun, wie oft die Anweisungen wiederholt werden sollen. Auf diese Frage gibt es mehrere Antworten: Häufig wiederholen sich Anweisungen in Algorithmen. Solche Anweisungen lassen sich in der Datenstruktur Schleife zusammenfassen. Die Frage ist nun, wie oft die Anweisungen wiederholt werden sollen. Auf diese Frage gibt es mehrere Antworten:
Zeile 187: Zeile 195:
 </code> </code>
  
-Ausgabe+Ausgabe:
  
 <code python> <code python>
 21 21
 </code> </code>
 +
 +
 +Listen sind in Python ein sogenannte abzählbarer (itterierbarer) Datentyp. Neben Listen gibt es in Python noch weitere solche Datentypen (z.B. Tupel). Mit der ''%%for%%''-Anweisung kann man nun ohne die Verwendung von ''%%range%%'' eine Schleife über alle Elemente eines solchen Datentyps laufen lassen.
 +
 +
 +**Beispiel 6**
 +
 +<code python>
 +liste = [3, 5.5, "Python ist cool!", False]
 +for wert in liste:
 +    print(wert)
 +</code>
 +
 +=====Endlosschleifen=====
 +
 +Wenn ich im Schleifenkopf schreibe 
 +
 +<code python>
 +while True:
 +    ... Anweisungen ... 
 +</code>
 +
 +ist die Schleifenbedingung immer erfüllt und die Schleife endet nie. Es entsteht eine Endlosschleife. Diese widerspricht eigentlich der Algorithmeneigenschaft Endlichkeit.
 +
 +Es gibt aber Möglichkeiten, wie man eine solche Schleife anders beenden kann:
 +
 +<WRAP center round box 60%>
 +  * Die Anweisung **break** beendet eine Schleife.
 +  * Die Anweisung **continue** beendet den aktuellen Schleifendurchlauf und beginnt mit dem nächsten.
 +</WRAP>
 +
 +**Beispiel 7**
 +
 +<code python>
 +while True:
 +    zahl = int(input("Zahl: "))
 +    print("Quadratzahl:",zahl*zahl)
 +    eingabe = input("Soll das Programm fortgesetzt werden? (J|N)")
 +    if eingabe == 'N':
 +        break
 +</code>
 +
 +===== Übungen =====
 +
 +Im folgenden Jupyternotebook finden sich einige Übungsaufgaben zum Thema.
 +
 +<WRAP center round download 60%>
 +{{ :neuerlehrplan:klasse10:schleifen_uebungen.zip |Übungen}}
 +</WRAP>
 +
neuerlehrplan/klasse10/schleifen.1757766488.txt.gz · Zuletzt geändert: von lutz