using System;

namespace _09._02._2025
{
    internal class Program
    {
        static void Main(string[] args)
        {
            /* Найти наибольший элемент матрицы A(10,10)
             * и записать ноль в те ячейки, где он находятся.
             * Вывести наибольший элемент, исходную и полученную матрицу. 
             * Массив под измененную версию не нужен */

            int[,] numbers = new int[10, 10];

            Random random = new Random();

            int maxRandom = 10;

            for (int i = 0; i < numbers.GetLength(0); i++)
            {
                for (int j = 0; j < numbers.GetLength(1); j++)
                {
                    Console.Write(numbers[i, j] = random.Next(maxRandom));
                   
                    Console.Write(" ");
                }

                Console.WriteLine(" ");
            }

            int maxNumber = int.MinValue;

            foreach (int number in numbers)
            {
                if (number >= maxNumber)
                {
                    maxNumber = number;
                }
            }

            Console.WriteLine($"\nМаксимальное значение матрицы: {maxNumber}\n");

            int numberToChange = 0;

            for (int i = 0; i < numbers.GetLength(0); i++)
            {
                for (int j = 0; j < numbers.GetLength(1); j++)
                {
                    if (numbers[i,j] == maxNumber)
                    {
                        numbers[i, j] = numberToChange;
                    }
                }
            }

            for (int i = 0; i < numbers.GetLength(0); i++)
            {
                for (int j = 0; j < numbers.GetLength(1); j++)
                {
                    Console.Write(numbers[i, j]);

                    Console.Write(" ");
                }

                Console.WriteLine(" ");
            }
        }
    }
}