Движение каретки по заданному массиву в консоли - C#

Узнай цену своей работы

Формулировка задачи:

Уважаемые программисты, подскажите пожалуйста... Есть одномерный массив на 9 элементов. Цель: В консоли 1) Передвижение каретки стрелочками по элементами массива не выходя за рамки. |{0}|{1}|{2}| |{0}|{1}|{2}| |{0}|{1}|{2}| 2) по нажатию конкретно на клавишу пробел, менять значение элемента на 'Х' или на '0'. Заранее благодарен.

Решение задачи: «Движение каретки по заданному массиву в консоли»

textual
Листинг программы
  1.             string[] s = { " | | ", "-+-+-", " | | ", "-+-+-", " | | " };
  2.  
  3.             for (int i = 0; i < 5; i++) Console.WriteLine(s[i]);
  4.             int[][] a = { new int[] { 0, 0, 0 }, new int[] { 0, 0, 0 }, new int[]{ 0, 0, 0 } };
  5.             int x = 0, y = 0;
  6.             ConsoleKey ck;
  7.             do
  8.             {
  9.                 Console.CursorLeft = x;
  10.                 Console.CursorTop = y;
  11.                 ck = Console.ReadKey(true).Key;
  12.                 if (ck == ConsoleKey.RightArrow && x < 4) x+=2;
  13.                 if (ck == ConsoleKey.LeftArrow && x > 0) x-=2;
  14.                 if (ck == ConsoleKey.DownArrow && y < 4) y+=2;
  15.                 if (ck == ConsoleKey.UpArrow && y > 0) y-=2;
  16.                 if (ck == ConsoleKey.Spacebar)
  17.                 if (a[y / 2][x / 2] == 0)
  18.                 {
  19.                     a[y / 2][x / 2] = 1;
  20.                     Console.Write("X");
  21.                 }
  22.                 else
  23.                 {
  24.                     a[y / 2][x / 2] = 3 - a[y / 2][x / 2];
  25.                     Console.Write(a[y / 2][x / 2] == 1 ? "X" : "0");
  26.                 }
  27.  
  28.             } while (ck != ConsoleKey.Escape);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.933 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы