Advertisement
anilak

CardWars Corrected

Dec 1st, 2013
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.52 KB | None | 0 0
  1. namespace _02_CardWars
  2. {
  3.     using System;
  4.     using System.Numerics;
  5.     class CardWars
  6.     {
  7.         static void Main()
  8.         {
  9.             int n = int.Parse(Console.ReadLine());
  10.  
  11.             int gamesFirstPlayer = 0;
  12.             int gamesSecondPlayer = 0;
  13.             int currentScoreFirstPlayer = 0;
  14.             int currentScoreSecondPlayer = 0;
  15.             BigInteger totalScoreFirstPlayer = 0;
  16.             BigInteger totalScoreSecondPlayer = 0;
  17.             bool xCardFirstPlayer = false;
  18.             bool xCardSecondPlayer = false;
  19.  
  20.             for (int i = 0; i < n; i++)
  21.             {
  22.                 for (int j = 0; j < 3; j++)
  23.                 {
  24.                     string card = Console.ReadLine();
  25.                     switch (card)
  26.                     {
  27.                         case "2": currentScoreFirstPlayer += 10; break;
  28.                         case "3": currentScoreFirstPlayer += 9; break;
  29.                         case "4": currentScoreFirstPlayer += 8; break;
  30.                         case "5": currentScoreFirstPlayer += 7; break;
  31.                         case "6": currentScoreFirstPlayer += 6; break;
  32.                         case "7": currentScoreFirstPlayer += 5; break;
  33.                         case "8": currentScoreFirstPlayer += 4; break;
  34.                         case "9": currentScoreFirstPlayer += 3; break;
  35.                         case "10": currentScoreFirstPlayer += 2; break;
  36.                         case "A": currentScoreFirstPlayer += 1; break;
  37.                         case "J": currentScoreFirstPlayer += 11; break;
  38.                         case "Q": currentScoreFirstPlayer += 12; break;
  39.                         case "K": currentScoreFirstPlayer += 13; break;
  40.                         case "Z": totalScoreFirstPlayer *= 2; break;
  41.                         case "Y": totalScoreFirstPlayer -= 200; break;
  42.                         case "X": xCardFirstPlayer = true; break;
  43.                         default: break;
  44.                     }
  45.                 }
  46.                 for (int j = 0; j < 3; j++)
  47.                 {
  48.                     string card = Console.ReadLine();
  49.                     switch (card)
  50.                     {
  51.                         case "2": currentScoreSecondPlayer += 10; break;
  52.                         case "3": currentScoreSecondPlayer += 9; break;
  53.                         case "4": currentScoreSecondPlayer += 8; break;
  54.                         case "5": currentScoreSecondPlayer += 7; break;
  55.                         case "6": currentScoreSecondPlayer += 6; break;
  56.                         case "7": currentScoreSecondPlayer += 5; break;
  57.                         case "8": currentScoreSecondPlayer += 4; break;
  58.                         case "9": currentScoreSecondPlayer += 3; break;
  59.                         case "10": currentScoreSecondPlayer += 2; break;
  60.                         case "A": currentScoreSecondPlayer += 1; break;
  61.                         case "J": currentScoreSecondPlayer += 11; break;
  62.                         case "Q": currentScoreSecondPlayer += 12; break;
  63.                         case "K": currentScoreSecondPlayer += 13; break;
  64.                         case "Z": totalScoreSecondPlayer *= 2; break;
  65.                         case "Y": totalScoreSecondPlayer -= 200; break;
  66.                         case "X": xCardSecondPlayer = true; break;
  67.                         default: break;
  68.                     }
  69.                 }
  70.                 if (xCardFirstPlayer && xCardSecondPlayer)
  71.                 {
  72.                     totalScoreFirstPlayer += 50;
  73.                     totalScoreSecondPlayer += 50;
  74.                     xCardFirstPlayer = false;
  75.                     xCardSecondPlayer = false;
  76.                 }
  77.                 else if (xCardFirstPlayer || xCardSecondPlayer)
  78.                 {
  79.                     break;
  80.                 }
  81.                 if (currentScoreFirstPlayer > currentScoreSecondPlayer)
  82.                 {
  83.                     totalScoreFirstPlayer += currentScoreFirstPlayer;
  84.                     gamesFirstPlayer++;
  85.                 }
  86.                 else if (currentScoreFirstPlayer < currentScoreSecondPlayer)
  87.                 {
  88.                     totalScoreSecondPlayer += currentScoreSecondPlayer;
  89.                     gamesSecondPlayer++;
  90.                 }
  91.  
  92.                 currentScoreFirstPlayer = 0;
  93.                 currentScoreSecondPlayer = 0;  
  94.             }
  95.  
  96.             if (xCardFirstPlayer)
  97.             {
  98.                 Console.WriteLine("X card drawn! Player one wins the match!");
  99.             }
  100.             else if (xCardSecondPlayer)
  101.             {
  102.                 Console.WriteLine("X card drawn! Player two wins the match!");
  103.             }
  104.             else
  105.             {
  106.                 if (totalScoreFirstPlayer == totalScoreSecondPlayer)
  107.                 {
  108.                     Console.WriteLine("It's a tie!");
  109.                     Console.WriteLine("Score: {0}", totalScoreFirstPlayer);
  110.                 }
  111.                 else if (totalScoreFirstPlayer > totalScoreSecondPlayer)
  112.                 {
  113.                     Console.WriteLine("First player wins!");
  114.                     Console.WriteLine("Score: {0}", totalScoreFirstPlayer);
  115.                     Console.WriteLine("Games won: {0}", gamesFirstPlayer);
  116.                 }
  117.                 else
  118.                 {
  119.                     Console.WriteLine("Second player wins!");
  120.                     Console.WriteLine("Score: {0}", totalScoreSecondPlayer);
  121.                     Console.WriteLine("Games won: {0}", gamesSecondPlayer);
  122.                 }
  123.             }
  124.         }
  125.     }
  126. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement