Java :: Aufgabe #314 :: Lösung #2
4 Lösungen
#314
Mobilfunkanbieter (Monatsabrechnung)
Anfänger - Java
von JKooP
- 07.11.2020 um 09:42 Uhr
Ein Mobilfunkanbieter stellt folgende Pakete zur Verfügung:
Paket-Typ....Basispreis....Freiminuten....Minutenpreis
P_Basis........2,95€..............0...................0,10€
P_100..........3.95€.............100................0,12€
P_300..........7,95€.............300................0,15€
P_600..........12,95€...........600................0,20€
P_Flat..........29,95€...........unbegrenzt.....0,00€
Schreibe eine Funktion/Methode, bei der sowohl der Paket-Typ als auch die telefonierten Minuten übergeben werden.
Als Ergebnis soll der Gesamtpreis inklusive Basispreis für den Monat ausgegeben werden.
Viel Spaß
Paket-Typ....Basispreis....Freiminuten....Minutenpreis
P_Basis........2,95€..............0...................0,10€
P_100..........3.95€.............100................0,12€
P_300..........7,95€.............300................0,15€
P_600..........12,95€...........600................0,20€
P_Flat..........29,95€...........unbegrenzt.....0,00€
Schreibe eine Funktion/Methode, bei der sowohl der Paket-Typ als auch die telefonierten Minuten übergeben werden.
Als Ergebnis soll der Gesamtpreis inklusive Basispreis für den Monat ausgegeben werden.
Viel Spaß
#2
von Seb (110 Punkte)
- 29.12.2020 um 14:46 Uhr
Auf konstruktive Kritik / Verbesserungsvorschläge freue ich mich.
Main Klasse
Java-Code
Klasse Mobilfunk
Java-Code
Main Klasse
public class MobilfunkMain {
public static void main(String[] args) {
// Beispielaufruf mit Packet P_100 und 110 Minuten:
System.out.println(Mobilfunk.PriceSum("P_100", 110));
}
}
Klasse Mobilfunk
public class Mobilfunk {
public static double PriceSum(String PacketTyp, int Minuten) {
double endPreis = 0;
switch (PacketTyp) {
case "P_Basis":
endPreis = 2.95 + (Minuten * 0.10);
break;
case "P_100":
if (Minuten >= 100) {
endPreis = 3.95 + ((Minuten - 100) * 0.12);
} else {
endPreis = 3.95;
}
break;
case "P_300":
if (Minuten >= 300) {
endPreis = 7.95 + ((Minuten - 300) * 0.15);
} else {
endPreis = 7.95;
}
break;
case "P_600":
if (Minuten >= 600) {
endPreis = 12.95 + ((Minuten - 600) * 0.20);
} else {
endPreis = 12.95;
}
break;
case "P_Flat":
endPreis = 29.95;
break;
default:
System.out.println("Falsche Parametereingabe. Bitte eines der folgenden Packete als Parameter auswählen: \n P_Basis \n P_100 \n P_300 \n P_600 \n P_Flat \n");
break;
}
return endPreis;
}
}
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
