| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 544 人关注过本帖
标题:产生不同的随机数!
取消只看楼主 加入收藏
pacocai
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1583
专家分:0
注 册:2007-3-12
收藏
 问题点数:0 回复次数:0 
产生不同的随机数!

随机数是经常需要使用到的,而且很多时候我们需要用到的是产生一组随机数,然后随机数不能相同。

下面的例子是我做的一个产生在0~13当中产生4个不相同的随机数的一个类。

namespace 产生随机数
{
public class newRandom
{
//声明4个私有变量
private int newrandom1;
private int newrandom2;
private int newrandom3;
private int newrandom4;

public newRandom()
{
int j, temp;
//产生一个数组存放0~13的数字
int[] myData = new int[14];

for (int i = 0; i < 14; i++)
{
myData[i] = i;
}

//随机混排一个数组
Random MyRandom = new Random();

for (int x = 0; x < 1000; x++) //对数组进行1000次排列
{
j = MyRandom.Next(0, 13); //随机产生一个位置

//从随机位置向左移动数据
temp = myData[j];
for (int i = j; i < 13; i++)
{
myData[i] = myData[i + 1];
myData[13] = temp;
}
}
newrandom1 = myData[0];
newrandom2 = myData[1];
newrandom3 = myData[2];
newrandom4 = myData[3];
}

//设置类的属性
public int Newrandom1
{
get
{
return newrandom1;
}
}

public int Newrandom2
{
get
{
return newrandom2;
}
}

public int Newrandom3
{
get
{
return newrandom3;
}
}

public int Newrandom4
{
get
{
return newrandom4;
}
}

}
}


事实上这里所用的方法是将14个数付给一个数组,然后将数组混排1000次,就像一付扑克,我们将这付扑克洗1000次,这样再整齐的扑克都会被打乱,以上用的方法就是这样,把这一个数组打乱,然后取出前4位,这样得到的前4位数就是随机的,而且完全不相同的随机数了。

在程序里调用只需要直接调用这个类就可以了,调用的代码如下:

newRandom MyRandom = new newRandom();

int a=MyRandom.Newrandom1;

int b=MyRandom.Newrandom2;

int c=MyRandom.Newrandom3;

int d=MyRandom.Newrandom4;


[此贴子已经被作者于2007-7-31 10:00:57编辑过]

搜索更多相关主题的帖子: 随机数 int private public 变量 
2007-07-31 09:59
快速回复:产生不同的随机数!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021450 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved