Java Ausdruckergebnisse angeben?

necoicould

Mitglied
Kann mir jemand bei folgender Aufgabe behilflich sein?
Man soll diese Ausdrücke auswerten. Die Zeilen sollen (laut Mentor) abhängig zu einander sein.

int a = 6
int b = 3
int c = 7
double d = 5.0
double e = 2.0

1. a++ - ++b * (c - a)
2. c & a - b
3. a – b++ + b
4. a * b / ++c
5. 4 + 2 << 3
6. 6 >> 2
7. 2 << 2 << 2
8. 2 << (2 << 2)
9. d/e

Lösung:
1. Reihenfolge: a++, ++b, (c-a), *, - Ergebnis: 6 Typ: int
2. Reihenfolge: -, & Ergebnis: 3 Typ: int
3. Reihenfolge: b++, -, + Ergebnis: 8 Typ: int
4. Reihenfolge: ++c, *, / Ergebnis: 4 Typ: int
5. Reihenfolge: +, << Ergebnis: 48 Typ: int
6. Reihenfolge: 6 >> 2 Ergebnis: 1 Typ: int
7. Reihenfolge: linkes <<, rechtes << Ergebnis: 32 Typ: int
8. Reihenfolge: (2<<2), linkes << Ergebnis: 512 Typ: int
9. Reihenfolge: / Ergebnis: 2.5 Typ: double



1. verstehe ich, da kommt 6 raus...
Was ich nun nicht so ganz verstehe ich, a ist ja nun 7 (durch das a++) und das b ist 4 (durch das ++b)

bei der folgeaufgabe der 2.

2. c & a - b

Werden diese Werte a und b erneut um eins erhöht? Wenn die Teilaufgaben nicht von einander abhängig wären, wäre das einfach, jedoch soll es laut Mentor halt net so sein, dass man die vorherigen a,b,c werte noch betrachten muss...

Die angegebene Lösung vom Mentor geht nur auf, wenn ich a bei 7 belasse und b jedes mal um eins erhöhe.. aber warum ist das so? könnt ihr mir helfen?
 

eRaaaa

Top Contributor
Also so ganz verstehe ich jetzt dein Problem nicht. Abhängig heißt eben dass 2. von 1. abhängig ist, also du die Werte von a und b aus 1. betrachten musst in 2., nicht die Anfangswerte!

Wie du schon richtig erkannt hast, sind a=7 und b = 4
7-4 = 3
c = 7

7&3 = 3 -->

111
&
011
-----
011 = 3

???:L
 

XHelp

Top Contributor
Nein, die Werte werden nicht einfach so um eins erhöht. Wenn durch einen Ausdruck sich die Werte verändern, dann bleiben die auch verändert für die nächste Rechnung.
Ansonsten weiß ich nicht so ganz, was du eigentlich fragen willst.
 

necoicould

Mitglied
hmmm ok:D jetzt habs ichs verstanden^^ danke ich dachte, dass die werte wenn z.b dort a++ steht, dass jedes a in jeder zeile um eins verändert wird... was aber nicht ist.

vielen dank
 

Neue Themen


Oben