EVA-Prinzip
Problem: Ein Programm soll nach Eingabe der gefahrenen Km und der verbrauchten Liter den Spritverbrauch auf 100Km berechnen.
Implementieren und testen Sie das Programm.
public class Benzin{
static double rechneVerbrauch(double liter, double km){
double verbrauch;
verbrauch = liter / km * 100;
return verbrauch;
}
}
Einfügen einer Verbrauchswarnung
Ab einem Verbrauch von 10.0 Litern soll eine Warnung ausgegeben werden
public class Benzin{
static double rechneVerbrauch(double liter, double km){
double verbrauch;
verbrauch = liter / km * 100;
if (verbrauch > 10.0)
System.out.println("Verbrauch zu hoch: "+verbrauch);
return verbrauch;
}
}
Ausgeben bedeutet System.out.print()
Rückgeben bedeutet return...
Zweiseitige Verzweigung
Der Benzinrechner soll nun zusätzlich "Noch OK" ausgeben wenn der Verbrauch kleiner gleich 10.0 Litern ist.
public class Benzin{
static double rechneVerbrauch(double liter, double km){
double verbrauch;
verbrauch = liter / km * 100;
if (verbrauch > 10.0)
System.out.println("Verbrauch zu hoch: "+verbrauch);
else
System.out.println("Noch OK");
return verbrauch;
}
}
Allgemeine if-Anweisung
if (Bedingung)
Verarbeitung bei true
else
Verarbeitung bei false
Bedingung
Die Bedingung ist ein sogenannter Boolscher-Ausdruck er hat nach seiner Auswertung den Wert true oder false Beispiel:
x != 3 wird für x-Werte ungleich 3 true sonst false
Hinweis zu C: In C werden Werte ungleich 0 auch als true gewertet, somit hätte der Ausdruck x - 3 die selbe Wirkung als Bedingung wie x !=3.
In Java müssen Bedingungen vom Typ boolean sein!
Es gibt drei Möglichkeiten für Verarbeitung
Beispiel | leere Anweisung | eine Anweisung | Anweisungsblock |
---|---|---|---|
if (Bedingung) Verarbeitung |
if (Bedingung); |
if (Bedingung) Anweisung; |
if (Bedingung){ Anweisung 1; Anweisung 2; ... Anweisung n; } |
else Verarbeitung |
else ; Hinweis: Hier kann der else-Zweig |
else Anweisung; |
else{ Anweisung 1; Anweisung 2; ... Anweisung n; } |
Verschachtelung von Verzweigungen
Der Benzinrechner soll nun in Abhänigkteit des Verbrauchs ausgeben:
Verbrauch in Litern | Ausgabe |
---|---|
< 6.0 | Sparsam gefahren! |
6.0 .. 8.0 | Normal |
> 8.0 | Zu viel Verbrauch! |
Erweitern Sie Ihre Lösung entsprechend.
Tabelle umsetzen
Eine Methode Tabelle.bewerte(p:GZ) soll die Wertung einer Aufgabe übernehmen, nach der Eingabe der Punktzahl wird eine Bewertung ausgegeben:
Eingabe p | Ausgabe |
---|---|
p<0 | "Fehler" |
0..24 | "schlecht" |
25..49 | "gut" |
50..* | "super" |
Analysieren Sie das Problem und erstellen Sie eine Lösung.
Wie Testen: Mit welchen Eingaben können Sie beweisen, daß Ihre Lösung korrekt ist?
Implementieren und testen Sie Ihre Lösung.
Erstellen Sie ein Struktogramm für Ihre Lösung.
Betrachten Sie nun diese Programm-Ablauf-Pläne (Klicken zum Aufklappen).
Welcher PAP kommt ihrem Programm am nächsten?
Welche Lösung ist die Beste? Begründen Sie!