【发布时间】:2016-10-12 03:55:24
【问题描述】:
我有一个问题要解决,其中 2 个假设的对手正在决斗 RPG 风格。我被要求给他们 HP 并且循环的每一轮 HP 都会因他们的对手击中他们而分别丢失。我对此有了基本的了解,但我的数字不断重复。在 Visual Studios 15 上工作。提前致谢!
/*Fighter 1 is Charlie The Unicorn
*Fighter 2 is Nyan Cat
*Fighter 1 has 100 HP
*Fighter 2 has 150 HP
*Fighter 1 can hit as hard as 15HP each turn
*Fighter 2 can hit as hard as 10HP each turn
*/
//Who wins the fight
int fighterOneHealth = 100;
int fighterTwoHealth = 150;
Random randomizer = new Random();
while (fighterOneHealth > 0 || fighterTwoHealth > 0)
{
int fOneRandomHit;
int fTwoRandomHit;
fOneRandomHit = randomizer.Next(0, 15);
fTwoRandomHit = randomizer.Next(0, 10);
int fightOneHpLoss = fighterOneHealth - fTwoRandomHit;
int fightTwoHpLoss = fighterTwoHealth - fOneRandomHit;
Console.WriteLine("After attack: Charlie the Unicorn HP: {0}, Nyan Cat HP: {1}", fightOneHpLoss, fightTwoHpLoss);
}
【问题讨论】:
-
你永远不会修改你在条件语句
fighterOneHealth > 0 || fighterTwoHealth > 0中检查的值 -
此外,变量名称
fightOneHpLoss和fightTwoHpLoss让我感到困惑,因为它们是应用随机命中后剩下的马力。也许您的意思是fighterOneHealth -= fTwoRandomHit等?
标签: c# visual-studio while-loop