Prüfungsfrage für JAVA-Cracks - Gesamtbestellwert

  • Themenstarter Themenstarter Guest
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo hab hier die Prüfungsfrage mit Antwort leider check ich keinen Strich was hier gemacht wird.
Kann mir jemand die einzelnen Zeilen erläutern.
Wäre für jede Hilfe dankbar.
Fett Mercy 🙂

Und das hier ist gegeben:
Eine Bestellung:
Array_List positionen
String Kunde
int rabattsatz (10,20, ...50)

Positionen:
String Beschreibung
String Artikelnummer
int Anzahl
double Stückpreis

Bsp.: Badehose 197-88-44-02 7 Stück je 19,90 €

Schreibe eine Bestellung-Methode die den Gesamt-Bestellwert ermittelt!!!

Hier folgt jetzt die Lösung die ich allerdings nicht checke:

HILFE !!!!!!!!!!!!!!!!




Code:
public double bestellwert
double sum = 0.0;
for (int i=0; i < position.size(); i++){
position pos = (Position)position.get (i);

sum = sum + pos.gibAnzahl() =/ pos gibStückPreis());
}


P.S.: =/ bedeutet "ungleich" 🙂
 
Naja, das ist auch falsch, würd ich sagen.
So sollte das korrekt sein:
Code:
public double bestellwert() {
  double sum = 0.0;
  for (int i=0; i < position.size(); i++) {
    Position pos = (Position)position.get (i);
    sum += pos.gibAnzahl() * pos.gibStückPreis();
  }
  return sum;
}
Bist du sicher, dass da nicht ein paar Zeichen falsch sind? Denn außer dem * anstatt =/ sind ja noch so einige andere Syntaxfehler drin. Oder sollte das eine sehr merkwürdige Pseudo-programmiersprache sein? 🙂

Also es werden einfach die Werte der bestellten Produkte * der Anzahl, die man davon möchte, addiert und zurückgegeben.

Btw: deutsche Bezeichner...*wegrenn* 😉

edit: meinst du nicht, dass der Thread-titel "etwas" unpassend ist? 😉
 
Ich weiß - ich weiß ... den JAVA - Cracks stellen sich jetzt sämtlich nackenhaare und fußnägel auf 🙂

dass mit dem =/ ist wahrscheinlich ein Abschreibfehler ,hab mir auch gedacht dass es "*" heißen müsste.

ne Prüfungsfrage ist´s aber wirklich und ich hab ja extra bei den Anfängern gepostet 🙂

Könntest du mir kurz erklären was in den einzelnen Zeilen so vor sich geht???

Vielen Dank
:bahnhof:
 
Ich bräuchte halt ne kleine Hilfestellung zur for-Schleife und für den Cast-Operator, da steig ich nämlich nicht so durch...
Mfg
 
ok, meinetwegen. Du solltest dir aber unbedingt mal ein Tutorial oder Buch durchlesen. Dummerweise kenn ich keins, sonst würde ich dir eins nennen :/

Code:
public double bestellwert() {
  // die variable, in welche wir den gesamtwert speichern, initialisieren.
  // wir nehmen hier einen double und keinen integer, weil wir auch kommazahlen benutzen können wollen
  double sum = 0.0;

  // wir gehen in einer schleife die einzelnen bestellungen durch, d.h. von 0 bis zur anzahl - 1
  for (int i=0; i < position.size(); i++) {
    // wir holen uns das bestellungs-objekt
    // wir casten das object zu "Position", da eine ArrayList Object`e beinhaltet
    Position pos = (Position)position.get (i);

    // addiere das produkt von wert und stückpreis zum gesamtergebnis
    sum += pos.gibAnzahl() * pos.gibStückPreis();
  }

  // ergebnis zurückgeben
  return sum;
}
 
Vielen herzlichen Dank für deine Hilfe!!!!

Tut mir leid bei mir hat sich ein kleiner Fehler eingeschlichen:

Richtig lautets jetzt also so:

Code:
public double bestellwert() {
  double sum = 0.0;
  for (int i=0; i < position.size(); i++) {
    Position pos = (Position)position.get (i);
    sum += pos.gibAnzahl() * pos.gibStückPreis();
  }
  return sum *(100 - Rabattsatz)/100
}

das mit dem Rabattsatz muss ja auch noch rein

P.S. hab ein Buch "Objektorientierte Programmierung mit Java von Barnes/Kölling" ich komm damit gar nicht klar,

die Praxisanwendungen im Buch passen überhaupt nicht zum verlangten Stoff in unserem Informatik- Unterricht

Mfg
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben