MD5大作战c++程序Word文档格式.docx

上传人:b****4 文档编号:6536331 上传时间:2023-05-06 格式:DOCX 页数:22 大小:20.05KB
下载 相关 举报
MD5大作战c++程序Word文档格式.docx_第1页
第1页 / 共22页
MD5大作战c++程序Word文档格式.docx_第2页
第2页 / 共22页
MD5大作战c++程序Word文档格式.docx_第3页
第3页 / 共22页
MD5大作战c++程序Word文档格式.docx_第4页
第4页 / 共22页
MD5大作战c++程序Word文档格式.docx_第5页
第5页 / 共22页
MD5大作战c++程序Word文档格式.docx_第6页
第6页 / 共22页
MD5大作战c++程序Word文档格式.docx_第7页
第7页 / 共22页
MD5大作战c++程序Word文档格式.docx_第8页
第8页 / 共22页
MD5大作战c++程序Word文档格式.docx_第9页
第9页 / 共22页
MD5大作战c++程序Word文档格式.docx_第10页
第10页 / 共22页
MD5大作战c++程序Word文档格式.docx_第11页
第11页 / 共22页
MD5大作战c++程序Word文档格式.docx_第12页
第12页 / 共22页
MD5大作战c++程序Word文档格式.docx_第13页
第13页 / 共22页
MD5大作战c++程序Word文档格式.docx_第14页
第14页 / 共22页
MD5大作战c++程序Word文档格式.docx_第15页
第15页 / 共22页
MD5大作战c++程序Word文档格式.docx_第16页
第16页 / 共22页
MD5大作战c++程序Word文档格式.docx_第17页
第17页 / 共22页
MD5大作战c++程序Word文档格式.docx_第18页
第18页 / 共22页
MD5大作战c++程序Word文档格式.docx_第19页
第19页 / 共22页
MD5大作战c++程序Word文档格式.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

MD5大作战c++程序Word文档格式.docx

《MD5大作战c++程序Word文档格式.docx》由会员分享,可在线阅读,更多相关《MD5大作战c++程序Word文档格式.docx(22页珍藏版)》请在冰点文库上搜索。

MD5大作战c++程序Word文档格式.docx

array[k])

k=i;

returnk;

//------------------------定义hero类---------------------------------

classhero

private:

charname[100];

//英雄大名

intnature;

//天生值,便于对其他的属性赋值

intyear,month,day;

//生日

doubleyq;

//元气值1,,,他的值在作战后在刷新函数中更新

doubleyq2;

//元气值2,用来储存当前作战后的元气值,所有的功夫中军使用它,然后刷新后,在输出显示

doublefight;

//攻击力值

doubledef;

//防御力

doubleshaqi;

//

public:

hero();

voidGetName();

