Zitat von
alzaimar:
@Olli:Ob ich nun
bRand := Boolean (Random (2))
nehme, oder
bRand := Boolean (Random (10000) mod 5000)
ist, zumindest beim Delphi-Randomgenerator, auch mathematisch ein und die selbe Sosse.
Nein ist es nicht. Beide Lösungen sind schlichtweg falsch da der direkte Cast eines Integers nach Boolean syntaktisch absolut undefiniert ist.
PASCAL konforme Lösungen wären:
Delphi-Quellcode:
begin
Result := Odd(Random(2));
Result := Random(2) <> 0;
Result := Random(2) = 0;
Result := Random(1000) >= 500;
end;
const
Boolean: array[0..1] of Boolean = (False, True);
begin
Result := Boolean[Random(2]);
end;
alles andere ist Quatsch mit Sosse.
Gruß Hagen