Advertisement
Guest User

Untitled

a guest
May 8th, 2015
468
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.17 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace CollectCoins_5
  8. {
  9.     class CollectCoins_5
  10.     {
  11.         static char[][] gameMatrix;
  12.         static int x = 0;
  13.         static int y = 0;
  14.         static int coins = 0;
  15.         static int walls = 0;
  16.         static int correctX;
  17.         static int correctY;
  18.        
  19.        
  20.         static void MakeMove(char[]moves)
  21.         {
  22.             for (int i = 0; i < moves.Length; i++)
  23.             {
  24.                 if (moves[i] == 'V')
  25.                 {
  26.                     y++;
  27.                     CheckForCoins();
  28.                 }
  29.                 else if (moves[i] == '^')
  30.                 {
  31.                     y--;
  32.                     CheckForCoins();
  33.                 }
  34.                 else if (moves[i] == '>')
  35.                 {
  36.                     x++;
  37.                     CheckForCoins();
  38.                 }
  39.                 else if (moves[i] == '<')
  40.                 {
  41.                     x--;
  42.                     CheckForCoins();
  43.                 }
  44.             }
  45.         }
  46.         static void CheckForCoins()
  47.         {
  48.             char currentPosition;
  49.             try
  50.             {
  51.                 currentPosition = gameMatrix[y][x];
  52.                 if (currentPosition == '$')
  53.                 {
  54.                     coins++;
  55.                 }
  56.                 correctX = x;
  57.                 correctY = y;
  58.             }
  59.             catch (IndexOutOfRangeException exc)
  60.             {
  61.                 walls++;
  62.                 x = correctX;
  63.                 y = correctY;
  64.             }                      
  65.         }
  66.         static void Main(string[] args)
  67.         {
  68.             gameMatrix = new char[4][];
  69.  
  70.             for (int a = 0; a < gameMatrix.Length; a++)
  71.             {
  72.                 char[] input = Console.ReadLine().ToCharArray();
  73.                 gameMatrix[a] = input;
  74.             }
  75.             char[] moves = Console.ReadLine().ToCharArray();
  76.             MakeMove(moves);
  77.  
  78.             Console.WriteLine("Coins collected {0}",coins);
  79.             Console.WriteLine("Walls hit {0}", walls);
  80.         }
  81.     }
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement