C# winfrom 随机生成5个在0 到50直接的随机数,切不重复,怎么实现啊
3个回答
展开全部
主要函数:
public List<int> getnum()
{
Random r = new Random();
List<int> result = new List<int>();
int a;
for (int i = 0; i < 5; i++) //获得5个随机数
{
a = r.Next(0, 50); //设置范围0~50
if (i == 0)
{
result.Add(a);
}
else
{
if (result.IndexOf(a) > 0)
{
i = i - 1; //有重复值,重新再来一次
}
else
{
result.Add(a); //无重复值,+1
}
}
}
return result;
}
展开全部
Random r = new Random();
Dictionary<int, int> dic = new Dictionary<int, int>();
while (dic.Count + 1 < 6)
{
int tmp = r.Next(0, 50);
if (!dic.ContainsKey(tmp))
dic.Add(tmp, 0);
}
这个不是正态随机
Dictionary<int, int> dic = new Dictionary<int, int>();
while (dic.Count + 1 < 6)
{
int tmp = r.Next(0, 50);
if (!dic.ContainsKey(tmp))
dic.Add(tmp, 0);
}
这个不是正态随机
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Random r = new Random();
Dictionary<int, byte> dic = new Dictionary<int, byte>();
while (dic.Count + 1 < 5)
{
int tmp = r.Next(0, 50);
if (!dic.ContainsKey(tmp))
dic.Add(tmp, 0);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询