程序的設(shè)計(jì)21點(diǎn)撲克牌游戲_第1頁(yè)
程序的設(shè)計(jì)21點(diǎn)撲克牌游戲_第2頁(yè)
程序的設(shè)計(jì)21點(diǎn)撲克牌游戲_第3頁(yè)
程序的設(shè)計(jì)21點(diǎn)撲克牌游戲_第4頁(yè)
程序的設(shè)計(jì)21點(diǎn)撲克牌游戲_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、課程設(shè)計(jì)課程名稱(chēng):程序設(shè)計(jì)課題名稱(chēng):21點(diǎn)撲克牌游戲班 級(jí):計(jì)算機(jī)學(xué)院12-2BJ班完成人:曹開(kāi)明指導(dǎo)教師:李宛珊湖南理工學(xué)院計(jì)算機(jī)學(xué)院2013年12月19日學(xué)習(xí)參考一、設(shè)計(jì)目的面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)是計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)和軟件工程專(zhuān)業(yè)集中實(shí)踐性 環(huán)節(jié)之一,是學(xué)習(xí)完面向?qū)ο蟪绦蛟O(shè)計(jì)課程后進(jìn)行的一次全面的綜合練習(xí)。其目的 在于加深對(duì)面向?qū)ο蟪绦蛟O(shè)計(jì)中基礎(chǔ)理論和基本知識(shí)的理解,培養(yǎng)學(xué)生的實(shí)踐能力,促 進(jìn)理論與實(shí)踐的結(jié)合。通過(guò)課程設(shè)計(jì),讓學(xué)生能夠熟練運(yùn)用C+進(jìn)行面向?qū)ο缶幊?,建?對(duì)象模型,降低軟件的復(fù)雜性,改善軟件的重用性和維護(hù)性,提高軟件的生產(chǎn)效率,全 面掌握面向?qū)ο?/p>

2、編程技術(shù)。二、系統(tǒng)的功能分析必須包括:系統(tǒng)的功能需求,可以畫(huà)出功能模塊圖程序的N-S流程圖如下圖所示:三、系統(tǒng)的程序設(shè)計(jì)與實(shí)現(xiàn)學(xué)習(xí)參考系統(tǒng)的運(yùn)行環(huán)境:Visual C+ 6.0 (完整綠色版) 開(kāi)發(fā)環(huán)境:C+ 系統(tǒng)的詳細(xì)設(shè)計(jì):類(lèi) class CCard該程序只需要一個(gè)CCard類(lèi),其中有如下步驟:Class CCardPrivate:Int mPip5; Int mNumber; Int mDollar; Int mGamble;Int mWin;Int mLose;Int mDraw:(一共有5張牌)(牌的張數(shù))(一共有多少錢(qián))(賭注)(贏得局?jǐn)?shù))(輸?shù)木謹(jǐn)?shù))(平的局?jǐn)?shù))Public:CCa

3、rd ();(構(gòu)造函數(shù)初始化)Void FistplayTwoO ;(第一次出兩張牌)Int GetNumber();(返回牌的數(shù)目)Int GetPipO ;(顯示牌的總點(diǎn)數(shù))Void DisplayPip():(一次顯示牌的點(diǎn)數(shù))Void DisplayPip(int);(除第一張牌,一次顯示牌的點(diǎn)數(shù))Void Turnplay();(出第一張牌)Void Win();(贏了多少錢(qián))Void Lose ():(輸了)Void Draw();(平了)Int SetGamble (int):(設(shè)置賭注)Int GetMoney ();(返回錢(qián)數(shù))Void Displayinfo ():(打印必

4、要信息)Int GetCurrentCardO ;(返回當(dāng)前牌)學(xué)習(xí)參考四、系統(tǒng)的運(yùn)行結(jié)果與分析主要是開(kāi)始運(yùn)行的界面:次迎進(jìn)人21.點(diǎn)涼戲世界?;_暴則占小囂汪嘆總多點(diǎn)得方 規(guī)家果冢算 戲頊如弊12 3 4彳兄您好運(yùn)!舉否現(xiàn)在開(kāi)始游戲段川?當(dāng)賭注下多了: *CWindowssystem32Debug;*2S 計(jì).ewe,災(zāi)迎邊人21點(diǎn)游戲世界爲(wèi)往21點(diǎn);則杲軋目動(dòng)判輸; 斐宇等于16時(shí)不再亜牌o可砌薯 多點(diǎn)得方 鑒牌可機(jī) I 12 3 4祝您好運(yùn),是否現(xiàn)在幵始湄及d? 耘現(xiàn)在有賭本=$ 10。12b請(qǐng)下掛i匸不能超過(guò)賭態(tài): 感取竝本不愛(ài)詩(shī)圭新下注?您現(xiàn)在 F=$100詰卞住c賭注不能超過(guò)賭本=

5、學(xué)習(xí)參考玩完游戲:By rl 莊 iffu-V/N凳 -: 14 點(diǎn)數(shù) 聚牌爲(wèi)點(diǎn) 繼這要點(diǎn)的面 糜卸f /很還降薜輸了?? 牌面點(diǎn)數(shù)M9贅的彈居:輸家牌面:2霍乂:旳 就了D次 輸了2次平局0次 足咅繼續(xù)2丄點(diǎn)游戲?附錄:系統(tǒng)的源程序# iiiclude# iiiclude# iiiclude using namespace std;class CCardprivate:int naPip5;int iiNumber;int liDollar;int nGainble;int nWin;int liLose;int liDraw;public:CCaid();學(xué)習(xí)參考void FiistPla

