【发布时间】:2010-10-30 06:31:00
【问题描述】:
我正在使用 Microsoft Visual C# 2008 Express。
我找到了这个sn-p的代码:
public static int RandomNumber(int min, int max)
{
Random random = new Random();
return random.Next(min, max);
}
问题是我已经运行了超过 100 次,当我的 min = 0 和 max = 1 时,它总是给我相同的答案。我每次都得到 0。 (我创建了一个测试函数来运行它——真的——我每次都得到 0)。我很难相信这是一个巧合......我还能做些什么来检查或测试这个吗? (我确实用 min = 0 和 max = 10 重新运行了测试,前 50 次,结果总是“5”,第二次 50 次,结果总是“9”。
??我需要一些更一致的随机...
-阿迪娜
【问题讨论】:
-
出于某种原因,我认为“始终如一地随机”真的很有趣。
-
我想补充一点,根据您的应用程序的目的,使用伪随机将始终(至少在理论上)使您的应用程序可破解。