C#随机数问题
问题描述:
我有这样的代码应与生成数字1和100:C#随机数问题
int aux; aux = Game1.rand.Next(101); if (aux <= 20) { Trace.WriteLine(aux); seeker = true; }
的问题是我得到的不是每次20小值。如果我在if语句中更改20到30,我总是得到小于或等于30的数字。 我该如何克服这个问题? 谢谢。
答
尝试像
int aux;
aux = Game1.rand.Next(101);
Trace.WriteLine(aux);
你得到下面的值等于20,只是因为你如果有()子句正好说你低于或等于20
答
你需要把你的Trace.WriteLine(aux);
需要值之前的if
语句,以便它写出任何数字高于20(或30,视情况而定):
int aux;
aux = Game1.rand.Next(101);
Trace.WriteLine(aux);
if (aux <= 20)
{
seeker = true;
//...
}
+0
谢谢。你的建议帮助我找到了真正的问题:) – Sorin 2011-04-10 00:26:01
对不起,wwwwwhat? – iehrlich 2011-04-10 00:13:35
也许你真的很不幸? – 2011-04-10 00:14:34
按程序设计 – 2011-04-10 00:15:10