If-Bedingungen
Aus ProgrammingWiki
Diese Beispiele sind z.T. dem Brückenkurs Webapps der HS Zittau/Görlitz entnommen.
Bedingungen
Oft sollen bestimmten Anweisungen nur ausgeführt werden, wenn eine bestimmte Bedingung erfüllt ist.
Aufbau von If-Anweisungen
if(<Bedingung>){ ... }
Zwischen die geschweiften Klammern werden ein oder mehrere Anweisungen geschrieben, die ausgeführt werden sollen, wenn die <Bedingung> wahr ist. Es handelt sich um den sogenannten If-Block.
Natürlich können auch mehrere Bedingungen nacheinander geschrieben werden:
if(<Bedingung1>){ ... } if(<Bedingung2>){ ... }
Eine If-Anweisung kann auch einen Sonst-Block (oder Else-Block) besitzen:
if(<Bedingung>){ ... }else{ ... }
Zwischen die geschweiften Klammern des Else-Blocks werden ein oder mehrere Anweisungen geschrieben, die ausgeführt werden sollen, wenn die <Bedingung> false ergibt.
Beispiel
Das Programm gibt den Text "Es ist kalt." aus, wenn die Temperatur <= 15 ist. Ändern Sie den Wert der Variable "temperatur", um das Programm zu testen!
Aufbau von Bedingungen
Die <Bedingung> muss ein logischer Ausdruck sein, der wahr oder falsch (d.h. true oder false) ergibt.
Beispiele für logische Ausdrücke
Ändern Sie in den folgenden Beispielen die Werte der Variablen x und y, um die Programme zu testen!
x > y
x < y
Außerdem können die Operatoren >= (größer gleich) sowie <= (kleiner gleich) verwendet werden.
x>=a && x<=b (Test, ob x zwischen den Werten a und b liegt)
x == y (Test, ob x und y den gleichen Wert besitzen)
x != y (Test, ob x und y ungleiche Werte besitzen)
Aufgaben
Erstellen Sie eine If-Anweisung: Wenn der Wert von x > 0 ist, soll der Text "die Zahl ist positiv" ausgegeben werden. Ansonsten soll der Text "die Zahl ist negativ" ausgegeben werden.
Erstellen Sie eine If-Anweisung: Wenn das Alter größer gleich 18 ist, soll der Text "Die Person ist volljährig." ausgegeben werden. Ansonsten soll der Text "Die Person ist minderjährig" ausgegeben werden.
Formulieren Sie nacheinander folgende If-Anweisungen:
- Wenn die Uhrzeit zwischen 0 und 6 liegt - Ausgabe: "Es ist Nacht."
- Wenn die Uhrzeit zwischen 6 und 12 liegt - Ausgabe: "Es ist Vormittag."
- Wenn die Uhrzeit zwischen 12 und 18 liegt - Ausgabe: "Es ist Nachmittag."
- Wenn die Uhrzeit zwischen 18 und 24 liegt - Ausgabe: "Es ist Abend."
- Wenn die Uhrzeit < 0 ist - Ausgabe "ungültige Uhrzeit"
- Wenn die Uhrzeit > 24 ist - Ausgabe "ungültige Uhrzeit"
Bedingungen mit Und verknüpfen
Mit dem Operator && (Und) lassen sich beliebig viele Bedingungen verknüpfen.
Beispiel
Gegeben ist folgender Entscheidungsbaum bei der Risikoabschätzung für eine KFZ-Versicherung:
- Wenn das Geschlecht "weiblich" ist, besteht ein geringes Risiko.
- Wenn das Geschlecht "männlich" und das Alter <= 35 ist, besteht ein geringes Risiko.
- Wenn das Geschlecht "männlich" und das Alter > 35 und der Autotyp "Van" ist, besteht ein geringes Risiko.
- Wenn das Geschlecht "männlich" und das Alter > 35 und der Autotyp "Coupe" ist, besteht ein hohes Risiko.
Es soll eine Funktion bewertung entwickelt werden, die in Abhängigkeit von den Parametern Geschlecht, Alter und Autotyp die Ausgabe "hohes Risiko" oder "geringes Risiko" erzeugt.
Aufgabe 1
Entwickeln Sie eine Funktion, die vorhersagt, ob ein Apfelbaum Früchte tragen wird.
Wenn er Früchte trägt, soll die Funktion "ja" ausgeben, ansonsten: "nein".
Die Vorhersage hängt von den Parametern Alter, Sorte und Boden ab und wird von diesem Entscheidungsbaum abgeleitet:
Aufgabe 2
Entwickeln Sie eine Funktion zur Kreditprüfung. Ob ein Kredit gewährt wird oder nicht, hängt vom Verschuldungsgrad und vom Einkommen ab. Die Entscheidung wird aus diesem Entscheidungsbaum abgeleitet:
Die Funktion pruefe_kredit soll "Kreditzusage" ausgeben, wenn der Kredit bewilligt wird und "kein Kredit", wenn er nicht bewilligt wird. Verschuldungsgrad und Einkommen werden als Parameter übergeben. Der Verschuldungsgrad wird als gebrochene Zahl zwischen 0 und 1 repräsentiert (z.B. 0.4 für 40%)