C++程序设计报告
2011年3月
(与王强同学2人合作完成)
课题名称:福彩游戏
难易等级:A
姓名:
学号:
一、程序功能简介
这是一个类似于福彩的游戏程序。游戏玩家输入自己的名字和吉祥数字,计算机由此初始化随机发生器,然后玩家输入范围内的6个数字,并判断输入是否有效。若无效,则发出错误信息并退出;若有效,则和计算机产生的该范围内的6个数字比较,若全部匹配,则玩家赢,否则玩家输。
(1)定义一个福彩类CWelfareLot,封装计算机开出的大奖号码及开奖过程函数和输出大奖号码的函数。
(2)ustomer,封装用户输入的数字和用户所具有的彩金,初始化彩金为100元,而每注为2元,可以多次下注,具体赢得大奖或二等、三等奖的奖金由自己设置,累加到彩金中;二等奖、三等奖的规则也由自己设置。其中用户的输入的数字与福彩号码的比较函数定义为福彩类的友元函数。
(3)程序只要不选择退出且彩金允许就可以反复下注。
显示游戏结果
是否继续游戏
判断输赢
显示未中奖信息
显示中奖信息
检验是否匹配,计算总得分
产生随机数
输入powerball number
输入whiteball numbers
输入押金金额
难度e
难度h
(2)类的封装
ustomer,并定义其用户的彩金及中奖等级,用nmoney,nrank来表示,pare(),用来比较用户的输入的数字和福彩号码。
定义一个福彩类CwelfareLot,将大奖号码放入数组truematch中,定义开奖过程函数play();pare。
(3)开奖过程的编写
将程序加以改进,使随机数不断变换显示,最后停在大奖的号码上。并且让玩家选择游戏的难易程度,随机产生大奖号码。具体程序如下:
int CWelfareLot::getgamenbr(char c)
{ int num;
if(c=='h'||c=='H')
{ for(int i=0;i<10000;i++)
{num=(rand()%48+1);
if(num<10)
cout<<num<<'\b';
else
cout<<num<<'\b'<<'\b';
}
cout<<num<<" ";
return num;
}
if(c=='e'||c=='E')
{ for(int i=0;i<10000;i++)
{ num=((rand()%17)+1);
if(num<10)
cout<<num<<'\b';
else
cout<<num<<'\b'<<'\b';
}
cout<<num<<" ";
return num;
}
}
(4)封装时增加一个比较玩家输入号码与大奖号码是否匹配的程序,如果相等返回1。
(5)在主函数中定义几个对象,输入结果,完成程序。
,容易使函数无法运行
,导致在完成编程后需要较大量的修改
,如随机产生大奖的函数等
,以至于花大量时间去整理程序的顺序
C 课程设计--福彩游戏 来自淘豆网www.taodocs.com转载请标明出处.