Hallo zusammen,
ich habe ein kleines Programm erstellt für einen Videoverleih erstellt. Ich würde nun gerne implementieren, dass der Kunde maximal einen Blockbuster auswählen kann (film1, film2 etc.). Leider habe ich keinerlei Ahnung wie ich das umsetzen kann, ohne mein Programm wieder komplett auseinander zunehmen. Hat hier jemand vllt eine Lösung parat?
Dazu gesagt: Ich bin ein absoluter Anfänger.
ich habe ein kleines Programm erstellt für einen Videoverleih erstellt. Ich würde nun gerne implementieren, dass der Kunde maximal einen Blockbuster auswählen kann (film1, film2 etc.). Leider habe ich keinerlei Ahnung wie ich das umsetzen kann, ohne mein Programm wieder komplett auseinander zunehmen. Hat hier jemand vllt eine Lösung parat?
Dazu gesagt: Ich bin ein absoluter Anfänger.
Java:
LinkedList<Film> filmList = new LinkedList<Film>();
LinkedList<Blockbuster> blockbuster = new LinkedList<Blockbuster>();
//String name = "Louis Punak";
boolean verlängern = true;
String film1 = "I am Legend";
String film2 = "Thirty Hours";
String film3 = "Ronnie Coleman The King";
String film4 = "Pixels";
LinkedList<String> searchList = new LinkedList<String>();
searchList.add(film1);
searchList.add(film2);
searchList.add(film3);
searchList.add(film4);
//Kunden angelegt
Kunde Louis;
Louis = new Kunde();
Louis.setAlter(19);
Louis.setKundennummer(1);
Louis.setMitgliedschaft(true);
Louis.setName("Louis Punak");
LinkedList<Kunde> kundenList = new LinkedList<Kunde>();
kundenList.add(Louis);
//Filmobjekte erstellt
Blockbuster ThirtyHours;
ThirtyHours = new Blockbuster();
ThirtyHours.setArtikelnummer(1);
ThirtyHours.setPreis(1.99);
ThirtyHours.setMaxAusleihe(14);
ThirtyHours.setVorhanden(false);
ThirtyHours.setAltersbeschränkung(16);
ThirtyHours.setLaufzeit(144);
ThirtyHours.setProduktionsland("USA");
ThirtyHours.setName("Thirty Hours");
ThirtyHours.setVerlängern(false);
Blockbuster IamLegend;
IamLegend = new Blockbuster();
IamLegend.setArtikelnummer(1);
IamLegend.setPreis(1.99);
IamLegend.setMaxAusleihe(14);
IamLegend.setVorhanden(true);
IamLegend.setAltersbeschränkung(18);
IamLegend.setLaufzeit(100);
IamLegend.setProduktionsland("USA");
IamLegend.setName("I am Legend");
IamLegend.setVerlängern(false);
Klassiker Scarface;
Scarface = new Klassiker();
Scarface.setArtikelnummer(2);
Scarface.setMaxAusleihe(28);
Scarface.setPreis(0.99);
Scarface.setVorhanden(true);
Scarface.setGenre("Drama");
Scarface.setProduktionsjahr(1983);
Scarface.setName("Scarface");
Scarface.setVerlängern(true);
.....
filmList.add(ThirtyHours);
filmList.add(IamLegend);
filmList.add(RonnieColeman);
filmList.add(TheGameChangers);
filmList.add(Pixels);
filmList.add(Spongebob);
filmList.add(Scarface);
filmList.add(DerPate);
blockbuster.add(ThirtyHours);
blockbuster.add(IamLegend);
//if()
//Abfrage ob Filme vorhanden sind + Rechnungsausgabe
for (int i = 0; i < searchList.size(); i++) {
for (int j = 0; j < filmList.size(); j++) {
for (int z = 0; z < kundenList.size(); z++) {
if (filmList.get(j).getName().equals(searchList.get(i))) {
if (filmList.get(j).getVorhanden()) {
switch (filmList.get(j).getArtikelnummer()) {
case 1: {
Blockbuster help = (Blockbuster) filmList.get(j);
Kunde dummie = (Kunde) kundenList.get(z);
if (dummie.getAlter() >= help.getAltersbeschränkung()) {
System.out.println("Ausgewählter Film: " + help.getName());
System.out.println("Preis: "
+ rechnungBlockbuster(help.getPreis(), help.getMaxAusleihe(), help.getVerlängern(),
dummie.getMitgliedschaft(), verlängern) + "€");
if(verlängern == true) {
System.out.println("Blockbuster sind nicht Verlängerbar!");
System.out.println("");
}
else {
System.out.println("");
}
}
else {
System.out.println("Sie erfüllen die Altersbeschänkung für " + help.getName()
+ " nicht! : " + help.getAltersbeschränkung() + " Jahre.");
System.out.println();
}
}
break;
case 2: {
Kunde dummie = (Kunde) kundenList.get(z);
Klassiker help = (Klassiker) filmList.get(j);
System.out.println("Ausgewählter Film: " + help.getName());
System.out.println("Preis: "
+ rechnungKorrekt(help.getPreis(), help.getMaxAusleihe(), verlängern,
dummie.getMitgliedschaft()) + "€");
System.out.println("");
break;
}
case 3: {
Kunde dummie = (Kunde) kundenList.get(z);
Dokumentarfilme help = (Dokumentarfilme) filmList.get(j);
System.out.println("Ausgewählter Film: " + help.getName());
System.out.println("Preis: "
+ rechnungKorrekt(help.getPreis(), help.getMaxAusleihe(), verlängern,
dummie.getMitgliedschaft()) + "€");
System.out.println("");
break;
}
case 4: {
Kunde dummie = (Kunde) kundenList.get(z);
KinderUndJugendfilme help = (KinderUndJugendfilme) filmList.get(j);
System.out.println("Ausgewählter Film: " + help.getName());
System.out.println("Preis: "
+ rechnungKorrekt(help.getPreis(), help.getMaxAusleihe(), verlängern,
dummie.getMitgliedschaft()) + "€");
if(help.getGeeignetFürDenUnterricht() == true) {
System.out.println("Der Film ist für den Unterricht geeignet.");
}
else {
System.out.println("Der Film ist nicht für den Unterricht geeignet.");
}
break;
}
default:
System.out.println("Ein Fehler ist aufgetreten");
}
} else {
System.out.println("Der Film " + filmList.get(j).getName() + " ist nicht Verfügbar.");
System.out.println("");
}
}
}
}
}
}
public static double rechnungKorrekt(double preis, int ausleihzeitraum, boolean verlängern, boolean mitgliedschaft) {
double versand = 4.0;
double mwst = 1.07;
double rabatt = 0.8;
double result = (preis * ausleihzeitraum) * mwst;
if (verlängern == true && mitgliedschaft == true) {
result = ((preis * (ausleihzeitraum + 14)) * mwst) * rabatt;
return round(result, 2);
} else if (verlängern == false && mitgliedschaft == true) {
result = ((preis * ausleihzeitraum) * mwst) * rabatt;
return round(result, 2);
} else if (verlängern == false && mitgliedschaft == false) {
result = (preis * ausleihzeitraum + versand) * mwst;
return round(result, 2);
} else if (verlängern == true && mitgliedschaft == false) {
result = ((preis * (ausleihzeitraum + 14)) + versand) * mwst;
return round(result, 2);
} else
return 0.0;
}
public static double rechnungBlockbuster(double preis, int maxAusleihe, boolean verlängerbar, boolean mitgliedschaft, boolean verlängernWunsch) {
double versand = 4.0;
double mwst = 1.07;
double rabatt = 0.8;
double result;
if(mitgliedschaft == true) {
result = ((preis * maxAusleihe) * mwst) * rabatt;
return round(result, 2);
}
else {
result = (preis * maxAusleihe + versand) * mwst;
return round(result, 2);
}
}
public static double round(double value, int decimalPoints) {
double d = Math.pow(10, decimalPoints);
return Math.round(value * d) / d;
}
}