福彩游戲VC程序設計報告_第1頁
福彩游戲VC程序設計報告_第2頁
福彩游戲VC程序設計報告_第3頁
福彩游戲VC程序設計報告_第4頁
福彩游戲VC程序設計報告_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、課程設計報告學生基本信息 姓名: 班級: 培優(yōu)班學號: 二 福彩游戲簡介這是一個類似于福彩的游戲程序。玩家輸入自己的姓名與吉祥數(shù)字,計算機由此初始化隨機發(fā)生器,然后玩家輸入6個數(shù)字。若無效,發(fā)出錯誤信息并退出;若有效,則和計算機所產(chǎn)生的6個數(shù)字比較,根據(jù)匹配個數(shù)評定獎金。三 福彩游戲設計要求定義一個福彩類,封裝計算機開出的大獎號碼及開獎過程函數(shù)和輸出大獎號碼的函數(shù)。定義一個用戶類,封裝用戶輸入的數(shù)字和用戶所具有的彩金。初始化彩金為100元,每次下注2元,可以多次下注,具體贏得大獎或二等獎、三等獎的獎金由用戶自己設置,累加到用戶的彩金中;二等獎或三等獎的規(guī)則也由自己設置。其中,用戶輸入的數(shù)字與福

2、彩號碼的比較函數(shù)定義為福彩類的友員函數(shù)。程序只要不選擇退出且獎金允許就可以反復下注。評定難易級別A級程序設計設計思路梗概定義好用戶類與福彩類,處理好友員函數(shù),編寫比較函數(shù)接受投注的函數(shù)等函數(shù),并將函數(shù)封裝到各自的類中。編寫菜單函數(shù),最后寫主函數(shù)。用戶類class CCustomer /定義用戶類private:int nMoney; /用戶彩金char name20;int nRank; /中獎的等級int Welfare6;public:CCustomer(int i)nMoney=i; /構造函數(shù)CCustomer();int SetWelfare(); /接收福彩投注,成功返回1void

3、 Compare(CWelfareLot&); /比較福彩,賦值中獎等級void Print();void Show(); /根據(jù)中獎等級計算獎金,輸出結果int menu();3.福彩類class CWelfareLot /定義福彩類private:int LotNum6; /大獎號碼public:CWelfareLot(); /構造函數(shù)CWelfareLot();void SetLot(); /開獎過程void PrintLot();friend void CCustomer:Compare(CWelfareLot&); /判斷用戶是否中獎;4.重要函數(shù)(1)計算機開獎過程函數(shù)void C

4、WelfareLot:SetLot()int nRand,nNum;for(int i=0;i6;i+)nRand=rand(); /隨機取循環(huán)次數(shù),數(shù)字變換的時間長度是隨機的for(int j=0;jnRand;j+) nNum=rand()%21; /隨機取020間的數(shù)字進行變換if(nNum10)coutnNumb; /*一位數(shù)光標左移一位,覆蓋顯示搖獎效果*/else coutnNumbb;coutnNum ;LotNumi=nNum;(2)比較福彩函數(shù)void CCustomer:Compare(CWelfareLot&CWelfareLot1)for(int i=0;i6;i+)

5、/評定等級與獎金if(Welfarei=CWelfareLot1.LotNumi) s+;if(s=1|s=2|s=3) p=100*s;nRank=3;if(s=4|s=5) p=10000*s;nRank=2;if(s=6) p=5000000;nRank=1;(3)接受福彩投注函數(shù)int CCustomer:SetWelfare() /接收福彩投注cout nname, please enter your white ball numbers.n; cout n;int j;for (j=0; j5; j+) /輸入WhiteBall號碼coutEnter Ball(020間的數(shù)字) #

6、 j+1Welfarej;coutendl;while(Crit(Welfarej)=1)coutEnter Ball(020間的數(shù)字) # j+1Welfarej;coutendl;cout nameWelfare5;Crit(Welfare5);while(Crit(Welfare5)=1)coutEnter Ball(020間的數(shù)字) # 5+1Welfare5;coutendl;Crit(Welfare5);return 1;流程圖輸入玩家姓名玩家輸入吉祥數(shù)字玩家依次輸入5個WB數(shù)字與1個PB數(shù)字比較匹配數(shù)字個數(shù)計算機依次生成5個WB數(shù)字與1個PB數(shù)字顯示各數(shù)字是否繼續(xù)(y or n)

