07.12.11 06:03, Steven D'Aprano написав(ла): > long newSeed = (seed& 0xFFFFFFFFL) * 0x41A7L; > while (newSeed>= 0x80000000L) { > newSeed = (newSeed& 0x7FFFFFFFL) + (newSeed>>> 31L); > } > seed = (newSeed == 0x7FFFFFFFL) ? 0 : (int)newSeed; seed = (seed & 0xFFFFFFFF) * 0x41A7 % 0x7FFFFFFF