int i = 5 + 3 / 6 + 6 + 3;
Was kommt da raus und wieso?
boolean b = ( (14 % 3) >= 2) ^ ( (5 - 2 * 3) > -10)
Was kommt hier raus und wieso?
beim 2. würde ich sagen:
(14%3)>=2 --> false weil 0,42>=2
(5-2*3)>-10 --> true weil -1>-10
jetzt frage man sich natürlich was dieses ^ zubedeuten hat ... mein erster gedanke war ein potenzierung aber das ergibt ja keinen sinn ...
aber wir hatten doch mal logische verknüpfungen im atiw und da gabs doch dieses zeichen: ^ und das umgekehrte v
wobei ^ für einen logische UND-verknüpfung steht und v für eine ODER-Verknüpfung
demnach steht dort boolean b = false AND true
demnach also auch boolean b = 0 AND 1
also boolean b = 0
also boolean b = false
na wie war ich ??
Zur Info: ^ ist ein Exklusiv oder und % liefert den Restwert eine ganzzahligen Division.
Wer will nochmal?
i = 14
und b = false,
aber: Wieso?
Na? Na?
true^true ergibt false
http://de.wikipedia.org/wiki/XOR-Verknüpfung
(aber warum ist ^ eigentlich XOR und nicht AND wie wir gelernt haben ?? )
das 1. habe ich mal eingetippt und es kommt echt 14 raus ... aber wieso ?? ist denn mit / nicht die diffision gemeint ??
ps hat dein studium schon begonnen ?? ich dachte erst im april ?
1111575553]
Also: 3 / 6 = 0 !!
Weil man zwei Integerwerte teilt, da kommt immer ein glatter Wert raus. Wenn man 3 / 6.0 rechnet kommt 0.5 raus.....
Die andere Antwort ist richtig! Gut gemacht!
seit wann hat er begonnen ?
int i = ...
liegt, sondern an dem
3 / 6 = 0
3 und 6 sind int Zahlen!
int i = 5 + 3.0 / 6.0 + 6 + 3;
dann bekommt man einen Parserror ;)
Aber ich wäre nicht drauf gekommen... irgendwie hat die Schule wirklich bei mir versagt...
Oder ABAP ist cooler... ;)
ABAP ... AAAAAAAAAAAAAAAAAAAAAAHHHHHHHHHHHH