Das stimmt so aber auch nicht ganz. Wenn da nur noch ein else ohne weitere Bedingung am Schluss steht, fängt der Code danach alle Fälle ab, die vorher "durchs Raster gefallen sind". Beispiel:
Delphi-Quellcode:
if var = 1 then
ShowMessage('var ist 1')
else if var = 2 then
ShowMessage('var ist 2')
else
ShowMessage('var ist weder 1 noch 2');
[edit] Oder mal auf dein Programm angewendet:
Delphi-Quellcode:
IF (summe>23) AND (summe<=29) THEN
writeln('Sie haben ein Genügend erreicht!')
ELSE IF (summe>29) AND (summe<=37) THEN
writeln('Sie haben ein Befriedigend erreicht!')
ELSE IF (summe>37) AND (summe<=44) THEN
writeln('Sie haben ein Gut erreicht!')
ELSE IF (summe>44) AND (summe<=50) THEN
writeln('Sie haben ein Sehr GUt erreicht!')
{wenn wir hier ankommen, stimmt etwas nicht}
ELSE
writeln('Ich weiß nicht wieso, aber in Summe steht Mumpitz drin');
[/edit]