Benutzer-Werkzeuge

Webseiten-Werkzeuge


python:zaehlschleifen

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
python:zaehlschleifen [2020/08/29 09:41] – [Python-Syntax] lutzpython:zaehlschleifen [2021/11/30 09:48] (aktuell) – [Vertiefung] lutz
Zeile 15: Zeile 15:
 In Python kann man eine Zählschleife mit Hilfe der ''%%for%%''- und der ''%%range%%''-Anweisung umsetzen. Die ''%%range%%''-Anweisung erzeugt dabei die Werte, die die Zählvariable durchlaufen soll. Sie besitzt den folgenden Aufbau: In Python kann man eine Zählschleife mit Hilfe der ''%%for%%''- und der ''%%range%%''-Anweisung umsetzen. Die ''%%range%%''-Anweisung erzeugt dabei die Werte, die die Zählvariable durchlaufen soll. Sie besitzt den folgenden Aufbau:
  
-<code>+<code python>
 range(startwert, endwert, schrittweite) range(startwert, endwert, schrittweite)
 </code> </code>
 +
 +''%%startwert%%'' und ''%%schrittweite%%'' können weggelassen werden. Es wird dann angenommen, dass der Startwert den Wert 0 hat und die Schrittweite den Wert 1 hat. Fehlt nur ein Parameter, so wird
 +angenommen, dass die Schrittweite fehlt. ''%%range%%'' erzeugt nun eine Folge von Werten, die mit dem Startwert beginnt. Der jeweils nächste Wert ergibt sich, indem man zu einem Wert die Schrittweite addiert. Das wird wird immer weiter fortgesetzt, solange ein Wert noch keiner ist als der Endwert.
 +
 +Im Zusammenhang mit einer sogenannten ''%%for%%''-Schleife benutzt man ''%%range%%'' nun wie folgt:
 +
 +<code python>
 +for i in range(startwert, endwert, schrittweite):
 +   ...Anweisungen...
 +</code>
 +
 +Die Variable i nimmt nun bei jeden Schleifendurchlauf einen von ''%%range%%'' erzeugten Wert an. Man kann nun i mit dem jeweiligen Wert in der Schleife benutzen oder man benutzt das Konstrukt einfach, um die Anzahl der Durchläufe festzulegen.
 +
 +'%%range%%'' erzeugt eigentlich ein Objekt vom Datentyp **Liste**. Diesen Datentyp habe ich in einem extra Wikieintrag bechrieben.
 +
 +  * [[python:zaehlschleifen:listen|Listen]]
 +
 +===== Beispiel =====
 +
 +Schreibe ein Programm, dass nach Eingabe einer Zahl bis zu dieser zählt.
 +
 +==== Verbale Kurzbeschreibung ====
 +
 +Für zahl = anfangswert bis zahl = endwert mit schrittweite wiederhole:
 +  * Ausgabe: zahl
 +
 +==== Struktogramm ====
 +
 +{{ :python:beispiel_zaehlschleife.png?direct&200 |}}
 +
 +==== Pythonprogramm ====
 +
 +<code python beispiel_zaehlschleife.py>
 +n = int(input("Zahl: "))
 +for i in range(1,n+1):
 +    print(i)
 +</code>
 +
 +===== Vertiefung =====
 +
 +Im Lehrbuch inf-Schule wird das Thema nochmal vertieft:
 +
 +https://www.inf-schule.de/imperative-programmierung/python/konzepte/wiederholungen/exkurs_zaehlschleifen
 +===== Aufgaben =====
 +
 +**Aufgabe 1**
 +
 +Gib jeweils an, welche Werte i annimmt!
 +
 +a)
 +<code python>
 +for i in range(1,2,9)
 +</code>
 +
 +b)
 +<code python>
 +for i in range(3,11)
 +</code>
 +
 +c)
 +<code python>
 +for i in range(5)
 +</code>
 +
 +**Aufgabe 2**
 +
 +Schreibe ein Programm, dass nach Eingabe einer Zahl alle Zahlen bis zu dieser Zahl ausgibt, die bei der Division durch 7 den Rest 4 lassen!
 +
 +\\
 +
 +[[python:loesungen:zaehlschleifen| >> Lösungen]]
 +
 +[[python:zus|>> Zusammenfassung algorithmische Gundstrukturen]]
 +
 +
 +\\
 +
 +~~DISCUSSION | Hier können Fragen zum Inhalt der Seite gestellt werden. ~~
 +
python/zaehlschleifen.1598686894.txt.gz · Zuletzt geändert: 2020/08/29 09:41 von lutz