neuerlehrplan:klasse10:verzweigungen
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| neuerlehrplan:klasse10:verzweigungen [2025/09/05 18:03] – [Verschachtelte Verzweigungen] lutz | neuerlehrplan:klasse10:verzweigungen [2025/09/12 16:50] (aktuell) – [Übungen] lutz | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ======Verzweigungen====== | ======Verzweigungen====== | ||
| Häufig ist es notwendig, die Ausführung eines Algorithmus in Abhängigkeit von bestimmten Bedingungen zu verzweigen. Dazu verwendet man Alternativen bzw. Verzweigungen. Diese werden hier vorgestellt. | Häufig ist es notwendig, die Ausführung eines Algorithmus in Abhängigkeit von bestimmten Bedingungen zu verzweigen. Dazu verwendet man Alternativen bzw. Verzweigungen. Diese werden hier vorgestellt. | ||
| + | |||
| + | 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%> | ||
| + | {{ : | ||
| + | </ | ||
| + | |||
| + | Danach kann man das Notebook zusammen mit den Bildern z.B. bei https:// | ||
| + | |||
| =====Einfache Verzweigung mit und ohne Alternative===== | =====Einfache Verzweigung mit und ohne Alternative===== | ||
| Zeile 134: | Zeile 143: | ||
| In diesem Struktogramm befindet sich im '' | In diesem Struktogramm befindet sich im '' | ||
| + | <code python> | ||
| + | n = int(input(" | ||
| + | if n < 0: | ||
| + | print(" | ||
| + | print(" | ||
| + | else: | ||
| + | if n > 0: | ||
| + | print(" | ||
| + | else: | ||
| + | print(" | ||
| + | print(" | ||
| + | </ | ||
| + | |||
| + | ====Formulierung der Bedingung==== | ||
| + | |||
| + | Im Abschnitt **Grundlegendes zu Python** haben wir die folgenden Operatoren kennengelernt: | ||
| + | |||
| + | === Arithmetische Operatoren === | ||
| + | |||
| + | ^Operator ^Wirkung bei ^^^ | ||
| + | ^ ::: ^int ^float ^str ^ | ||
| + | ^ + |Addition|Addition|Verkettung| | ||
| + | ^ - |Subtraktion|Subtraktion| | | ||
| + | ^ * |Multiplikation|Multiplikation| | | ||
| + | ^ / |Division|Division| | | ||
| + | ^ %%//%% |ganzzahlige Division|ganzzahlige Division| | | ||
| + | ^ % |ganzzahliger Rest (Modulo) | Rest | | | ||
| + | ^ %%**%% | Potenzieren | Potenzieren, | ||
| + | |||
| + | === Vergleichsoperatoren === | ||
| + | |||
| + | ^Operator ^Wirkung^ | ||
| + | ^ '' | ||
| + | ^ '' | ||
| + | ^ '' | ||
| + | ^ '' | ||
| + | ^ '' | ||
| + | ^ '' | ||
| + | |||
| + | === Logische Operatoren === | ||
| + | |||
| + | ^Operator ^Wirkung^ | ||
| + | ^ A and B | ist wahr, wenn A und B wahr sind | | ||
| + | ^ A or B |ist wahr, wenn A oder B oder beide wahr sind | | ||
| + | ^ not A |ist wahr, wenn A nicht wahr (falsch) ist | | ||
| + | |||
| + | |||
| + | Diese Opratoren können benutzt werden um die Bedingung zu formulieren. Die Bedingung muss vom Datentyp **bool** sein. | ||
| + | |||
| + | Manchmal ist die Bedingung nich offensichtlich und man muss sich etwas einfallen lassen | ||
| + | |||
| + | ===Beispiel 4=== | ||
| + | |||
| + | "Die Zahl n ist durch 3 teilbar" | ||
| + | |||
| + | <code python> | ||
| + | n%3 == 0 | ||
| + | </ | ||
| + | |||
| + | =====Mehrfachverzweigung===== | ||
| + | |||
| + | In Python gibt es auch die Möglichkeit, | ||
| + | |||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | |||
| + | Wenn noch mehr Bedingungen nötig sind, wird die Verzweigung noch weiter verschachtelt und der Quellcode wird unübersichtlich. Deshalb hat man in Python die '' | ||
| + | |||
| + | <code python> | ||
| + | if Bedingung1: | ||
| + | ... Anweisungen ... | ||
| + | elif Bedingung2: | ||
| + | ... Anweisungen ... | ||
| + | elif Bedingung3: | ||
| + | ... Anweisungen ... | ||
| + | ... | ||
| + | else: | ||
| + | ... Anweisungen ... | ||
| + | </ | ||
| + | |||
| + | In Python würde das geänderte Beispiel 3 so aussehen: | ||
| + | |||
| + | |||
| + | ===Beispiel 4=== | ||
| + | |||
| + | |||
| + | <code python> | ||
| + | n = int(input(" | ||
| + | if n < 0: | ||
| + | print(" | ||
| + | print(" | ||
| + | elif n > 0: | ||
| + | print(" | ||
| + | print(" | ||
| + | else: | ||
| + | print(" | ||
| + | print(" | ||
| + | </ | ||
| + | |||
| + | Am Beispiel 4 möchte ich auch zeigen, wie man eine Mehrfachverzweigung im Struktogramm darstellt: | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | ===== Übungen ===== | ||
| + | |||
| + | Im folgenden Jupyternotebook finden sich einige Übungsaufgaben zum Thema. | ||
| + | |||
| + | <WRAP center round download 60%> | ||
| + | {{ : | ||
| + | </ | ||
neuerlehrplan/klasse10/verzweigungen.1757088231.txt.gz · Zuletzt geändert: von lutz
