aritmetische Operatoren in Java

  • Guten Morgen,


    Erstmal wünsche ich allen frohe Ostern.


    In meinem Lehrbuch "Programmieren lernen mit Java" von Hans-Peter Habelitz scheint in den Lösungen für die Übungsaufgaben ein Druckfehler zu sein.



    Folge Aufgabenstellung:


    Für die folgenden Aufgaben wird vorausgesetzt, dass die folgenden Variablen deklariert wurden:


    int a = 3;
    int b = 5;
    int c = 6;
    ...
    ...



    Aufgabe 1
    Welche Werte liefern die folgenden Ausdrücke rechts des =-Zeichens, und ist die Wertzuweisung möglich?


    int_ergebnis = a * b + c;
    int_ergebnis = c + a * b;
    int_ergebnis = c - a * 3;
    .....
    .....


    Hier nur mal die relevanten Informationen. Konkret geht es um den 3. Ausdruck.
    Ich bekomme für diesen Ausdruck den Wert 3. In den Lösungen steht aber der Wert -3 (also ein negativer Wert).


    Handelt es sich hier tatsächlich um einen Druckfehler in den Lösungen?
    Oder übersehe ich was und wenn ja was? :?:


    Vielen Dank für die Hilfe im Voraus.





    Petra

  • Hallo,
    nein das ist kein Druckfehler Java macht Punktrechnung vor Strichrechnung.
    6-3*3 = -3 6-(3*3) = 6-9 = -3


    ein einfacher Taschenrechner macht das nicht aber da würde 9 raus kommen.
    6-3 = 3 *3 = 9


    Habe mir eine Lese Probe von deinem Buch geholt. Hier ein Abschnitt den du bestimmt überlesen hast.

    Zitat

    2.4.4 Priorität
    Bildet man Ausdrücke mit mehreren Operatoren,
    so bestimmt die Priorität die Reihenfolge, in der die Operatoren angewendet werden.
    Die Prioritäten entsprechen der Rangfolge, die von der Mathematik her bekannt ist.
    Mithilfe von runden Klammern kann die Reihenfolge der Auswertung wie in der Mathematik beliebig verändert werden. Die Klammern können dabei beliebigtief geschachtelt werden.

    Zugegeben ist nicht sonderlich schön ausgedrückt in dem Buch.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!