doubleGetYq(){returnyq2;

voidNATURE(char*n,intn1,inty,intr);

//天生的潜力值

voidsetme();

//对每个参数设定默认的值(每个人对应一个确定的值)

voidshowme();

//显示信息

voidrefresh(doubley);

//刷新英雄的个参数

voidShowKongFU(intdecide,hero&

A);

//显示功夫

voidlife();

//显示英雄的生命状况

intdecide(hero&

A);

//根据与A的综合对比,决定用什么招式

voidjian(hero&

//出剑

voidXiXinDaFa(hero&

//吸星大法

voidquan(hero&

//出拳

voidjiao(hero&

//出脚

voidbu(hero&

//补充元气

voiddajue(hero&

//致命一击

voidfairy(hero&

//仙女下凡

voiddefine(hero&

//抵挡

voidliangong(hero&

//逃跑,去练功

voidvs(doublea,doubleb);

//判断胜负的函数

~hero(){cout<

"

来世我们再战……"

endl;

}

};

//-----------------------得到hero天生对应的值------------------------

voidhero:

:

NATURE(char*n,intm,inty,intr)

intNature;

strcpy(name,n);

year=y;

month=m;

day=r;

inti,b;

for(i=0;

n[i]!

b=int(n[i]);

Nature+=b;

nature=abs(Nature/year/month*day);

//-------------------------构造函数---------------------------------

hero:

hero()

type("

……闭门苦修数十载……"

);

cout<

Sleep(100);

……这一战我等了十年,快出来吧……"

//--------------------------显示英雄的属性--------------------------

showme()

refresh(yq2);

cout<

英雄大名"

name<

'

\t'

元气"

yq<

攻击力"

fight<

防御力"

def<

杀气"

shaqi<

Sleep(600);

//---------------------------刷新英雄的各参数-----------------------

refresh(doubleyq2)

doubles=yq-yq2;

if(yq2<

500)//控制元气范围500,允许小于零,判断胜负

yq=yq2;

doublet=fight+s/10;

if(t<

350&

&

t>

20)//控制攻击力范围20~350

fight=t;

doubled=def+s/7;

//控制防御力范围20~300

if(d<

300&

20)

def=d;

doublesha=yq*0.25+fight*0.25+def*0.14;

if(sha<

sha>

70)//控制杀气范围小于300大于70

shaqi=sha;

//------------------------设定hero的名字----------------------------

GetName()

name;

//---------------------对hero的各参数初始化--------------------------

setme()

doublet;

t=prob(1,10)/10+0.1;

//产生0.1~0.2的随机数

yq=double(nature%300)+250.0+t/3.0;

//保证大于250

yq2=yq;

//初值暂时等于yq

nature=nature/13;

fight=double(nature%50)+150.0+t/5.0;

//只是一个即时用的

def=double(nature%50)+150.0+t/3.5;

shaqi=yq*0.25+fight+def*0.04+(t*400+50)*0.15;

//!

!

杀气值,根据自己的一些属性而加权得到!

//----------------------------生命力函数------------------------------------

life()

if(yq<

0)

元气殆尽,垂死挣扎……"

100&

yq>

元气大伤,危险!

Sleep(1000);

if(fight<

50.0)

的攻击力较低"

if(def<

的防御力较低,要小心了"

//------------------自己根据与A的综合对比,决定武功或防御或退隐练功--------------以自己为参照来看----------------------------------

inthero:

decide(hero&

A)

{

A.refresh(A.yq2);

doublea=prob(4,5)/10;

doubled=prob(3,4)/10;

doublec=prob(1,2)/10;

doubleb=1.0-a;

doubleyuanqi[10];

doublesha=prob(10,30);

if(yq>

175&

(sha==21||sha==22||sha<

12))

yuanqi[0]=yq-A.yq+fight*a-A.def*d;

//致命一击攻击A后不防御也不发功后多出的元气

if(def>

150&

fight<

150)

yuanqi[1]=-yq+A.yq+A.fight*a*0.10-def*b*0.22;

//define()被攻击后防御多出的元气

180&

200&

(sha=12||sha==29||sha==20))

yuanqi[2]=yq+0.25*fight+0.35*shaqi-A.yq-A.fight*0.55-A.shaqi*0.55+20;

//liangong(A)自己逃跑经过练功后多出的元气,自己有惩罚

16&

13||sha==23)//决定自己用何武功,伤元气控制在50~100左右,概率低则需要让值小

yuanqi[3]=yq-A.yq+38;

//quan(A)功夫

18&

15)

yuanqi[4]=yq-A.yq+40;

//jiao(A)

=26&

=24||sha==19)

yuanqi[5]=yq-A.yq+36;

//jian(A)

(sha==27||sha==13||sha==30))

yuanqi[6]=yq-A.yq+60;

//fairy(A),控制出现的概率

80&

220)

yuanqi[7]=yq-A.yq+50;

//吸星大法的自己增,对方减,概率很低,一直都要参与与其他情况额对比

//判断

returnmax_array(yuanqi,8);

//---------------根据决策判断使用的武功,或防守,或逃跑……-----------------------

ShowKongFU(intdecide,hero&

A)

switch(decide)

case0:

dajue(A);

break;

case1:

define(A);

case2:

liangong(A);

case3:

quan(A);

break;

case4:

jiao(A);

case5:

jian(A);

case6:

fairy(A);

case7:

XiXinDaFa(A);

this->

life();

A.life();

bu(A);

//************************对各功力的设定*****************************

//--------------------------出剑--------------------------------------

jian(hero&

doublep;

p=prob(35,45)+prob(1,3)/7;

A.yq2-=p;

掏出自己的倚天剑,向"

A.name<

刺去,伤了"

p<

的元气……"

Sleep(1000);

showme();

A.showme();

//----------------------------出拳-------------------------------------

quan(hero&

p=prob(30,38)+prob(1,3)/11;

给了"

一拳,打的"

A.name<

眼冒金星,伤了他"

//-------------------------出脚-------------------------------------

jiao(hero&

p=prob(40,50)+prob(1,3)/13;

运了运气,伸出右腿……"

Sleep(100);

向"

A.name;

发动天残神功,顿时地动山摇,一条裂缝向"

A.name;

type("

飞去……"

伤了"

//---------------------------防御-------------------------------------

define(hero&

doubleq;

if(A.yq-yq>

100)

q=0.25*A.fight-0.15*def+10;

def=0.65*def;

yq2=yq-q;

cout<

A.name<

name;

发动疯狂一击,瞬间风起云涌,乾坤颠倒……"

掏出随身带的武功秘籍,查阅得知,这便是失传已久的乾坤大挪移……于是他迅速闪开!

逼过一击!

欢喜异常!

很恼火,发动连击……"

再次闪过……"

但"

受了点轻伤了,损失了"

q<

的元气"

else

q=0.25*A.fight-0.15*def;

拔出祖传屠龙刀,向"

砍去……"

侧身一闪!

很恼火,发动连击,在砍一刀……"

被屠龙刀杀气所伤,损失了"

点元气"

//------------------------吸星大法-------------------------------------

XiXinDaFa(hero&

运了一个大气,向"

发功吸星大法"

A.yq2=A.yq2-shaqi*0.05-150;

yq2=yq2+shaqi*0.155+130;

损伤了"

shaqi*0.05+150<

顿时精神涣散"

吸了"

shaqi*0.155+130<

元气后功力大增……"

//-----------------------------仙女下凡----------------------------

fairy(hero&

q=prob(50,60);

遥望华山,南峰之巅,一道灵光划过……"

心生疑惑,自问着难道是仙女下凡"

果不其然,华山之神受惊扰,遂下凡一视……"

A.yq2=A.yq2-q;

yq2=yq2+q/2;

突然,由于分神,"

被"

刺伤,大伤"

点元气……"

乘机补充了一点仙女的灵气,元气恢复不少..."

//---------------------------补血-----------------------------------

bu(hero&

A)//shaqi270~350

75)

{

doublep=200+prob(0,50);

yq=yq+p;

捡到一粒仙丹"

元气大增,瞬间长了"

的元气!

elseif(yq<

doublep=50+prob(0,25);

做了一个深呼吸"

顿时神清气爽,长了"

250)

doublep=80+prob(0,25);

补充了一点干粮"

体力恢复不少,长了"

没有吃的,很是恼火……"

//--------------------------致命一击函数-----------------------------------

dajue(hero&

380&

fight>

230)

使出全身功力向"

发动致命一击"

A.yq2=A.yq2-fight*0.25-shaqi*0.35;

yq2=yq-0.12*yq;

损失了"

fight*0.25+shaqi*0.35<

A.yq2=A.yq2-fight*0.16-shaqi*0.23;

Sleep(600);

由于一时手软,只用了三成功力"

fight*0.16+shaqi*0.23<

//-------------------------自己逃跑练功---------------------------------

liangong(hero&

觉得偶感伤寒,向"

提出申请,休战三月"

爽快答应"

三月之后,华山之巅,我们之间必有一死……"

Sleep(3000);

endl<

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2