zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Welche Endung wird ausgewählt, wenn (count+1) gleich 5 ist?

Antwort:

suffix = "th";

Zusammengehörende if und else

Wie das geschachtelte if funktioniert, wenn (count+1) gleich 5 ist, sehen wir hier:

if ( count+1  == 2  )      <--- false: zum false-Zweig gehen
  suffix = "nd";
else
  if ( count+1 == 3  )     <--- false: zum inneren false-Zweig gehen
    suffix = "rd";
  else
    suffix = "th";         <--- innerer false-Zweig wird ausgeführt

Wenn (count+1) größer oder gleich 4 ist, wird die Endung "th" ausgewählt werden.

Es ist manchmal schwierig zu sehen wie if und else in Programmen wie diesem zusammengehören. Geschweifte Klammern können verwendet werden, um zu zeigen welche zusammengehören. Aber lasst uns mit einer Regel beginnen, die nichts damit zu tun hat. Die Regel ist:

Wir beginnen mit dem ersten if und arbeiten uns abwärts. Jedes else gehört zu dem nähesten vorausgehenden if, das kein else hat. Ein if gehört genau zu einem else und ein else gehört genau zu einem if.

Wir sollten das Programm einrücken, um das zu zeigen. Aber denkt daran, dass der Compiler Einrücken ignoriert. Hier ist noch einmal das Programmfragment, das die zusammengehörigen if und else zeigt.

if ( count+1  == 2  )
  suffix = "nd";
else 
  if ( count+1 == 3  )
    suffix = "rd";
  else
    suffix = "th";

Die if und else eines zusammengehörenden Paares sind Teil einer if-Anweisung. Zum Beispiel ist das oben stehende rote Paar Teil einer Anweisung, so dass die Grundstruktur des Programms folgendermaßen aussieht:

if ( count+1  == 2  )
  suffix = "nd";
else 
  Falsch-Zweig

Hier ist ein weiteres Beispiel. Es ist nicht sauber eingerückt. Wir benützen die Regel, um herauszubekommen welches else zu welchem if gehört.

if ( a == b )

if ( d == e )
  gesamt = 0;

else
  gesamt = gesamt + a;

else
  gesamt = gesamt + b;

FRAGE 11:

Welche if und else gehören zusammen?