Aufgabe Vorschlag C - 1.6 · Abitur Hessen Praktische Informatik LK 2022

Thema: Klassen und Methoden implementieren · Aus der Prüfung LK (2022)

Aufgabenstellung

Material 2

UML-Klassendiagramm

Hinweise: Die Methode toString() der Klasse Einzelteil ergibt eine Zeichenkette der Form:

ID=e19, Lenker wiegt 234 g, kostet 45.00 EUR, Hersteller: TeamPro, Name: Evaluation, 42 cm

Die private Methode leseDatenAusDatei() initialisiert das Attribut String[] konfigzeilen der Klasse Bike mittels der Konfigurationsdatei (Material 1).

Auf alle Attribute kann mittels get-Methoden zugegriffen werden.

1.6 Für das montierte Bike wird in der Methode berechnePreis() der Gesamtpreis ermittelt, wobei es einige Besonderheiten zu beachten gilt.

Das Unternehmen will seine aktuellen Restbestände von Rahmenteilen der Gruppe Manu X abverkaufen und gewährt dafür einen Rabatt von 10% auf den Gesamtpreis.

Neuerdings bietet das Unternehmen seinen Kunden auch Bikes mit Rädern ohne Schlauch an, d.h. der Name eines montierten Einzelteils beginnt mit Tubeless. Dadurch ist die Montage wesentlich komplizierter und bedeutet für jede dieser Tubeless-Komponenten 12€ Zusatzkosten, die noch nicht im Einzelpreis enthalten sind.

Wegen stark erhöhter Nachfrage ist der Aufwand zur Beschaffung von qualitativ hochwertigen Scheibenbremsen gestiegen. Für jede Komponente mit der Bezeichnung Bremsscheibe werden deshalb zusätzlich 8€ berechnet.

Entwickeln und zeichnen Sie ein Struktogramm für diese Methode. [9 BE]

Aufgabenstellung: Aufgabe Vorschlag C - 1.6 · Abitur Hessen Praktische Informatik LK 2022

Lösung

Nach den offiziellen Korrekturhinweisen

Entwickeln und zeichnen Sie ein Struktogramm für diese Methode.

Lösung: Das Struktogramm nach Nassi-Shneiderman umfasst folgende Schritte: 1. Initialisierung: `summe := 0.0`, `merke := false`, `temp := ersteKomp` 2. Schleife: `solange temp nicht null ist` - Aufsummieren: `summe := summe + temp.preis` - Verzweigung Typüberprüfung: - Wenn `temp = RahmenTeil`: - Wenn `gruppe = Manu X` dann `merke := true` - Sonst wenn `temp = EinzelTeil`: - Wenn `name beginnt mit Tubeless` dann `summe := summe + 12.0` - Wenn `bezeichnung = Bremsscheibe` dann `summe := summe + 8.0` - Weiterschalten: `temp := temp.naechste` 3. Rabattprüfung nach der Schleife: - Wenn `merke = true` dann `summe := summe * 0.9` 4. Rückgabe: `Rückgabe summe`

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 C - 1.2 · LK 2022 · Aufgabe Vorschlag A - 1 - Klassen und Methoden implementi… · LK 2021 ›

Mehr Aufgaben zu Klassen und Methoden implementieren