最新C++课程设计--福彩游戏设计报告.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《最新C++课程设计--福彩游戏设计报告.doc》由会员分享,可在线阅读,更多相关《最新C++课程设计--福彩游戏设计报告.doc(65页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-dateC+课程设计-福彩游戏设计报告C+课程设计-福彩游戏设计报告南京理工大学VC课程设计报告课 程 : VC+课程设计选题名称 : 福彩游戏一、程序设计要求(1)定义一个福彩类,封装计算机开出的大奖号码及开奖过程函数和输出大奖号码的函数。(2)定义一个用户类,封装用户输入的数字和用户所拥有的彩金。初始化彩金为100元。每次下注2元,可以多次下注,具体赢得大奖或二等、三等奖
2、的奖金由自己设置,累加到用户的彩金中;二等奖或三等奖的规则也由自己设置。其中,用户的输入的数字与福彩号码的比较函数定义为福彩类的友元函数。(3)程序只要不选择退出且彩金允许就可以反复下注。二、程序设计思想(1)类的封装改程序的数据结构比较简单,主要数据就是彩金和大奖号码,因此,只要将与这两个数字相关的操作封装起来即可。class CCustomer /定义用户类private: int nMoney; /用户彩金 int nRank; /中奖的等级 int Welfare6; /福彩投注号码public: CCustomer( ); /构造函数 int SetWelfare( ); /接收福彩
3、投注,成功返回1 void Compare(CWelfareLot&); /比较福彩,赋值中奖等级 void Show( ); /根据中奖等级计算奖金,输出结果;class CWelfareLot /定义福彩类private: int LotNum6; /大奖号码public: CWelfareLot( ); /构造函数 void SetLot( ); /开奖过程 void PointLot( ); /输出大奖号码 friend void CCustomer :Compare(CWelfareLot &);(2)开奖过程的编写原程序的开奖过程比较简单,只是输出随机数结果,没有一般摇奖的效果,可
4、以将程序加以改进,使随机数不断变换显示,最后停在大奖号码上,这样效果更加逼真。void CWelfareLot :SetLot( ) int nRnd,nNum; for(int i=0;i6;i+) /要开出6个数字 nRnd=rand( ); /随机取循环次数,数字变换的时间长度是随机的 for(int j=0;jnRnd;j+) nNum=rand( )%21; /随机取020之间的数字进行变化if(nNum10)coutnNumb; /*当取的数字小于10,即一位数,显示后光标左移一位,再继续变换的数字将原数字覆盖,出现摇奖效果*/ else coutnNumbb; /当取的数字是两位
5、数,左移两位coutnNum“ ”;LotNumi=nNum; /变换到最后的数字即为大将数字(3)程序的进一步改进原程序要求玩家提供计算机随机数的种子,但如果种子固定,那么产生的随机数也固定,大奖的号码每次都相同,达不到原游戏的目的。我们还是用当前的时间作为随机数种子去顺序产生随机值,使得大奖号码都是随机的。如果大奖号码纯粹是随机数,那么玩家获得大奖几乎是不可能的,所有的玩家玩家都希望在游戏中找到乐趣,所以可以将游戏稍稍改进一下,用指定的用户名和密码进入,首先预定好大奖号码,开奖的操作照常进行,只不过停止变换后显示的数字是我们预定的,这样就可以使您成为虚拟世界的百万富翁!三、关键源代码注解定
6、义用户类:class person /用户类private:char code20; /用户输入的数字int money; /用户拥有的彩金friend class Game; /将输入数字作为福彩类的友元函数;定义福彩类私有成员:class Game /福彩类private:int play; /记录游戏者当前所在的局数int ball; /记录游戏者总共玩的局数int score; /记录游戏者赢的局数char name20; /储存游戏者的姓名char Reply2; /储存游戏者输入的字符y或nint seed; /储存游戏者输入的幸运数字int PowerBall; /储存游戏者输入
7、的PowerBall数字int total; /记录游戏者得的总分数int level; /储存游戏者所选的数字范围int rule; /储存游戏者所选的游戏规则int truematch6; /记录每个数字得的分数int num 5; /记录游戏者输入的whiteballl数字int cp_num6; /储存电脑所产生的随机数int bet; /赌注int x; /记录游戏等级char Reply3;定义福彩类公有成员并构造相应函数: public :Game ( ) /构造函数初始化赌资,游戏者当前所在的局数,游戏者总共玩的局数,游戏者赢的局数player.money=100;play=1
8、;ball=0;score=0; void gameboy1( ) /初始化姓名coutendl;cout请输入您的姓名:1 to 20 characters: ; cin.getline (name,20); coutendl; void set( ) /设置密码 cout您是否要设置密码y or n:reply5;if(reply5=y|reply5=Y)char ch; int i=0; cout请设置高级玩家密码 :; cout.flush(); /清输出缓冲区 ch=getch(); while(ch!=#) /当输入#字符时循环结束player.codei+=ch; cout*;
9、cout.flush(); ch=getch();player.codei=0; couttt密码载入中,请稍候.endl; wait(2000); /真实性处理 system(cls); /执行系统命令,清屏else strcpy(player.code,1111);coutendl; void menu( ) /选择游戏规则cout#游戏规则#endl;cout1大奖:当输入的6个数字全部匹配时游戏者赢!若赢您可获得所下赌注三倍的奖金,若输您将失去同样多的金额!endl;cout*; cout2二等奖:当输入的6个数字中至少有4个匹配时游戏者赢!若赢您可获得所下赌注两倍的奖金,若输您将失去
10、同样多的金额!endl;cout*; cout3三等奖:当输入的6个数字中至少有2个匹配时游戏者赢!若赢您可获得与您所下赌注相等的奖金,若输您将失去同样多的金额!endl; coutendl;coutnamex; /输入所选的游戏规则while(x!=1&x!=2&x!=3) /判断输入的数字是否合乎要求cout 请重新选择! 1 or 2 or 3x; /重新输入数字 switch(x) /根据输入的数字来确定游戏规则case 1: rule=6;break;case 2: rule=4;break;case 3: rule=2;cout数据载入中,请稍侯endl;wait(2000); /
11、真实性处理system(cls); /执行系统命令,清屏void _level( ) /选择游戏的难易程度cout#游戏难易程度说明#endl;coute:简单,在1-20中选择号码!endl;couth:困难,在1-40中选择号码!(若赢奖金在原基础上增加一倍哦!)endl;coutendl;coutnameReply3;while(Reply3!=e&Reply3!=h) /判断输入的字符是否合乎要求cout 请重新输入! e or hReply3; /重新输入字符switch(Reply3) /根据输入的字符初始化数字范围确定游戏难易case e: level=20;break;case
12、 h: level=40; int getgamenbr() /根据时间初始化随机数种子并产生随机数int ran; srand(unsigned)time(NULL);ran=rand()%level+1; /在已确定的范围内产生随机数 return (ran);void wait(int milli) /延时函数,产生多个种子clock_t start;start=clock();while(clock()-start)milli);void _show( ) /设置游戏提示信息 cout -n; cout * 欢迎来到福彩中心! 祝您好运! *n; cout -n; coutendl;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 C+ 课程设计 福彩 游戏 设计 报告
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内