Variablen Ausdrücke

Hallo Leute, ich habe eine Aufgabe
Vor jeder Anweisung seien folgende Werte gegeben: int a = 2; int b = 1;. Welchen Wert haben die Variablen a und b nach der jeweiligen Anweisung? Was sind die
Rückgabewerte der Teilausdrücke?
1. a = b = 2;
2. a = b * 3 + 2;
3. a = b * (3 + 2);
4. a *= b + 5;
5. b %= 2 * a;
6. a = –b;
7. b = b++ * a;
8. a = - 5 - 5;
9. b = (a == b) ? 5 : 7;
10. a = –b * b++;

Ich bitte um eure Hilfe und kann jemand mir die Symbole ( *=, %=, ++, (a == b) ? 5 : 7) erklären?
Vielen Dank.
 
++ erhöht einen Wert um Eins.
a *= z ist nur eine kürzere Schreibweise für:
a = a * z

b = (a == b) ? 5 : 7;
Das ist der ternäre Operator.
Er stellt sich die Frage, ob der Ausdruck in der Klammer wahr ist. Falls er wahr ist wird der Wert von b auf 5 gesetzt. Anderenfalls 7.
 
Das Wichtigste, was ich sehe:
% ist der Modoluoperator. Das Ergebnis ist der Rest einer Ganzzahl-Division
a *= b --> a = a *b gilt auch für andere Operatoren
b++ inkrementiert b um 1 NACH der Verwendung
(b) ? x : y Ternärer Operator --> if ? wird ausgeführt wenn true : wird ausgeführt wenn false
 
Hallo Leute, ich habe eine Aufgabe
Vor jeder Anweisung seien folgende Werte gegeben: int a = 2; int b = 1;. Welchen Wert haben die Variablen a und b nach der jeweiligen Anweisung? Was sind die
Rückgabewerte der Teilausdrücke?
1. a = b = 2;
2. a = b * 3 + 2;
3. a = b * (3 + 2);
4. a *= b + 5;
5. b %= 2 * a;
6. a = –b;
7. b = b++ * a;
8. a = - 5 - 5;
9. b = (a == b) ? 5 : 7;
10. a = –b * b++;

Ich bitte um eure Hilfe und kann jemand mir die Symbole ( *=, %=, ++, (a == b) ? 5 : 7) erklären?
Vielen Dank.
1. Der Ausdruck ist äquivalent zu a = 2; b = 2;
2. einfach...
3. einfach...
4. Äquivalent zu a = a*(b+5)
5. Äquivalent zu b = b % (2 * a)
6. einfach...
7. b++ bedeutet: erst Wert zurückgeben, dann erhöhen. Etwas trickreich. Man kann das ++ einfach weglassen.
8. einfach...
9. Äquivalent zu
Java:
if (a == b) b = 5;
else b = 7;
10. Der * Operator geht von links nach rechts. Äquivalent zu:
Java:
a = -b*b;
b++;
 

Neue Themen


Zurück
Oben