Hallo,
Man, man, man - was ist das jetzt schon wieder? Was hat die Schreibweise unten mit Bits zu tun? Und was bedeutet & als Operator?
zahl & 1 prueft, ob das 2^0-Bit gesetzt ist, und wenn ja, dann ist die Zahl ungerade, weil alle anderen Potenzen von 2 zu geraden Zahlen fuehren und somit auch die Summe gerade ist.
4=1*2^2+0*2^1+0*2^0 --> 10_0_
5=1*2^2+0*2^1+1*2^0 --> 10_1_
Ist das wieder Sprachenübergreifend so?
Ja:
<?php
$x=5;
if($x & 1)print "Ungerade Zahl\n";
else print "Gerade Zahl\n";
?>
MfG, Thomas