您的位置:首页 > 其它

实现相同功能的两个方法 优缺不言而喻

2012-07-31 12:12 246 查看
// 两个footman 相互你一下我一下的对方lift为零者 输

public void Fight(Footman a, Footman b)

{
int a_p = 0;
int b_p = 0;
Random rd = new Random();
Console.WriteLine("比赛开始:");
Console.WriteLine("{0}的生命值为{1},攻击力下限为{2},上限为{3}", a.Name, a.Life, a.AttackLow, a.AttackHigh);
Console.WriteLine("{0}的生命值为{1},攻击力下限为{2},上限为{3}", b.Name, b.Life, b.AttackLow, b.AttackHigh);
while (true)
{

a_p = rd.Next(a.AttackHigh- a.AttackLow+1)+a.AttackLow;
b.Life -= a_p;
Console.WriteLine("{0}以{1}的攻击力打了{2}", a.Name, a_p, b.Name);
if (b.Life <= 0)
{
Console.WriteLine("The winner is {0}",a.Name);
break;
}
// Console.WriteLine("{0}以{1}的攻击力打了{3}", a.Name, a_p, b.Name);
b_p = rd.Next(b.AttackHigh-b.AttackLow+1)+b.AttackLow;
a.Life -= b_p;
Console.WriteLine("{0}以{1}的攻击力打了{2}", b.Name, b_p, a.Name);
if (a.Life <= 0)
{
Console.WriteLine("The winner is {0}",b.Name);
break;
}
//Console.WriteLine("{0}以{1}的攻击力打了{3}", b.Name, b_p, a.Name);
}

。。。。。。。。。。。。。。。。

public void Fight1(Footman a, Footman b)
{
Random rd = new Random();
Footman battle = a;
Footman define = b;

while (battle.Life > 0 && define.Life > 0)
{
int power = rd.Next(battle.AttackHigh - battle.AttackLow + 1) + battle.AttackLow;
define.Life -= power;
Console.WriteLine("{0}攻击了{1},造成{2}的伤害",battle.Name,define.Name,power);
Footman tmp = battle;
battle = define;
define = tmp;

}
if (a.Life <= 0)
{
Console.WriteLine("{0}挂了",a.Name );
}
if (b.Life <= 0)
{
Console.WriteLine("{0}挂了", b.Name);
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  实现相同功能
相关文章推荐