Aufgabe Vorschlag B - Aufgabe 1.5 · Abitur Hessen Technische Informatik LK 2021
Thema: Klassen und Methoden implementieren · Aus der Prüfung LK (2021)
Aufgabenstellung
Autohaus
Ein Autohaus in Südhessen bietet den Kauf sowie die Reparatur und Wartung von Pkws an.
1 Das Autohaus benötigt eine neue Vertriebssoftware, damit die Vertriebsmitarbeiterinnen und -mitarbeiter (im Folgenden Vertriebsmitarbeiter genannt) die Wünsche ihrer Kundschaft beim Neuwagenkauf besser erfassen können.
Material 1 – UML-Klassendiagramm
Die Methode berechneGesamtpreis(...) der Klasse Angebot, die bei der Erzeugung eines Angebotsobjekts aufgerufen werden soll, berechnet den Preis des jeweiligen Fahrzeugs (Grundpreis des Fahrzeugtyps + Aufpreise für Farbe, Motortyp und alle Sonderausstattungen). Beträgt die als Parameter übergebene Rabattstufe 1, so werden 15% Rabatt auf den Fahrzeugpreis gewährt. Beträgt die als Parameter übergebene Rabattstufe 2, so werden 18% auf den Fahrzeugpreis gewährt. Weitere Rabattstufen existieren nicht. Zur Berechnung des Gesamtpreises müssen zum rabattierten Fahrzeugpreis abschließend die als Parameter übergebenen Zulassungskosten addiert werden.
Der Wert des Attributs angebotsnummer der Klasse Angebot soll fortlaufend (beginnend bei 1) für jedes neue Angebotsobjekt gesetzt werden.
Implementieren Sie die Klassen Angebot und Fahrzeug entsprechend der Vorlage im UML-Klassendiagramm (Material 1) und entsprechend der Beschreibung in Aufgabenteil 1.3 in der von Ihnen im Unterricht verwendeten objektorientierten Programmiersprache.
Hinweis: Setter- und Getter-Methoden sind nicht zu erstellen.
a)
b)

Lösung
Nach den offiziellen Korrekturhinweisen
Implementieren Sie die Klasse Angebot entsprechend der Vorlage im UML-Klassendiagramm.
Lösung: ```java public class Angebot { private int angebotsnummer; private String kundenname; private double gesamtpreis; private Fahrzeug x; private static int zaehler = 1; public Angebot(String kundenname, Fahrzeug x, int rabattstufe, double zulassungskosten) { this.angebotsnummer = zaehler++; this.kundenname = kundenname; this.x = x; this.gesamtpreis = this.berechneGesamtpreis(rabattstufe, zulassungskosten); } public double berechneGesamtpreis(int rabattstufe, double zulassungskosten) { double ges = x.getFahrzeugtyp().getGrundpreis() + x.getMotortyp().getAufpreis() + x.getFarbe().getAufpreis(); for (int i = 0; i < x.getSonderausstattung().size(); i++) { ges += x.getSonderausstattung().get(i).getAufpreis(); } if (rabattstufe == 1) { ges *= 0.85; } if (rabattstufe == 2) { ges *= 0.82; } ges += zulassungskosten; return ges; } } ```
Implementieren Sie die Klasse Fahrzeug entsprechend der Vorlage im UML-Klassendiagramm.
Lösung: ```java import java.util.ArrayList; public class Fahrzeug { private Fahrzeugtyp e; private Farbe f; private Motortyp m; private ArrayList<Sonderausstattung> s; public Fahrzeug(Fahrzeugtyp e, Farbe f, Motortyp m, ArrayList<Sonderausstattung> s) { this.e = e; this.f = f; this.m = m; this.s = s; } } ```
Die ausführliche Erklärung Schritt für Schritt (mit KI) gibt es mit Premium. Premium
Löse sie direkt hier: automatische Korrektur, Hinweise und Lösung Schritt für Schritt.
‹ Aufgabe Vorschlag A - Aufgabe 1.3 · LK 2021 · Aufgabe Vorschlag C - Aufgabe 1.4 · LK 2021 ›