我不想使用System.Random,因为它明显更慢,我需要生成数百万的随机浮点数。我也不能使用System.Random.MWC,因为它不纯。
我自己尝试写这个,但我的解决方案没有生成统一的范围,所有值都非常接近0。
char[]
我非常确定maxRealFloat函数是正确的,因为它返回correct values for Floats and Doubles according to Wikipedia
答案 0 :(得分:3)
我意识到自己犯了一个非常愚蠢的错误。 System.Random.Mersenne.Pure64中的函数randomDouble返回一个已经在范围[0,1](documentation does not mention at all)中的双精度,并且我的所有数字都非常小,因为我将它们除以最大双精度。