欢迎来到天天文库
浏览记录
ID:37571589
大小:90.50 KB
页数:17页
时间:2019-05-25
《c++麻将源代码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、#include"mj.h"#include"stdlib.h"#include"time.h"#include"iostream.h"//辅助函数编写CPlayMj::CPlayMj(){pPaiOwn=newPai[13];pPaiNew=newPai;pShowPai=newShowPai[13];pShowNewPai=newShowPai;iCiNum=0;iPongNum=0;iGangNum=0;iPairNum=0;iMark=0;};CPlayMj::~CPlayMj(){delete[]pPaiOwn;deletepPaiNew;delete[]pShowPa
2、i;deletepShowNewPai;};Pai*CPlayMj:aiInPaiOwn(Pai*pPaiRest,intiPaiNum){for(inti=0;i<13;i++){if(pPaiRest.iNum==1)//对未被吃,碰,杠{if(pPaiRest.iPaiNum==iPaiNum)returnpPaiRest+i;}}returnNULL;}boolCPlayMj::NumInNum(inta,intb){if(a>26
3、
4、b>26)return0;if(a>=0&&a<=8&&b>=0&&b<=8)return1;i
5、f(a>=9&&a<=17&&b>=9&&b<=17)return1;if(a>=18&&a<=26&&b>=18&&b<=26)return1;return0;}boolCPlayMj::IsPair(Pai*pPaiRest){for(inti=0;i<13;i++){if(pPaiRest.iPaiNum==pPaiNew->iPaiNum&&pPaiRest.iNum==1)return1;}return0;}voidCPlayMj:air(Pai*pPaiRest){for(inti=0;i<13;i++
6、){if(pPaiRest.iPaiNum==pPaiNew->iPaiNum&&pPaiRest.iNum==1){pPaiRest.iNum=0;pPaiNew->iNum=0;}}}Pai*CPlayMj::GetPaiOwn(){returnpPaiOwn;}Pai*CPlayMj::GetNew(){returnpPaiNew;}boolCPlayMj::GetMark(){returniMark;}voidCPlayMj::SetMark(booli){iMark=i;}voidCPlayMj::MyShow(Pai*pTemp){intiTemp;Sho
7、wPaipShowPai[14];for(inti=0;i<14;i++){iTemp=pTemp.iPaiNum;switch(iTemp/9){case0:pShowPai.Hua=WANG;//判断是那个牌花:万,条,铜pShowPai.str="万";pShowPai.iPaiNum=iTemp+1;//从1到9,下标转换为牌号break;case1:pShowPai.Hua=TONG;pShowPai.str="铜";pShowPai.iPaiNum=iTemp-9+1;break;case2:pShowPai.Hua=TIAO;pShowPai.str="条";
8、pShowPai.iPaiNum=iTemp-18+1;break;default:pShowPai.Hua=ZI;switch(iTemp){case27:pShowPai.str="东";break;case28:pShowPai.str="南";break;case29:pShowPai.str="西";break;case30:pShowPai.str="北";break;case31:pShowPai.str="中";break;case32:pShowPai.str="发";break;case33:pShowPai.str="白";break;default:;};
9、pShowPai.iPaiNum=iTemp;//字的只有7种,东南西北,中发白};pShowPai.iNum=pTemp.iNum;if(pShowPai.iPaiNum>26)cout<<i+1<<""<<pShowPai.str<<""<<pShowPai.iNum<<endl;elsecout<<i+1<<""<<pShowPai.iPaiNum<<
此文档下载收益归作者所有