Skip to content

If-Else-Verzweigung

Programmieren

Mit Hilfe der If-Else-Verwzeigung können wir Code nur ausführen, wenn bestimmte Bedingungen erfüllt sind.

Wenn … dann …

Syntax

if (ohne else)

python
if bedingung:
	#if-Block

if-else

python
if bedingung:
	#if-Block
else:
	#else-Block

Wenn … dann … sonst …

if (mit elif)

eine Spezialität von Python sind die elif-Blöcke. elif steht für «else-if». Also im Sinn von «sonst wenn».

python
if bedingung1:
	#if-Block
elif bedingung2:
	#elif-Block
elif bedingung3:
	#elif-Block
...
elif bedingungX:
	#elif-Block
else
	#else-Block

Wenn … dann … sonst wenn … dann … sonst wenn … dann … sonst …

Tipp

In Python sind die if-else-Strukturen so aufgebaut:

  • zuerst muss ein if kommen (mit Bedingung)
  • dann können 0 oder mehrere elif kommen (mit Bedingung)
  • am Schluss kann ein else kommen (ohne Bedingung)

Aufgaben

Aufgabe

Wir wollen schrittweise eine zufällige ganze Zahl beschreiben. Einige Dinge funktionieren, andere müssen noch ergänzt werden:

Wir definieren eine Funktion die sagt, ob die Zahl gerade ist:

python
def istGerade(zahl):
    return zahl %  2 == 0

Die nächste Funktion soll die Anzahl Stellen der Zahl liefern. Implementiere sie!

python
def anzahlStellen(zahl):
    pass

Die nächste Funktion soll herausfinden, ob die Zahl eine Primzahl ist. Implementiere sie!

python
def istPrimzahl(zahl):
    pass

Die nächste Funktion verwendet verwendet die obigen Funktionen um eine Zahl zu beschreiben. Sie muss ergänzt werden!

python
def beschreibe(zahl):
    beschreibung = str(x) + " ist"
    if istGerade(zahl):
        beschreibung = beschreibung + " gerade"
    else:
        beschreibung = beschreibung + " ungerade"
    return beschreibung

Nun werden 10 zufällige Zahlen generiert und durch unsere Funktionen beschrieben:

python
from random import randint

i = 0
while i < 10:
    x = randint(0,100)
    print(beschreibe(x))
    i = i + 1

Was könnte man sonst noch herausfinden? Definiere weitere Funktionen und verwende diese in der Funktion beschreibe().

Gymnasium Kirchenfeld, fts & ros