
>
private void button2_Click(object sender, EventArgs e)//产生随机不重复的数
{
Random ra = new Random(GuidNewGuid()GetHashCode());
int r = raNext(1, 50);//买的**数,最少一张,最多50张
int len = 100 - 2r;//剩下len的钱
int[] a = new int[r];//因为100/2=50,但是不知道你的需求是不是买的**数也是随机的?
for (int j = 0; j < r; j++) a[j] = 0;//初始化
for (int i = 0; i < r; i++)
{
a[i] = raNext(1000000, 9999999);//对应的随机数范围,也就是你的**是多少位数,你没有说啊,默认是7位数哈,你可以修改
for (int j = 0; j < i; j++)//进行随机判断以保证不重复
{
if (a[i] == a[j])
{
i--;//如果发生重复则重新产生随机数,并I减一以保证随机数的个数
break;
}
}
}
richTextBox1Text = "剩下:"+len;
for (int k = 0; k < r; k++)
richTextBox1Text =richTextBox1Text + "\n" + a[k];//输出你买的**号码以及剩下的钱
}
#include<stdioh>
#include<stdlibh>
#include<timeh>
int isLegal(int std[],int a[])
{
int sum=0;
int i,j;
for(i=0;i<6;i++)
for(j=0;j<6;j++)
{
if(a[i]==std[j])
sum++;
}
if(sum>3) return 0;
else return 1;
}
int isRepeated(int a[],int temp)
{
int i;
for(i=0; i<6; i++)
if(temp == a[i]) return 1;
return 0;
}
void main()
{
int randNumber[6]={-1,-1,-1,-1,-1,-1},i,k,n,judge,temp;
int std[][6]={ {1,5,6,15,22,28},
{4,9,13,18,21,32},
{8,16,21,22,27,30},
{5,8,11,20,24,29},
{12,13,19,23,25,33},
{10,11,15,16,27,29},
{6,9,14,16,24,32}
};
srand((unsigned)time(NULL));
printf("要产生几组这样的数 ");
scanf("%d",&n);
for(k=0;k<n;k++)
{
do{
judge=1;
for(i=0;i<6;i++)
{
do{
temp=rand()%33+1;
} while(isRepeated(randNumber,temp));
randNumber[i]=temp;
}
for(i=0;i<7;i++)
{
judge=isLegal(std[i],randNumber);
if(judge==0)
break;
}
}while(judge!=1);
for(i=0;i<6;i++)
printf("%d ",randNumber[i]);
printf("\n");
}
}
以下是运行效果:
要产生几组这样的数 10
3 29 13 22 9 7
24 1 5 13 17 6
9 19 24 8 33 20
5 9 29 7 10 26
19 28 18 31 11 9
6 23 28 13 27 24
5 20 1 14 11 26
19 30 25 32 8 12
20 14 24 19 18 15
29 27 25 23 24 19
Press any key to continue
以上就是关于谁会用matlab编一个双色球彩票的程序全部的内容,包括:谁会用matlab编一个双色球彩票的程序、编写一个程序,可以筛选出没有出过的双色球的一组号码、【C#中的随机数双色球】等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)