欢迎来到天天文库
浏览记录
ID:10705575
大小:59.50 KB
页数:10页
时间:2018-07-07
《c 课程设计--福彩游戏》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、C++程序设计报告2011年3月(与王强同学2人合作完成)课题名称:福彩游戏难易等级:A姓名:学号:10Vc++课程设计福彩游戏一、程序功能简介这是一个类似于福彩的游戏程序。游戏玩家输入自己的名字和吉祥数字,计算机由此初始化随机发生器,然后玩家输入范围内的6个数字,并判断输入是否有效。若无效,则发出错误信息并退出;若有效,则和计算机产生的该范围内的6个数字比较,若全部匹配,则玩家赢,否则玩家输。二.程序设计要求(1)定义一个福彩类CWelfareLot,封装计算机开出的大奖号码及开奖过程函数和输出大奖号码的函数。(2)定义一个用户类CCcus
2、tomer,封装用户输入的数字和用户所具有的彩金,初始化彩金为100元,而每注为2元,可以多次下注,具体赢得大奖或二等、三等奖的奖金由自己设置,累加到彩金中;二等奖、三等奖的规则也由自己设置。其中用户的输入的数字与福彩号码的比较函数定义为福彩类的友元函数。(3)程序只要不选择退出且彩金允许就可以反复下注。三.具体结束显示游戏结果是否继续游戏判断输赢显示未中奖信息显示中奖信息检验是否匹配,计算总得分产生随机数输入powerballnumber输入whiteballnumbers输入押金金额难度e难度h(2)类的封装先定义一个用户类CCustom
3、er,并定义其用户的彩金及中奖等级,用nmoney,nrank来表示,最重要的是定义一个友元函数Compare(),用来比较用户的输入的数字和福彩号码。定义一个福彩类Cwelfare10Vc++课程设计福彩游戏Lot,将大奖号码放入数组truematch中,定义开奖过程函数play();及友元函数Compare。(3)开奖过程的编写将程序加以改进,使随机数不断变换显示,最后停在大奖的号码上。并且让玩家选择游戏的难易程度,随机产生大奖号码。具体程序如下:intCWelfareLot::getgamenbr(charc){intnum;if(c=
4、='h'
5、
6、c=='H'){for(inti=0;i<10000;i++){num=(rand()%48+1);if(num<10)cout<7、8、c=='E'){for(inti=0;i<10000;i++){num=((rand()%17)+1);if(num<10)cout<9、}}(4)封装时增加一个比较玩家输入号码与大奖号码是否匹配的程序,如果相等返回1。(5)在主函数中定义几个对象,输入结果,完成程序。10Vc++课程设计福彩游戏四.遇到的困难1.在程序的开头容易忘记对友元函数进行声明,容易使函数无法运行2.在敲打程序的过程中容易打错一些字,导致在完成编程后需要较大量的修改3.对于一些函数的理解还是有些偏差,如随机产生大奖的函数等4.对于程序顺序的把握还是有些偏差,以至于花大量时间去整理程序的顺序五.仍存在的问题1.对于程序进一步改进的环节,经多次试验,还是无法运行,在理解上也有一些困难2.在判断玩家输入的数字10、是否在范围内时,无法在发出错误信息后退出程序3.密码程序编写还不够完整,有待改进《福彩游戏》程序设计#include#include#include#include#include#include#include#defineN6inttotal;classCWelfareLot;classCCustomer{10Vc++课程设计福彩游戏private:intn;//每次下的注数intnMoney;intnRan11、k;intWelfare[6];public:CCustomer(intx=100){nMoney=x;}intSetWelfare();voidCompare(CWelfareLot&);voidShow();};classCWelfareLot{private:intLotNum[6];public:CWelfareLot(){}voidSetLot();voidPrintLot();friendvoidCCustomer::Compare(CWelfareLot&);};voidCCustomer::Show(){inta;a=12/n12、Rank*n;nMoney=a+nMoney-n*2;cout<<"您获得奖金为:"<
7、
8、c=='E'){for(inti=0;i<10000;i++){num=((rand()%17)+1);if(num<10)cout<9、}}(4)封装时增加一个比较玩家输入号码与大奖号码是否匹配的程序,如果相等返回1。(5)在主函数中定义几个对象,输入结果,完成程序。10Vc++课程设计福彩游戏四.遇到的困难1.在程序的开头容易忘记对友元函数进行声明,容易使函数无法运行2.在敲打程序的过程中容易打错一些字,导致在完成编程后需要较大量的修改3.对于一些函数的理解还是有些偏差,如随机产生大奖的函数等4.对于程序顺序的把握还是有些偏差,以至于花大量时间去整理程序的顺序五.仍存在的问题1.对于程序进一步改进的环节,经多次试验,还是无法运行,在理解上也有一些困难2.在判断玩家输入的数字10、是否在范围内时,无法在发出错误信息后退出程序3.密码程序编写还不够完整,有待改进《福彩游戏》程序设计#include#include#include#include#include#include#include#defineN6inttotal;classCWelfareLot;classCCustomer{10Vc++课程设计福彩游戏private:intn;//每次下的注数intnMoney;intnRan11、k;intWelfare[6];public:CCustomer(intx=100){nMoney=x;}intSetWelfare();voidCompare(CWelfareLot&);voidShow();};classCWelfareLot{private:intLotNum[6];public:CWelfareLot(){}voidSetLot();voidPrintLot();friendvoidCCustomer::Compare(CWelfareLot&);};voidCCustomer::Show(){inta;a=12/n12、Rank*n;nMoney=a+nMoney-n*2;cout<<"您获得奖金为:"<
9、}}(4)封装时增加一个比较玩家输入号码与大奖号码是否匹配的程序,如果相等返回1。(5)在主函数中定义几个对象,输入结果,完成程序。10Vc++课程设计福彩游戏四.遇到的困难1.在程序的开头容易忘记对友元函数进行声明,容易使函数无法运行2.在敲打程序的过程中容易打错一些字,导致在完成编程后需要较大量的修改3.对于一些函数的理解还是有些偏差,如随机产生大奖的函数等4.对于程序顺序的把握还是有些偏差,以至于花大量时间去整理程序的顺序五.仍存在的问题1.对于程序进一步改进的环节,经多次试验,还是无法运行,在理解上也有一些困难2.在判断玩家输入的数字
10、是否在范围内时,无法在发出错误信息后退出程序3.密码程序编写还不够完整,有待改进《福彩游戏》程序设计#include#include#include#include#include#include#include#defineN6inttotal;classCWelfareLot;classCCustomer{10Vc++课程设计福彩游戏private:intn;//每次下的注数intnMoney;intnRan
11、k;intWelfare[6];public:CCustomer(intx=100){nMoney=x;}intSetWelfare();voidCompare(CWelfareLot&);voidShow();};classCWelfareLot{private:intLotNum[6];public:CWelfareLot(){}voidSetLot();voidPrintLot();friendvoidCCustomer::Compare(CWelfareLot&);};voidCCustomer::Show(){inta;a=12/n
12、Rank*n;nMoney=a+nMoney-n*2;cout<<"您获得奖金为:"<
此文档下载收益归作者所有