7、選y程序/*第5題福彩游戲-源代碼及關鍵源代碼注解如下:*/brought to you by the Red Deer College Code Junkies./included libraries necessary at runtime#include #include #include #include #include #include class CWelfareLot;class CCustomer /定義用戶類private:int nMoney; /用戶彩金char name20;int nRank; /中獎的等級int Welfare6;public:CCustomer(

8、int i)nMoney=i; /構造函數(shù)CCustomer();int SetWelfare(); /接收福彩投注,成功返回1void Compare(CWelfareLot&); /比較福彩,賦值中獎等級void Print();void Show(); /根據(jù)中獎等級計算獎金,輸出結果int menu();class CWelfareLot /定義福彩類private:int LotNum6; /大獎號碼public:CWelfareLot(); /構造函數(shù)CWelfareLot();void SetLot(); /開獎過程void PrintLot();friend void CCus

9、tomer:Compare(CWelfareLot&); /判斷用戶是否中獎;void CWelfareLot:SetLot()int nRand,nNum;for(int i=0;i6;i+)nRand=rand(); /隨機取循環(huán)次數(shù),數(shù)字變換的時間長度是隨機的for(int j=0;jnRand;j+) nNum=rand()%21; /隨機取020間的數(shù)字進行變換if(nNum10)coutnNumb; /*一位數(shù)光標左移一位,覆蓋顯示搖獎效果*/else coutnNumbb;coutnNum20|a0) coutBad input! endl;return 1;else retur

10、n 0;int CCustomer:SetWelfare() /接收福彩投注cout nname, please enter your white ball numbers.n; cout n;int j;for (j=0; j5; j+) /輸入WhiteBall號碼coutEnter Ball(020間的數(shù)字) # j+1Welfarej;coutendl;while(Crit(Welfarej)=1)coutEnter Ball(020間的數(shù)字) # j+1Welfarej;coutendl;cout nameWelfare5;Crit(Welfare5);while(Crit(Welf

11、are5)=1)coutEnter Ball(020間的數(shù)字) # 5+1Welfare5;coutendl;Crit(Welfare5);return 1;void CCustomer:Compare(CWelfareLot&CWelfareLot1)for(int i=0;i6;i+) /評定等級與獎金if(Welfarei=CWelfareLot1.LotNumi) s+;if(s=1|s=2|s=3) p=100*s;nRank=3;if(s=4|s=5) p=10000*s;nRank=2;if(s=6) p=5000000;nRank=1;void CCustomer:Show()

12、 /顯示獲獎情況if(s=0)cout Sorry name0)cout Congratulations name! You have got the nRankrank and p jackpot!Well-done!endl;coutn*n;void CCustomer:Print() /顯示玩家輸入的WB與PB號碼coutWB: ;for(int m=0;m6;m+)if(m=5) coutPB: ;coutWelfaremt;coutendl;void CWelfareLot:PrintLot() /顯示大獎號碼coutWB: ;for(int n=0;n6;n+)if(n=5) co

13、utPB: ;coutCWelfareLot1.LotNumnt;coutendl;int CCustomer:menu()char h;int seed;cout-n;cout* Welcome to PowerBall! *n;cout-n;cout -by 何蛟(0704330115)n;coutPlease enter your name 1 to 20 characters: ;cin.getline (name,20);coutn Welcome nameseed;srand(seed);wallet=nMoney;doSetWelfare();coutn*endl;coutn*H

14、ERE CAME THE EXCITING RESULT*nendl;coutn*nendl;cout n;CWelfareLot1.SetLot();Compare(CWelfareLot1);cout nTotal Matches: snn;Print();CWelfareLot1.PrintLot();Show();wallet=wallet-2+p;cout您現(xiàn)在的彩金為wallet0)coutname, would you like to play the game again? y or nh ;else h=n;while (h=y|h=Y);coutnThank you for playing PowerBall name! :-)endl;return 1;void main()CCustomer CCustomer1(100); /用戶彩金賦初值100CCustomer1.menu();設計總結總的來說,經(jīng)過這次課程設計,我感覺自己c+確實長進不少。從一開始的不敢入手,到后來的拿到程序基本上知道問題在那里,水平委實是提高很多?,F(xiàn)在呢,我不僅不再害怕做或感覺無從入手,而且還打算堅持把書上的做完,在這個過程中,會付出很多,但得到卻是超

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論