資源簡介
21點是一個廣受歡迎的游戲,這里用純C++實現了21點游戲!

代碼片段和文件信息
#include?“BlackJack.h“
BlackJack::BlackJack()
{
m_nCount?=?0;
m_arrBanker.clear();
m_arrPlayer.clear();
Init();
}
BlackJack::~BlackJack()
{
m_nCount?=?0;
m_arrBanker.clear();
m_arrPlayer.clear();
}
void?BlackJack::FirstDeal()
{
BankerDeal();
PlayerDeal();
BankerDeal();
PlayerDeal();
}
void?BlackJack::Shuffle()
{
m_nCount?=?0;
srand(static_cast(time(NULL)));
int?a?=?0;
int?b?=?0;
for?(int?i?=?0;?i?1000;?++i)
{
a?=?rand()?%?52;
b?=?rand()?%?52;
Swap(a?b);
}
}
void?BlackJack::PlayerDeal()
{
if?(m_nCount?>=?52)
{
m_nCount?=?0;
m_arrBanker.clear();
m_arrPlayer.clear();
Init();
Shuffle();
m_arrPlayer.push_back(m_arrPoker[m_nCount]);
}
else
{
m_arrPlayer.push_back(m_arrPoker[m_nCount++]);
}
}
void?BlackJack::BankerDeal()?
{
if?(m_nCount?>=?52)
{
m_nCount?=?0;
m_arrBanker.clear();
m_arrPlayer.clear();
Init();
Shuffle();
m_arrPlayer.push_back(m_arrPoker[m_nCount]);
}
else
{
m_arrBanker.push_back(m_arrPoker[m_nCount++]);
}
}
bool?BlackJack::IsDead(vector?arrCard)?const
{
if?(GetToteNumber(arrCard)?>?21)
{
return?true;
}
return?false;
}
bool?BlackJack::PlayerWanted()
{
char?c;
do?
{
cout?<“要抓牌嗎???(Y/N)?:?“;
cin?>>?c;
cout?< }?while?(!(c?==?‘y‘?||?c?==?‘Y‘?||?c?==?‘n‘?||?c?==?‘N‘));
if?(c?==?‘y‘?||?c?==?‘Y‘)
{
return?true;
}
else
{
return?false;
}
}
bool?BlackJack::BankerWanted()
{
if?(!IsDead(m_arrBanker)?&&
!IsDead(m_arrPlayer)?&&
GetToteNumber(m_arrBanker)?yer))
{
return?true;
}
else?if?(
!IsDead(m_arrBanker)?&&?
!IsDead(m_arrPlayer)?&&
GetToteNumber(m_arrBanker)?==?GetToteNumber(m_arrPlayer)?&&
GetToteNumber(m_arrBanker)?>=?20)
{
return?false;
}
else?
{
return?false;
}
}
bool?BlackJack::Replay()
{
m_arrBanker.clear();
m_arrPlayer.clear();
char?c;
do?
{
cout?<“是否在來一局???(Y/N)?:?“;
cin?>>?c;
cout?<
}?while?(c?!=?‘y‘?&&?c?!=?‘Y‘?&&?c?!=?‘n‘?&&?c?!=?‘N‘);
if?(c?==?‘y‘?||?c?==?‘Y‘)
{
return?true;
}
else
{
return?false;
}
}
void?BlackJack::PrintBanker()?const
{
cout?<“莊家的牌是:“?<
for?(unsigned?int?i?=?0;?i? {
if?(i)
{
cout?<?‘?‘?< }
else
{
cout?< }
}
cout?< cout?<“莊家的總點數為:“?< cout?< cout?<}
void?BlackJack::PrintPlayer()?const
{
cout?<“玩家的牌是:“?<
for?(unsigned?int?i?=?0;?i?yer.size();?++i)?
{
if?(i)
{
cout?<‘?‘<yer[i].nNumber;
}
else
{
cout?<yer[i].nNumber;
}
}
cout?< cout?<“玩家的總點數為:?“?< cout?<yer)< cout?<?endl;
}
void?BlackJack::Result()
{
i
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2013-10-27?15:54??BlackJack\
?????目錄???????????0??2013-10-17?10:55??BlackJack\BlackJack\
?????文件????29577216??2013-10-27?15:54??BlackJack\BlackJack.sdf
?????文件?????????894??2013-10-14?15:17??BlackJack\BlackJack.sln
?????文件???????18432??2013-10-27?15:54??BlackJack\BlackJack.suo
?????文件????????4690??2013-10-27?15:49??BlackJack\BlackJack\BlackJack.cpp
?????文件????????4087??2013-10-27?15:26??BlackJack\BlackJack\BlackJack.h
?????文件????????4095??2013-10-14?21:10??BlackJack\BlackJack\BlackJack.vcxproj
?????文件????????1223??2013-10-14?21:10??BlackJack\BlackJack\BlackJack.vcxproj.filters
?????文件?????????143??2013-10-14?15:16??BlackJack\BlackJack\BlackJack.vcxproj.user
?????目錄???????????0??2013-10-27?15:47??BlackJack\BlackJack\Debug\
?????文件?????????406??2013-10-14?21:24??BlackJack\BlackJack\Debug\BlackJack.exe.em
?????文件?????????472??2013-10-27?15:45??BlackJack\BlackJack\Debug\BlackJack.exe.em
?????文件?????????381??2013-10-27?15:46??BlackJack\BlackJack\Debug\BlackJack.exe.intermediate.manifest
?????文件??????????60??2013-10-27?15:47??BlackJack\BlackJack\Debug\BlackJack.lastbuildstate
?????文件?????????871??2013-10-27?15:47??BlackJack\BlackJack\Debug\BlackJack.log
?????文件??????322119??2013-10-27?15:46??BlackJack\BlackJack\Debug\BlackJack.obj
?????文件?????1179648??2013-10-14?21:08??BlackJack\BlackJack\Debug\BlackJack.pch
?????文件?????????208??2013-10-14?21:22??BlackJack\BlackJack\Debug\BlackJack_manifest.rc
?????文件????????3408??2013-10-27?15:46??BlackJack\BlackJack\Debug\cl.command.1.tlog
?????文件???????97396??2013-10-27?15:46??BlackJack\BlackJack\Debug\CL.read.1.tlog
?????文件????????2630??2013-10-27?15:46??BlackJack\BlackJack\Debug\CL.write.1.tlog
?????文件???????????2??2013-10-27?15:46??BlackJack\BlackJack\Debug\li
?????文件???????????2??2013-10-27?15:46??BlackJack\BlackJack\Debug\li
?????文件???????????2??2013-10-27?15:46??BlackJack\BlackJack\Debug\li
?????文件???????????2??2013-10-27?15:46??BlackJack\BlackJack\Debug\li
?????文件???????????2??2013-10-27?15:46??BlackJack\BlackJack\Debug\li
?????文件???????????2??2013-10-27?15:46??BlackJack\BlackJack\Debug\li
?????文件???????????2??2013-10-27?15:46??BlackJack\BlackJack\Debug\li
?????文件???????????2??2013-10-27?15:46??BlackJack\BlackJack\Debug\li
?????文件???????????2??2013-10-27?15:46??BlackJack\BlackJack\Debug\li
............此處省略32個文件信息
- 上一篇:基于opencv的圖像配準程序
- 下一篇:Huffman和算術編碼的C++實現
評論
共有 條評論