D10. Двухмерные символьные массивы

Напишите в комментариях к этой записи консольные приложения для решения этих задач, укажите также код задачи.
Внимание! При решении задач обязательно учтите Рекомендации по оформлению решений задач на двумерные массивы

Решены задачи нет. Не решены: пока все.

Задачи

В задачах этого раздела рассматриваются двумерные массивы, элементами которых являются отдельные символы. Исключение составляет последняя задача, в которой используется массив из трехсимвольных величин.

D10.1. Напечатать строку, образованную символами, расположенными в четырех углах массива (в любом порядке).
D10.2. Составить программу, которая печатает слово, образованное несколькими идущими подряд символами с заданными номерами, расположенными в некоторой строке массива.
D10.3. Дан двумерный массив размером 5 x 5 , заполненный буквами. Напечатать слово, образованное элементами массива, отмеченными звездочкой

при прочтении их:
а) слева направо в каждой строке, начиная с первой;
б) сверху вниз в каждом столбце, начиная с первого.
D10.4. Напечатать слова, образованные четными элементами каждой строки массива.
D10.5. Напечатать слова, образованные нечетными элементами каждого столбца массива.
D10.6. В каждой строке массива найти количество букв е, расположенных справа от буквы н (известно, что буква н в каждой строке единственная).
D10.7. В каждой строке массива найти количество букв с, расположенных слева от буквы ш (известно, что буква ш в каждой строке единственная).
D10.8. Выяснить, есть ли в массиве строки, в которых буква а расположена справа от буквы д (известно, что буква д в каждой строке единственная).
D10.9. Найти количество строк массива, в которых имеется ровно три буквы о.
D10.10. Вывести слова, образованные символами каждой из строк массива, в которой имеются ровно четыре буквы и.
D10.11. Определить максимальное количество пробелов в строках массива.
D10.12. Определить, сколько строк массива имеют максимальное число пробелов.
D10.13. Проверить, одинаковые ли строки массива с номерами n1 и n2?
D10.14. Найти:
а) номер первого по порядку столбца массива, содержащего наибольшее число пробелов;
б) номер последней по порядку строки массива, содержащей наибольшее количество букв ш и щ;
в) номер первой по порядку строки массива, содержащей наибольшее число цифр.
D10.15. Шахматную доску будем представлять в виде квадратного символьного массива размером 8 x 8. Заполнить массив таким образом, чтобы элементы массива, соответствующие черным полям, имели значение «х». Левое нижнее поле на шахматной доске всегда черное.
D10.16. Шахматную доску будем представлять в виде квадратного символьного массива размером 8 x 8. Даны натуральные числа v и g (1 <= v <= 8, 1 <= g <= 8), указывающие номера вертикали и горизонтали для поля, на котором стоит шахматная фигура. Необходимо поля, находящиеся под угрозой данной фигуры, положить равными символу «*», а остальные — символу «0». Рассмотреть случаи, когда заданная фигура:
а) ладья;
б) ферзь;
в) слон;
г) конь.
Элемент массива, соответствующий местоположению заданной фигуры, положить равным первому символу названия фигуры (соответственно л, ф, с, к).
D10.17.. Шахматную доску будем представлять в виде квадратного символьного массива размером 8 x 8.
Даны натуральные числа v1 и g1 , указывающие номера вертикали (при счете слева направо) и горизонтали (при счете снизу вверх) для поля, на котором стоит белая шахматная фигура,
и числа v2 и g2 — указывающие соответствующие координаты второй, черной, фигуры (1 <= v1 <= 8, 1 <= g1 <= 8, 1 <= v2 <= 8, 1 <= g2 <= 8 ).
Определить поля (отметить их символом «+»), на которые может пойти первая фигура, не попав под удар второй фигуры.
Рассмотреть следующие варианты сочетаний первой и второй фигур:
а) ладья и ладья;
б) ладья и ферзь;
в) ладья и конь;
г) ладья и слон;
д) ферзь и ферзь;
е) ферзь и ладья;
ж) ферзь и конь;
з) ферзь и слон;
и) конь и конь;
к) конь и ладья;
л) конь и ферзь;
м) конь и слон;
н) слон и слон;
о) слон и ферзь;
п) слон и конь;
р) слон и ладья;
с) король и слон;
т) король и ферзь;
у) король и конь;
ф) король и ладья.

