【发布时间】:2015-10-22 23:44:26
【问题描述】:
var choices = new Dictionary<int, string> { { 1, "Rock" }, { 2, "Paper" }, { 3, "Scissors" } };
int input;
var randomly = new Dictionary<int, string> { { 1, "Rock" }, { 2, "Paper" }, { 3, "Scissors" } };
Random random = new Random();
int RandomNumber = random.Next(1, 4);
do
{
//Counter
double Wins = 0.0;
int Losses = 0;
int Ties = 0;
Console.WriteLine("-- Weapons Menu --");
Console.WriteLine("-------------------");
Console.WriteLine("1] Rock");
Console.WriteLine("2] Paper");
Console.WriteLine("3] Scissors");
Console.WriteLine("Choose Your Weapon [1, 2 or 3]:");
Console.WriteLine();
input = int.Parse(Console.ReadLine());
if (input == RandomNumber)
Console.WriteLine("You Tied The Computer");
Ties++;
//Winning
++Wins;
if (input == 1 && RandomNumber == 3)
Console.WriteLine("You Beat The Computer :)");
if (input == 2 && RandomNumber == 1)
Console.WriteLine("You Beat The Computer :)");
if (input == 3 && RandomNumber == 2)
Console.WriteLine("You Beat The Computer :)");
//Lossing
++Losses;
if (input == 1 && RandomNumber == 2)
Console.WriteLine("Sorry You Lost To The Computer :(");
if (input == 2 && RandomNumber == 3)
Console.WriteLine("You Beat The Computer :)");
if (input == 3 && RandomNumber == 1)
Console.WriteLine("You Beat The Computer :)");
Console.WriteLine(string.Format("Player Chose {0} : Computer Chose {1}", choices[input], randomly[RandomNumber]));
Console.WriteLine();
Console.WriteLine("<Press Any Key To Continue...>");
Console.WriteLine();
Console.WriteLine("Player Wins Computer Wins");
Console.WriteLine("---------- --------------");
Console.WriteLine(" {0} {1}", Wins, Losses);
Console.WriteLine();
Console.ReadKey();
}
while (input != 4) ;
Console.WriteLine("Thanks for playing!");
代码运行良好,虽然我无法在每场比赛完成后正确获得输赢记录。
【问题讨论】:
-
尽量不要发布太多代码。考虑对其进行编辑以仅显示相关部分。请参阅 minimal reproducible example。签出 faq 和 How to Ask。
-
Ties、Wins和Losses每次都会递增。我想你不明白如何使用花括号。