Решаем задачу на C#

Все привет, сегодня увидел вопрос студента на форуме, о том как выполнить его задание. Суть задания состояла в том что бы все элементы с наибольшим значением в данной целочисленной квадратной матрице порядка 10 заменить нулями. Написать решения нужно было на C#, к моему удивлению решения не было в интрнете, но было на C++ и паскале. Кончено задание не сложное, однако ему просто никто не помог. Для таких отчаивавшихся студентов, я выкладываю код на C#.

 public static void Matrix()
        {
            int size = 10;
            int[,] matrix = new int[10, 10];

            int max = 5;
            Random r = new Random();

            for (int i = 0; i < size; i++)
                for (int j = 0; j < size; j++)
                {
                    matrix[i, j] = r.Next(0, 6); // заполнение матрицы числами от 0 до 5. рандомно

                    if (max < matrix[i, j])
                        max = matrix[i, j];
                }
            
            //Выводим всю матрицу
            for (int i = 0; i < size; i++)
            {
                Console.WriteLine("");
                for (int j = 0; j < size; j++)
                    Console.Write("  " + matrix[i, j]);
            }
            Console.WriteLine("");
            Console.WriteLine(new string('-', 32));

            //заменяем 0 максимальные
            for (int i = 0; i < size; i++)
                for (int j = 0; j < size; j++)
                    if (matrix[i, j] == max)
                        matrix[i, j] = 0;

            //выводим новую матрицу
            for (int i = 0; i < size; i++)
            {
                Console.WriteLine("");
                for (int j = 0; j < size; j++)
                    Console.Write("  " + matrix[i, j]);
            }
        }

Обновлено: 31.05.2018 — 09:12

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.