#define X0 0x50000L // 327680
#define A 0x43fd43fdL // 1140671485
#define C 0xc39ec3L // 12820163
#define M 0xffffffL // 2^24 - 1
long seed = X0;
float Rnd (long Number)
{
if (Number > 0)
{
seed = (seed * A + C) & M;
}
else if (Number < 0)
{
// No estoy seguro de esta parte...
}
return (float) seed / (float) 16777216.0;
}