| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1440 人关注过本帖
标题:想做个模拟彩票程序,有会的吗?
只看楼主 加入收藏
rainny1000
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-5-24
收藏
 问题点数:0 回复次数:8 
想做个模拟彩票程序,有会的吗?

做到一小部分,没有思路了....
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void main()
{
int i;
printf("*******欢迎使用辽宁风彩福利彩票35选7号码预算系统*******\n您的中奖号码是:\n\n");
srand((unsigned)time(NULL));
for(i=1;i<8;i++)
printf(" %d",rand()%36);
printf("\n");
}

搜索更多相关主题的帖子: 彩票 辽宁 include printf 
2007-05-24 21:32
谁与争疯
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:海南省
等 级:版主
威 望:191
帖 子:15071
专家分:17513
注 册:2007-4-22
收藏
得分:0 
是不是,就是循环预定次数,然后随机出预定的范围内的数字个数?



广而告之:

110120119

本期中奖号码↑

[此贴子已经被作者于2007-5-24 21:37:30编辑过]


论坛是我家灌水靠大家
2007-05-24 21:35
rainny1000
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-5-24
收藏
得分:0 
HOHO,才学了不到一个月,请多多指教。。
2007-05-24 21:36
kisscjy
Rank: 1
等 级:新手上路
帖 子:217
专家分:0
注 册:2007-4-9
收藏
得分:0 

发段代码给你,看是不是你需要的:

#include<iostream>
#include<time.h>
#include<stdlib.h>
using namespace std;

void main()
{
int a[7];
int b[7];
int i;
char s;
int num=0;
cout<<"*******欢迎使用辽宁风彩福利彩票35选7号码预算系统*******\n";
cout<<"请输入你想要买的号码:\n";

while(s!='y'&&s!='Y')
{

for (i=0; i<7; i++)
{
cin>>a[i];
if (a[i]<=0 || a[i]>=36 )
{
cout<<"你所输入的号码有误,请重新输入!"<<endl;
cin>>a[i];
}
}

cout<<"\n你所购买的号码为:\n";

for ( i=0; i<7; i++)
{
cout<<a[i]<<'\t';
}

cout<<"\n是否确定好吗?(y or n)\n";
cin>>s;

}


srand((unsigned)time(NULL));

for (i=0; i<7; i++)
{
int j=rand();
b[i]=j%35+1;

}

cout<<"\n本次开奖号码为:\n";

for (i=0; i<7; i++)
{
cout<<b[i]<<'\t';
}

for (int j=0; j<7; j++)
{
for (i=0; i<7; i++)
{
if(a[i]==b[j]) num++;
}
}

if(num==0) cout<<"\n\n很遗憾,你这次未能中奖,下次好远!"<<endl;

else cout<<"\n\n恭喜,你一共中了"<<num<<"个号码,共获得奖金"<<num*100<< "元!\n";

}


每当我一晚写下70,80个程序时,你还真以为,这都是我一个人干的.....不过说真的,其实都是抄书的~~ ^@^
2007-05-25 00:12
rainny1000
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-5-24
收藏
得分:0 
谢谢楼上的...
2007-05-25 06:19
a8451727
Rank: 1
等 级:新手上路
帖 子:238
专家分:5
注 册:2007-5-22
收藏
得分:0 
有点漏洞``。中奖号码回重复出现。

2007-05-25 18:40
Hevin
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2007-5-30
收藏
得分:0 
for (i=0; i<7; i++)
{
int j=rand();
b[i]=j%35+1;

}
此段程序少个判断:
for (i=0; i<7; i++)
{
int j=rand();
for(int m=0;m<i;m++)
if(b[m]=j%35+1) break;
else b[i]=j%35+1;

}
2007-05-30 15:51
terisevend
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2007-6-2
收藏
得分:0 
楼上的朋友,那程序段有点错误.

此段程序少个判断:
for (i=0; i<7; i++)
{
int j=rand();
for(int m=0;m<i;m++)
if(b[m]=j%35+1) break;
else b[i]=j%35+1;

}

应该改成:
for(i=0; i<7; i++)
{
int j = rand();
b[i]=j%35+1;
for(int m=0;m<i;m++)
if(b[m]==b[i])
{ --i; break; } //推出内循环的同时,保证i的值不被修改,从而保证了7个数都不相同,且值域都在1-35间
}

[此贴子已经被作者于2007-6-2 17:18:31编辑过]


2007-06-02 16:54
terisevend
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2007-6-2
收藏
得分:0 

这个是我在kisscjy的基础上修改过来的:
经测试,已经可以解决输入重复,中奖号码重复等问题.


#include<iostream>
#include<time.h>
#include<stdlib.h>

using namespace std;

int main()
{
int a[7];
int b[7];
int i;
char s = 'n';
int num=0;
cout<<"*******欢迎使用辽宁风彩福利彩票35选7号码预算系统*******\n";

while(s!='y' && s!='Y')
{
cout << "请输入你想要买的号码:\n";

for(i=0; i<7; i++)
{
cin >> a[i];

while(a[i]<=0 || a[i]>=36 )
{
cout << "你所输入的号码有误,请重新输入!" << endl;
cin >> a[i];
}

for( int ct=0;ct<i;ct++)

if(a[ct]==a[i])
{
cout << "号码重复,请重新输入!"<< endl;
--i;
break;
}
}

cout << "\n你所购买的号码为:\n";

for( i=0; i<7; i++)
{
cout << a[i] << '\t';
}

cout << "\n是否确定好吗?(y or n)\n";
cin >> s;

}


srand((unsigned)time(NULL));

for (i=0; i<7; i++)
{

int j=rand();
b[i] = j%35+1;
for(int m=0;m<i;m++)
if(b[m]==b[i])
{ --i; break; }

}

cout<<"\n本次开奖号码为:\n";

for (i=0; i<7; i++)
{
cout<<b[i]<<'\t';
}

for (int j=0; j<7; j++)
{
for (i=0; i<7; i++)
{
if(a[i]==b[j]) num++;
}
}

if(num==0) cout<<"\n\n很遗憾,你这次未能中奖,下次好远!"<<endl;

else cout<<"\n\n恭喜,你一共中了"<< num <<"个号码,共获得奖金"<<num*100<< "元!\n";

system("PAUSE");
return EXIT_SUCCESS;

}


2007-06-02 17:20
快速回复:想做个模拟彩票程序,有会的吗?
数据加载中...
 
   



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

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