VitalyD

Untitled

May 10th, 2018
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.33 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 basics
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             int n = Int32.Parse(Console.ReadLine());
  14.             int[,] matrix = new int[n, n];
  15.             int col, row;
  16.             DrawMass(n, matrix);
  17.             int player = 1;
  18.             bool endGame = false;
  19.  
  20.             while (endGame == false)
  21.             {
  22.                 Console.WriteLine("Введи строку");
  23.                 row = Convert.ToInt32(Console.ReadLine());
  24.                 Console.WriteLine("Введи столбец");
  25.                 col = Convert.ToInt32(Console.ReadLine());
  26.  
  27.                 if (row < n &&  col < n)
  28.                 {
  29.                     matrix[row, col] = player;
  30.                 }
  31.                 else
  32.                 {
  33.                     Console.WriteLine("Извините, введённые индексы не входят в диапазон матрицы");
  34.                     continue;
  35.                 }
  36.  
  37.                 Console.Clear();
  38.                 DrawMass(n, matrix);
  39.                
  40.                 endGame = ChekRow(n, matrix, player, endGame) || ChekCol(n, matrix, player, endGame) || ChekDiag(n, matrix, player, endGame);
  41.                 player = ChangePlayer(player);
  42.             }
  43.             Console.WriteLine("Игра окончена");
  44.             Console.ReadKey();
  45.         }
  46.  
  47.  
  48.         static bool ChekRow (int n, int[,] matrix, int player, bool endGame)
  49.         {
  50.             int cheking = 0;
  51.             for (var i = 0; i < n; ++i)
  52.             {
  53.                 for (var j = 0; j < n; ++j)
  54.                 {
  55.                     if (matrix[i, j] == player) cheking++;
  56.                 }
  57.                 if (cheking == n) return endGame = true;
  58.             }
  59.             return endGame;
  60.         }
  61.  
  62.         static bool ChekCol(int n, int[,] matrix, int player, bool endGame)
  63.        {
  64.             int cheking = 0;
  65.             for (var j = 0; j < n; ++j)
  66.             {
  67.                 for (var i = 0; i < n; ++i)
  68.                 {
  69.                     if (matrix[i, j] == player) cheking++;
  70.                 }
  71.                 if (cheking == n) return endGame = true;
  72.             }
  73.             return endGame;
  74.         }
  75.  
  76.         static bool ChekDiag(int n, int[,] matrix, int player, bool endGame)
  77.         {
  78.             int cheking = 0;
  79.             for (var i = 0; i < n; i++)
  80.             {
  81.                 if (matrix[i, i] == player) cheking++;
  82.                 if (cheking == n) return endGame = true;
  83.             }
  84.  
  85.             for (var i = 0; i < n - 1 - i; ++i)
  86.             {
  87.                 if (matrix[i, i] == player) cheking++;
  88.                 if (cheking == n) return endGame = true;
  89.             }
  90.             return endGame;
  91.         }
  92.  
  93.         static int ChangePlayer (int player)
  94.         {
  95.             if (player == 1) return player = -1; else return player = 1;
  96.         }
  97.  
  98.  
  99.         static void DrawMass(int n, int[,] matrix)
  100.         {
  101.             for (var i = 0; i < n; i++)
  102.             {
  103.                 for (var j = 0; j < n; j++)
  104.                 {
  105.                     Console.Write("{0}\t", matrix[i, j]);
  106.                 }
  107.                 Console.WriteLine();
  108.             }
  109.         }
  110.     }
  111. }
Advertisement
Add Comment
Please, Sign In to add comment