Welche Endung wird ausgewählt, wenn (count+1)
gleich 5 ist?
suffix = "th";
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 erstenif
und arbeiten uns abwärts. Jedeselse
gehört zu dem nähesten vorausgehendenif
, das keinelse
hat. Einif
gehört genau zu einemelse
und einelse
gehört genau zu einemif
.
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;
Welche if
und else
gehören zusammen?