Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.*;
- // DIE KLASSE 'FLUGZEUG' UNTEN EINSETZEN
- public class FlugzeugTest {
- public static void main(String args[]) throws IOException {
- final double initVolumen = 140.0;
- final double initFuellstand = 80.0;
- final double initReserve = 10.0;
- final double initVerbrauch = 7.0;
- Flugzeug meinFlugzeug = new Flugzeug(initVolumen, initFuellstand, initReserve, initVerbrauch);// HIER EIN
- // FLUGZEUG-OBJEKT
- // MIT DEN
- // HIERÜBER
- // ANGEGEBENEN
- // ANFANGSWERTEN
- // ERZEUGEN
- System.out.println();
- System.out.println("Flugzeug erzeugt mit folgenden Anfangswerten:");
- System.out.println(" - Tankvolumen: " + initVolumen + " Tonnen");
- System.out.println(" - Fuellstand: " + initFuellstand + " Tonnen");
- System.out.println(" - Reserve: " + initReserve + " Tonnen");
- System.out.println(" - Fuellstand ohne Reserve: " + meinFlugzeug.fuellstandOhneReserve() + " Tonnen");
- System.out.println(" - Verbrauch: " + meinFlugzeug.verbrauch() + " Tonnen/Stunde");
- BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
- int choice = 0;
- do {
- System.out.println();
- System.out.println("Bitte waehlen:");
- System.out.println("(1) Tanken");
- System.out.println("(2) Verbrauchen");
- System.out.println("(3) Reichweite berechnen");
- System.out.println("(0) Ende");
- choice = Integer.parseInt(in.readLine());
- System.out.println();
- switch (choice) {
- case 1:
- System.out.print("Wie viele Tonnen tanken? ");
- // HIER DIE ZU TANKENDE MENGE VON DER TASTATUR EINLESEN UND DIE TANKEN-METHODE
- // AUFRUFEN
- meinFlugzeug.tanken(Double.parseDouble(in.readLine()));
- break;
- case 2:
- System.out.print("Wie viele Tonnen verbrauchen? ");
- // HIER DIE ZU VERBRAUCHENDE MENGE VON DER TASTATUR EINLESEN
- int rueckgabecode = meinFlugzeug.verbrauchen(Double.parseDouble(in.readLine()));// HIER DIE
- // VERBRAUCHEN-METHODE
- // AUFRUFEN
- System.out.println();
- switch (rueckgabecode) {
- case 0:
- System.out.println("Tank leer");
- break;
- case 1:
- System.out.println("Reserve angebrochen");
- break;
- case 2:
- System.out.println("Tankinhalt ueber Reserve");
- break;
- }
- break;
- case 3:
- double reichweite = meinFlugzeug.reichweite();// HIER DIE REICHWEITEN-METHODE AUFRUFEN
- System.out.println("Reichweite: " + reichweite + " Stunden");
- }
- System.out.println();
- System.out.println(
- "Aktueller Fuellstand: " + (meinFlugzeug.fuellstandOhneReserve() + initReserve) + " Tonnen");
- } while (choice != 0);
- }
- }
- class Flugzeug {
- // Attribute
- private double tankvolumen, fuellstand, reserve, verbrauch;
- // Konstruktor
- Flugzeug(double tankvolumen, double fuellstand, double reserve, double verbrauch) {
- this.tankvolumen = tankvolumen;
- this.fuellstand = fuellstand;
- this.reserve = reserve;
- this.verbrauch = verbrauch;
- }
- // Methoden
- double fuellstandOhneReserve() {
- return fuellstand - reserve;
- }
- double verbrauch() {
- return verbrauch;
- }
- void tanken(double nachfuellvolumen) {
- if (nachfuellvolumen >= 0)
- fuellstand += nachfuellvolumen;
- if (fuellstand > tankvolumen)
- fuellstand = tankvolumen;
- }
- int verbrauchen(double verbraucht) {
- if (verbraucht >= 0)
- fuellstand -= verbraucht;
- if (fuellstand < 0)
- fuellstand = 0;
- if (fuellstand >= reserve)
- return 2;
- else if (fuellstand > 0)
- return 1;
- else
- return 0;
- }
- double reichweite() {
- double reichweite = (fuellstand - reserve) / verbrauch;
- if (reichweite < 0)
- return 0;
- else return reichweite;
- }
- }
- // HIER DIE KLASSE 'FLUGZEUG' EINSETZEN
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement