




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 #include#include#include#include#include#includeclass gamepublic:game()win=0,lose=0,draw=0,playerturns=0,cputurns=0,money=100,bet=0;player=0,cpu=0;char answer1=123456;strcpy(answer,answer1);char answer2=654321;strcpy(daan,answer2);void rules();/顯示規(guī)則void bet(); /下注void deal();/交易void run(game &);/進行
2、異常處理void hit1();/拿下一張牌void hit2();/確保莊家不會爆莊并且點數(shù)大于 16void print();/打印出最后結果void results();/最后的勝利結果void check();/檢查是否爆莊game operator=(game &d);/運算符重載void replay(char &ans);/是否進行新一輪的游戲void clean();/清屏void wait(int);void pause();int getint(int,int);int random(long,long);private:int playerturns,cputurns,m
3、oney;int win,lose,draw,bet;float player,cpu;char answer7;char daan7;/-void game:wait(int milli). clock_t start;start=clock();while( ( clock()-start ) milli );/=void game: pause()coutpress any key to continueendl;getch();/=int game:getint(int l=0,int h=100)int ent;coutplease enter a number between l
4、and hent;while(enth)couterrorendl;coutvalue must be between l and hent;return(ent);/=int game:random(long hi,long lo)/隨機抽牌int ran;srand(unsigned)time(null);ran=rand()%(hi-(lo-1)+lo;return(ran);/=void game:rules()coutttt *歡迎使用 21點游戲軟件*endl;coutendl;coutendl;coutttt游戲規(guī)則: endl;. coutendl;couttttcoutttt
5、couttttcouttttcouttttcoutttt;pause();:每輪游戲你最多只可以有 5張牌。endl;:如果你的點數(shù)超過 21將輸?shù)暨@輪游戲。endl;:高級玩家可以看下一張牌。endl;:勝利者將得到 2倍的注金。endl;:莊家牌點數(shù)不會小于 16點。endl;/-void game:bet()/下注system(cls);/執(zhí)行系統(tǒng)命令 clscoutttt你的資本:$moneyendl;coutbet;if(bet=0)cout對不起,輸入有誤;exit(0);if(money-bet0)cout對不起,你沒有那么多錢!:(; /sees if your brokeex
6、it(0);money-=bet;/-void game:deal()/發(fā)前兩張牌int playercard1,playercard2,cpucard1,cpucard2;float ccard1,ccard2,pcard2,pcard1;playerturns=2;/開始給玩家發(fā)兩張牌cputurns=2;/莊家也發(fā)兩張牌playercard1=random(13,1);/在 1到 13中找出一個隨機數(shù)coutnttt正在洗牌,請稍候.endl;wait(500);playercard2=random(13,1);wait(500);coutplayercard1;coutplayerca
7、rd210)/大于十的牌點數(shù)全部置為 0.5pcard1=0.5,player=pcard1,playercard1=0;if(playercard210)/大于十的牌點數(shù)全部置為 0.5pcard2=0.5,player+=pcard2,playercard2=0;player+=playercard1+playercard2;/總點數(shù)coutttt你現(xiàn)在的點數(shù)為:playerendl;coutendl;cpucard1=random(13,1);/調用函數(shù)wait(350);cpucard2=random(13,1);/調用函數(shù)coutttt莊家有一張 cpucard1 為正面牌!endl
8、;cout* cpucard110)/大于十的牌點數(shù)全部置為 0.5ccard1=0.5,cpu=ccard1,cpucard1=0;if(cpucard210)/大于十的牌點數(shù)全部置為 0.5ccard2=0.5,cpu+=ccard2,cpucard2=0;cpu+=cpucard1+cpucard2;/總的點數(shù)coutendl;/-void game:run(game &c2)/進行異常處理char ans;doint m=0;system(cls);/執(zhí)行系統(tǒng)命令 clsc2.clean();/進行新的一輪游戲!c2.check();/檢驗是否爆莊c2.bet(); /進行下注c2.d
9、eal(); /洗牌doif(playerturns=5)cout已達最大牌數(shù),不能再要牌了,請按任意鍵看你的總的點數(shù)!endl;. dotry/開始捕獲異常處理coutttt你愿意繼續(xù)嗎?(hit愿意,stay否):;m=0;/可以沒有的!但把下面的 if語句改一下就必須有了coutans;cin.ignore(20,n);/把輸入行中的其余字符取空,以便后面的輸入從新一輪開始if(ans=h)|(ans=h)|(ans=s)|(ans=s) break;else throw ans;/產(chǎn)生異常事件catch(char)/開始處理異常機制cout你的輸入有誤!:(請重新輸入endl;m=1;
10、catch(.)cout你的輸入有誤?。海ㄕ堉匦螺斎?)coutttt你不能多于 5張牌!endl;if(playerturns6)&(ans=h)coutendl;c2.hit1();while(ans=h)|(ans=h);for(;(cpu16)&(cputurns6);cputurns+)coutendl;coutttt莊家得到一張牌!endl;c2.hit2(); /calls hit functioncoutendl;. coutendl;coutttt莊家的點數(shù)為:cpuendl; /顯示莊家的總點數(shù)coutttt你的點數(shù)為:playerendl;/顯示玩家的總點數(shù)coutend
11、l;c2.results(); /看你是否贏了c2.replay(ans);while(ans=y)|(ans=y);void game:hit1()/取下一張并把它加入總和int card=0,copycard=0,bet1=0;float cards=0;card=random(13,1);copycard=card;char ans,s1100;cout如果您是普通玩家請按 n.endl;cout如果您是高級玩家或超級玩家請按y.ans;label1:if(ans=y|ans=y)cin.ignore(20,n);/把輸入行中的其余字符取空,以便后面的輸入從新一路輪開始cout請輸入特別
12、玩家的 6位密碼:;cin.getline(s1,7);/提取密碼if(!strcmp(s1,answer)coutttt這張牌是:copycardendl;coutans;if(ans=y|ans=y)cout你的現(xiàn)金還有$moneyendl;coutbet1;if(money-bet10)cout你沒有足夠的賭注;money=money-bet1;bet+=bet1;couttttelse你的總點數(shù)為 :playerendl;. if(cards=0.5)player-=cards;else player-=copycard;coutttt 你 的 總 點 數(shù)為 :playerendl;e
13、lseif(strcmp(s1,daan)=0)coutendl;cout 現(xiàn) 在 計 算 機 的 總 牌 點為:cpuendl;cout您的總牌點為:player10) card=0.5;cout下張牌面是:cardendl;coutcard;if(card10) card=0.5;coutendl;cout您要的牌為cardendl;player=player+card;/牌點總數(shù)cout總的牌面是 : playerendl;/輸出總點數(shù)coutendl;elsecout對不起,你輸入的密碼錯誤!不能看牌cout是 否 再 次 輸 入 密 碼 (yes or no)?endl;ans;if
14、(ans=y|ans=y)goto label1;else. coutttt 總 點 數(shù) 是 :player10)cards=0.5,card=0;player+=cards+card;coutttt總點數(shù)為 :playerendl;/-void game:hit2()/確保莊家不會爆莊并且點數(shù)大于 16int card=0,copycard=0;float cards=0;card=random(13,1);/調用函數(shù)copycard=card;cout這張牌是:10)cards=0.5,card=0;cpu=cpu+cards+card;if(cpu21)if(cards=0)cpu-=c
15、opycard;/當 card小于 10但總數(shù)大于 21時執(zhí)行else cpu-=cards;/當 card大于 10且點數(shù)大于 21時執(zhí)行coutttt總點數(shù)為:cpuendl;if(cpu16)/確保莊家點數(shù)大于等于 16cpu=16;coutttt總點數(shù)是:cpuendl;/-void game:results()/找出贏家. if(cpu=player)coutttt點數(shù)一樣,你們平了!21)coutttt啊哦,你爆了!:(endl;lose+;elseif(cpuplayer)cout21)coutttt恭喜你,莊家爆了!:)endl;if(player21)coutplayer)c
16、outttt不好意思,你輸了!:(win,lose=this-lose,draw=this-draw,playerturns=0,cputurns=0,money=this-money,bet=0,player=0,cpu=0;/-void game:replay(char &ans)/是否繼續(xù)游戲coutans;/-void game:check()if(money=0)/檢查錢的多少cout對不起,你輸光了,你不能玩了!:(endl; /sees if your broke/-void game:print()/打印最后結果void sign();couttttt贏 :winendl;couttttt負:loseendl;couttttt平 :drawendl;couttttt余額 :moneyendl;couttttt謝謝使用endl;if(money=-1000)coutttt你輸?shù)恼鎽K啊!:(end
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 模特兒培訓合作協(xié)議書
- 電梯管理協(xié)議書
- 維修基金協(xié)議書
- 耕地界樁協(xié)議書
- 哥哥宅基地安置協(xié)議書
- 田畝轉戶協(xié)議書
- 聯(lián)合開店協(xié)議書
- 簽署續(xù)展協(xié)議書
- 谷歌付款協(xié)議書
- 機械廠學徒合同協(xié)議書
- 《扣件式鋼管腳手架安全技術規(guī)范》JGJ130-2011
- 水利工程基礎知識優(yōu)質課件
- 清華斯維爾清單計價用戶手冊
- 基于“生活教育”理念下部編小學語文教材中“小練筆”教學策略研究 論文
- 高中生物必修一實驗通知單
- 課件:第四章 社會工作項目的執(zhí)行(《社會工作項目策劃與評估》課程)
- 冷庫施工組織設計施工方案
- 咯血診斷與治療課件
- 醫(yī)學影像專業(yè)個人簡歷
- 檢驗科 醫(yī)院感染管理質量督查評分表
- 獨立性檢驗 公開課比賽一等獎-完整版獲獎課件
評論
0/150
提交評論