»if« mit »else«
Dafür gibt es den Befehl else, der bei Bedarf nach einem if-Befehl verwendet werden kann. else bedeutet so viel wie »ansonsten« oder »anderenfalls«. Und genau das brauchen wir hier.
Zum Beispiel könnten wir das Programm jetzt so schreiben:
Zuerst wird also geprüft, ob die 1 eingegeben wurde. Wenn ja, dann wird die Zeit für Fußgänger berechnet. Danach kommt aber nicht wie bisher die zweite if-Abfrage, sondern eine else-Abfrage. else bezieht sich immer auf das vorherige if und bedeutet so viel wie »ansonsten – wenn die vorherige Abfrage nicht zutrifft«.
Wenn also nicht die 1 eingegeben wurde und es egal ist, was da stattdessen eingegeben wurde, dann wird automatisch die else-Bedingung wahr. In diesem Fall wird also immer die Zeit für Radfahrer berechnet.
So würde das Programm keinen Fehler mehr erzeugen, egal, was man eingibt. Probiere es aus:
-
Wenn du 1 eingibst, wird die Strecke für Fußgänger berechnet.
-
Wenn du 2 eingibst, wird die Strecke für Radfahrer berechnet.
-
Wenn du irgendwas anderes eingibst, wird die Strecke ebenfalls für Radfahrer berechnet.
Fehlermeldungen gibt es keine, was auch immer du eingibst, denn dank else hast du bei jeder beliebigen Eingabe eine Zeitberechnung.
Vielleicht macht dich das aber noch nicht ganz glücklich, denn eigentlich soll der Benutzer wirklich nur 1 oder 2 eingeben und ansonsten eine Meldung bekommen, dass seine Eingabe nicht korrekt war.
Das kann man natürlich auch programmieren. Es gibt mehrere Möglichkeiten, das zu erreichen. Eine wäre es, zunächst mal abzufragen, ob wirklich eine 1 oder eine 2 eingegeben wurde.