Задана матрица С(5,5). Если минимальный элемент стоит в первой строке, то все элементы,...

0 голосов
107 просмотров

Задана матрица С(5,5). Если минимальный элемент стоит в первой строке, то все элементы, стоящие в строке за ним, заменить нулями.написать код на c#, с выводами массива до и после


Информатика (14 баллов) | 107 просмотров
Дан 1 ответ
0 голосов

static void Main(string[] args)

       { //задаем массив, и переменные для хранения  минимального элемента, его строки и столбца

           int[,] array = {

                     {1,10,11,12,13},

                     {2,12,11,12,13},

                     {3,30,11,12,13},

                     {4,40,11,12,13}

               };

           int minElement = array[0, 0];

           int numStr = 0;

           int numStolb = 0;

          // вывод массива ДО

           for (int i = 0; i < array.GetLength(0); i++)

           {

               for (int j = 0; j < array.GetLength(1); j++)

               {

                   Console.Write(" " + array[i, j]);

               }

               Console.WriteLine();

           }

           Console.WriteLine();

           

           //ищем минимальный элемент

           for (int i = 0; i < array.GetLength(0); i++)

           {

               for (int j = 0; j < array.GetLength(1); j++)

               {

                   if (minElement > array[i, j])

                   {

                       minElement = array[i, j];

                       //запоминаем строку и столбец минимального элемента

                       numStr = i;

                       numStolb = j;

                   }

               }

           }

           //выводим в консоль минимальный элемент

           Console.WriteLine("Min Element in array: " + minElement);

           Console.WriteLine();

           

           //если строка минимального элемента равна 0(т.е. первая)

           //заменяем элементы после минимального на 0 и выводим массив ПОСЛЕ

           if (numStr == 0)

           {

               for (int k = numStolb + 1; k < 5; k++)

               {

                   //замена элементов строки на 0

                   array[0, k] = 0;

               }

               //вывод массива

               for (int i = 0; i < array.GetLength(0); i++)

               {

                   for (int j = 0; j < array.GetLength(1); j++)

                   {

                       Console.Write(" " + array[i, j]);

                   }

                   Console.WriteLine();

               }

           }

           

           

           Console.ReadLine();

       }


image
Скачать вложение Текст (TXT)
(1.3k баллов)
0

массив должен случайно заполняться

0

тогда дописывайте объявление массива так: int[,] array = new int[5, 5];

0

// вывод массива ДО            for (int i = 0; i < array.GetLength(0); i++)            {                for (int j = 0; j < array.GetLength(1); j++)                {                    Console.Write(" " + array[i, j]);                }                Console.WriteLine();            }            Console.WriteLine();Подробнее - на Znanija.com - https://znanija.com/task/32058186#readmore

0

и вывод массива до нужно дополнить 2 строками // вывод массива ДОRandom random = new Random();//объявление            for (int i = 0; i < array.GetLength(0); i++)            {                for (int j = 0; j < array.GetLength(1); j++)                { array[i, j] = random.Next(1000);//заполнение сл. числами                    Console.Write(" " + array[i, j]);                }                Console.WriteLine();            }            Console.WriteLine();Остальное остается так же