6、yTwo();int GetNumbei();int GetPipQ;void DisplayPipQ;void DisplayPip(int);void TuinPlayO;void WinQ;void LoseQ;void Draw();int SetGamble(iiit);int GetMoneyQ;void Displayliifb();int GetCuirentCaid();CCaid:CCard()nNumbei-0;iiDollai-100;fbr(int i=0;i5;i+)naPipi=0;nGainble=O;nWin=iiLose=iiDiaw=0;int CCard

7、: :GetMonev(void) return liDollar;void CCard:DisplayIiifd()coutn您一共玩 了ynWin+nLose+nDniwvv”局,贏 了局,輸 了 niiLoseM局;,H平局HiiDiawH次。iT;coutH你的賭本共計(jì)有 $niiDollaiHo iiH;學(xué)習(xí)參考int CCard: :SetGamble(mt gamble)if(iiDollar-gamble0)letuin -1;if(gamble0)if(iiDollai-200)letuin -1;nGamble=20;elsenGamble=gamble;liDollain

8、Gamble;retiiin 0;void CCard: FirstPlavTwo() naPipO=randO% 13+1;naPip 1 =rand()% 13+1;iiNumbei-2;int CCard: :GetCunentCard() return naPipiiNumber-1;int CCard: :GetNumber() return iiNumber;int CCard:GetPip() iiit iiPip=O;fbr(iiit i=0;i=10)nPip+=10;學(xué)習(xí)參考elsenPip+=naPipi;retiiin nPip;void CCard:DisplayPi

9、p() fdr(int i=O;i21)coutH 暴了!n”;elsecoutH 牌面點(diǎn)數(shù):,GetPipOendl;coutH 賭本:$HiiDollaiH 贏了 YcnWincv” 次 輸了 HnLoseH 次 平局 HiiDrawM 次 Hendl;coutendlendl;void CCard:Draw()iiDiaw+;iiDollai+=nGainble;cout平局牌面:”;DisplayPipQ;if(GetPip()21)coutH 暴了!n”;elsecoutH 牌面點(diǎn)數(shù):nGetPip()endl;coutH 賭本:$HiiDollaiH 贏了 YcnWincv” 次

10、輸了 HnLoseH 次 平局 HiiDrawM 次 Hendl;coutendlendl;void CCard:DisplayPip(int n) coutM*Hf;foi(mt i= 1 ;i21 &player. GetPip()21)|cpu.GetPipO=playe 匚 GetPip() coutniiii 平局!n”;coutH計(jì)算機(jī)數(shù)據(jù):t”;cpu.DisplayPip();coutH 牌面點(diǎn)數(shù):Hcpu.GetPipOendl;COUtll 您的數(shù)據(jù):t;player.Draw();coutendl;else if(cpu.GetPip()21) |(player.GetP

11、ipQcpu.GetPip()&player.GetPip()=21)coutnii 恭喜您,您贏了coutH計(jì)算機(jī)數(shù)據(jù):t”;cpu.DisplayPip();coutH 牌面點(diǎn)數(shù):Hcpu.GetPipOendl;COUtll 您的數(shù)據(jù):t;playe 匚 Win();coutendl;else學(xué)習(xí)參考 coutniiii 很遺憾,您輸了!n”;coutH計(jì)算機(jī)數(shù)據(jù):t”;cpu.DisplayPip();coutH 牌面點(diǎn)數(shù):,cpu.GetPipOendl;COUtll 您的數(shù)據(jù):t;player.LoseQ;coutendl;void PlayTurn(CCard &cpuCCard

12、 &player) chai chChoice;int blCpu=1 .blPlavei-1;cpu.FirstPlayTwoQ;player. F ustP layTwoQ;do cout”您的牌點(diǎn)為:f:player.DisplayPip();coutvv”計(jì)算機(jī)的牌點(diǎn)為:t”;cpu.DisplayPip(l);coutH 您的牌面點(diǎn)數(shù)是:nplayer.GetPipOendl;if(blPlayer) cout,iiii 您是否繼續(xù)要牌(Y/N)?;ciiicliChoice;if(chChoice=,Y,|chChoice=y)if(player.GetNumbei()21)blP

13、laver=O;J學(xué)習(xí)參考elsecout”對(duì)不起,您已經(jīng)要了 5張牌,不能再要牌了!“;blPlaver=O;if(chChoice=fN,|chChoice=-n,)blPlaver=O;J,if(cpu .GetPip() 16&cpu .GetNumber()5)cpu.TuinPlayO;coutH 計(jì)算機(jī)要牌,牌點(diǎn)是:,cpu.GetCurrentCaidOendl;elseblCpu=O;if(blCpu&player. GetNumberQ5&player. GetPipQ21) blPlayer=l; wlule(blCpu| biPlayer);Judge(cpu,player);retiiin;int mam(void)srand(unsigned)tiine(NULL);CCaid cpu,player;int biLogic;int iiMoney;DisplavRuleQ;char chChoice;學(xué)習(xí)參考coutH是否現(xiàn)在開(kāi)始游戲(Y/N)?n“;ciiichChoice;while(chChoice=,Y, |chChoice=y) docout 您現(xiàn)在有賭本:Snplayer. GetMonev();coutn請(qǐng)卞注(賭注不能超過(guò)賭本):;ciiinMonev;blLogic=plaver. S

溫馨提示

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

評(píng)論

0/150

提交評(píng)論