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

Eine gute Antwort könnte sein:

suffix = "th";

Zusammengehörende if's und else's

Hier ist wie das geschachtelte if funktioniert, wenn (count+1) gleich 5 ist:

if ( count+1  == 2  )      <--- false: zum Falsch-Zweig gehen
  suffix = "nd";
else
  if ( count+1 == 3  )     <--- false: zum inneren Falsch-Zweig gehen
    suffix = "rd";
  else
    suffix = "th";         <--- innerer Falsch-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 die if's und else's in Programmen wie diesem zusammengehören. Geschweifte Klammern können verwendet werden um zu zeigen welche zusammengehören, aber lassen Sie uns mit einer Regel beginnen, die nichts damit zu tun hat. Die Regel ist:

Beginnen Sie mit dem ersten if und arbeiten Sie sich 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.

Sie sollten das Programm einrücken um dies zu zeigen, aber denken Sie daran, dass der Compiler Einrücken ignoriert. Hier ist noch mal das Programmfragment, das die zusammengehörigen if's und else's 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. Benützen Sie die Regel um herauszubekommen welches if zu welchem if gehört.

if ( a == b )

if ( d == e )
  total = 0;

else
  total = total + a;

else
  total = total + b;

FRAGE 11:

Welche if's und else's gehören zusammen?