Teil 3

Aus ProgrammingWiki

Wechseln zu: Navigation, Suche

Loading
In Java können if-Konstrukte auch ineinander verschachtelt werden. Dies ist hilfreich, um komplexe Fallunterscheidungen abbilden zu können. Für zwei ineinander verschachtelte Bedingungen sieht das Schema wie folgt aus:

if(<Bedingung1>){
  if(<Bedingung2>){
    <Anweisung>;
    ...
    <Anweisung>;
  }else{
    <Anweisung>;
    ...
    <Anweisung>;
  }
}els
  <Anweisung>;
  ...
  <Anweisung>;
}

Das heißt: "Wenn Bedingung1 und Bedingung2 erfüllt sind, führe den ersten Block von Anweisungen aus. Wenn Bedingung1 erfüllt ist und Bedingung2 nicht, führe den zweiten Block von Anweisungen aus. Wenn keine der Bedingungen erfüllt ist, führe den letzten Block von Anweisungen aus!"

Es sind beliebige weitere Verschachtelungen möglich. Der else-Block kann wahlweise weggelassen werden.


Wichtiger Hinweis

Für die nachfolgenden Aufgaben müssen wir uns kurz mit dem Datentyp String auseinandersetzen. Einer Variable vom Typ String können Sie einen Text in Anführungszeichen als Wert zuweisen.

Soweit so gut. Wenn wir Bedingungen formulieren möchten, bei denen Texte miteinander verglichen werden, benötigen wir die Methode equals. Wir verwenden sie wie folgt:

Für Texte ersetzt die Methode equals also den Operator ==. Näheres dazu erfahren Sie im Studium.

Aufgabe 1

Entwickeln Sie eine Methode, die vorhersagt, ob ein Apfelbaum Früchte tragen wird. Wenn er Früchte trägt, soll die Methode true zurückgeben, ansonsten false. Die Vorhersage hängt von den Parametern Alter, Sorte und Boden ab und wird von diesem Entscheidungsbaum abgeleitet:

Baum.png

Die Methode soll in zwei Varianten bereitgestellt werden: einmal mit und einmal ohne verschachtelte Bedingungen!


Aufgabe 2

Entwickeln Sie ein kleines Expertensystem 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:

Baum3.png

Die Methode pruefe_kredit soll true zurückgeben, wenn der Kredit bewilligt wird und false, 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%)

Die Methode soll in zwei Varianten bereitgestellt werden: einmal mit und einmal ohne verschachtelte Bedingungen!


Aufgabe 3

Entwickeln Sie ein kleines Expertensystem zur Entscheidungshilfe bei der Wahl des richtigen Kinderwagens. Der Entscheidungsbaum ist hier dargestellt (den gestrichelten Pfeil ignorieren wir einfach):

Baum2.png

Als Starthilfe gebe ich schon einmal die Signatur der Methode vor:

Persönliche Werkzeuge