Eine gute Antwort wäre:

if ( zahl < 0 )
    System.out.println("Die Zahl " + zahl + " ist negativ");  // true-Zweig
else
{
    System.out.println("Die Zahl " + zahl + " ist positiv");  // false-Zweig
    System.out.print  ("Positive Zahlen sind groesser ");     // false-Zweig
    System.out.println("oder gleich Null ");                  // false-Zweig
}
System.out.println("Good-bye fuer jetzt");                    // wird immer ausgeführt

Beachten Sie, dass in diesem Programm der true-Zweig eine Anweisung hat, die kein Block ist und, dass der false-Zweig eine Anweisung hat, die ein Block ist (und als ein Block drei Anweisungen enthält).

Übung

An einer Kinokasse wird für eine Person, die jünger als 17 Jahre ist "Kindertarif" verlangt. Andernfalls wird für eine Person "Erwachsenpreis" verlangt. Hier ist ein teilweise vollständiges Programm, das dies tut:

import java.io.*;
class KinoKasse
{
  public static void main (String[] args) throws IOException
  {
     BufferedReader stdin =
        new BufferedReader ( new InputStreamReader( System.in ) );

    String inData;
    int    alter;

    System.out.println("Geben Sie Ihr Alter an:");
    inData = stdin.readLine();
    alter    = Integer.parseInt( inData );     // inData in int konvertieren

    if ( __________________  )
    {
      System.out.println("Kindertarif.");
    }
    else
    {
      System.out.println("Erwachsenentarif.");
    }
    System.out.println("Geniessen Sie den Film.");    // wird immer ausgeführt
  }
}

In diesem Programm sind sowohl der true- als auch der false-Zweig Blockanweisungen. Jeder Block hat nur eine Anweisung, aber das ist OK. Alles was Sie tun müssen, ist die Lücke auszufüllen, so dass das Programm den korrekten Block für das Alter auswählt, das eingegeben wurde.

FRAGE 9:

Füllen Sie die Lücke des Programms aus. Vielleicht möchten Sie eine Kopie des Programms in Notepad einfügen, Ihre vorgeschlagene Korrektur vornehmen und es ausführen, um zu sehen ob es so funktioniert wie Sie denken.

Inhaltsverzeichnis