D10.18. Над главной диагональю квадратного массива размером 18 x 18 записаны результаты игр той или иной команды во встречах с другими командами в виде: «3:1», «2:2», «0:1» и т. п. Для каждой команды определить:
а) количество выигрышей, количество ничьих и количество проигрышей;
б) общее число набранных ею очков;
в) общее число забитых и общее число пропущенных мячей.
Все задачи решить двумя способами:
1) с использованием дополнительного двумерного массива или трех одномерных массивов;
2) без использования дополнительного массива (дополнительных массивов).


NEW: Наш Чат, в котором вы можете обсудить любые вопросы, идеи, поделиться опытом или связаться с администраторами.


Помощь проекту:

Понравилась статья? Поделиться с друзьями:
5 1 голос
Рейтинг статьи
Подписаться
Уведомить о
3 комментариев
Новые
Старые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
using System;
namespace Less10_16a
{
    class Сhess2D
    {
        string[,] array; int line; int coloumn; int v; int g;
        public Сhess2D (string[,] array, int line, int coloumn, int v, int g)
        {
            this.array = array;
            this.line = line;
            this.coloumn = coloumn;
            this.v = v;
            this.g = g;
        }
        public void ChessBoard()
        {
            for (int i = 0; i < line; i++)
            {
                for (int j = 0; j < coloumn; j++)
                {
                    array[i, j] = "O";
                    if (j % 2 == 0 && i % 2 != 0)
                    { array[i, j] = "X"; }
                    if (j % 2 != 0 && i % 2 == 0)
                    { array[i, j] = "X"; }
                }
            }
            Console.WriteLine("----------------");
        }
        public void LadiaMove()
        {
            ChessBoard();
            for (int i = 0; i < line; i++)
            {
                for (int j = 0; j < coloumn; j++)
                {
                    if (i == v-1)
                        array[i, j] = "*";
                    if (j == g - 1)
                    {
                        array[i, j] = "*";
                        array[v - 1, g - 1] = "L";
                    }
                    Console.Write(array[i, j] + " ");
                }
                Console.WriteLine();
            }
        }
    }
    class Program
    {
        static void Main()
        {
            int line = 8;
            int coloumn = 8;
            Console.WriteLine("Объявите координату первой фигуры v: ");
            int v = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Объявите координату первой фигуры g: ");
            int g = Convert.ToInt32(Console.ReadLine());
            string[,] array = new string[line, coloumn];
            Сhess2D Ladia= new(array, line, coloumn, v, g);
            Ladia.LadiaMove();
        }
    }
}
Последний раз редактировалось 1 год назад Евгений ем
using System;
namespace Less10_15
{
    class Array2D
    {
        string[,] array; int line; int coloumn;
        public Array2D(string[,] array, int line, int coloumn)
        {
            this.array = array;
            this.line = line;
            this.coloumn = coloumn;
        }
        public void GetArray()
        {
            var num = 0;
            for (int i = 0; i < line; i++)
            {
                for (int j = 0; j < coloumn; j++)
                {
                    array[i, j] = "O";
                    if (j % 2 == 0 && i % 2 != 0)
                    { array[i, j] = "X"; }
                    if (j % 2 != 0 && i % 2 == 0)
                    { array[i, j] = "X"; }
                    Console.Write(array[i, j]+" ");
                    num++;
                }
                Console.WriteLine();
            }
        }
    }
    class Program
    {
        static void Main()
        {
            int line = 8;
            int coloumn = 8;
            string[,] array = new string[line, coloumn];
            Array2D X = new (array, line, coloumn);
            X.GetArray();
        }
    }
}
using System;
namespace Less10_1
{
    class Array2D
    {
        string[,] array; int line; int coloumn;
        public Array2D(string[,] array, int line, int coloumn)
        {
            this.array = array;
            this.line = line;
            this.coloumn = coloumn;
        }
        public void GetArray()
        {
            var num = 0;
            Console.WriteLine("Введите символы через пробел для массива: ");
            string? text = Console.ReadLine();
            string[] words = text.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
            for (int i = 0; i < line; i++)
            {
                for (int j = 0; j < coloumn; j++)
                {
                    array[i, j] = words[num];
                    Console.Write(array[i, j] + "\t");
                    num++;
                }
                Console.WriteLine("\n");
            }
            Console.WriteLine($"{array[0, 0]}{array[0, coloumn - 1]}{array[line - 1, 0]}{array[line - 1, coloumn - 1]}");
        }
    }
    class Program
    {
        static void Main()
        {
            int line = 3;
            int coloumn = 3;
            string[,] array = new string[line, coloumn];
            Array2D X = new (array, line, coloumn);
            X.GetArray();
        }
    }
}
3
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
()
x