Es soll der Ersatzwiderstand zweier parallel geschalteter Widerstände berechnet werden. Welchen Fehler kann ein Anwender (elektrotechnischer Laie) machen ?
Er kann für einen Widerstandswert einen Wert 0 oder kleiner 0 eingeben (Eingabefehler)! Diesen Fall muss das Programm also abfangen (berücksichtigen) !
Frage: Wie kann eine Fehlerbehandlung des Programms aussehen ?
Angenommen, der Anwender hat für den ersten Widerstand den Wert – 12 eingegeben. Ist es dann noch sinnvoll, ihn den nächsten Widerstandswert eingeben zu lassen ?
Nein. Nachdem der Anwender eine fehlerhafte Eingabe gemacht hat, soll das Programm gleich darauf reagieren. Welche Möglichkeiten gibt es ?
1. Möglichkeit: Wenn der Anwender eine falsche Eingabe macht, wird auf den Bildschirm eine entsprechende Meldung gebracht und das Programm beendet.
2. Möglichkeit: Das Programm verlangt so lange eine neue Eingabe, bis der Anwender eine richtige Eingabe macht.
Aufgabe: Realisieren Sie diese zwei Möglichkeiten jeweils durch ein Struktogramm !
Erste Möglichkeit
fehler = 0 Ausgabe(“ 1. Widerstand eingeben“) Eingabe(r 1) r 1>0 W Ausgabe(“ 2. Widerstand eingeben“) Eingabe(r 2) Widerstand ersatz berechnen -1 fehler = -1 r 2>0 W -2 F F fehler = -2 fehler sonst Ausgabe("Fehler Ausgabe(ersatz) Ausgabe("Fehler bei 1. Widerstand") bei 2. Widerstand") Um die "eigentliche" Berechnung herum muss das Fehlermanagement "gestrickt" werden.
Zweite Möglichkeit
Ausgabe(“ 1. Widerstand eingeben“) Eingabe(r 1) while (r 1<=0) Ausgabe(“ 2. Widerstand eingeben“) Eingabe(r 2) while (r 2<=0) Widerstand ersatz berechnen Ausgabe(ersatz) Das Programm "erzieht" der Anwender zu einem intelligenten Verhalten (keine Eingabefehler)