Teil 3

Aus ProgrammingWiki
Archivierte Version vom 2014-09-17T19:55:07+00:00. Aktuelle Version

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>;
}</anweisung></anweisung></anweisung></anweisung></anweisung></anweisung></bedingung2></bedingung1>

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.


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.svg

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