Вопрос задан 17.07.2023 в 06:11. Предмет Информатика. Спрашивает Чабан Дмитрий.

C# 100 баллов Задан двухмерный массив чисел. Значение элементов матрицы формируются случайным

образом. Найти сумму минимальных и максимальных элементов главной и побочной диагонали. Вывести результат.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Журавский Даниил.

using System;

namespace ConsoleApp4

{

   class Program

   {

       static void Main(string[] args)

       {

           Console.Write("Введите размер матрицы n=");

           int n = int.Parse(Console.ReadLine());

           int max, min, s;

           int[,] a = new int[n, n];

           Console.WriteLine("Матрица размера " + n.ToString() + "x" + n.ToString() + ", заполненная случайными числами:");

           Random r = new Random();

           for (int i = 0; i < n; i++)

           {

               for (int j = 0; j < n; j++)

               {

                   a[i, j] = r.Next(0, 100);

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

               }

               Console.WriteLine();

           }

           max = a[1, 1];

           min = max;

           for (int i = 0; i < n; i++)

           {

               if (a[i, i] > max)

                   max = a[i, i];

               if (a[i, i] < min)

                   min = a[i, i];

           }

           s = min + max;

           Console.WriteLine("Сумма максимального и минимального элемента на главной дигонали: " + s.ToString());

           max = a[1, 1];

           min = max;

           for (int i = 0, j = n - 1; i < n; i++, j--)

           {

               if (a[i, j] > max)

                   max = a[i, j];

               if (a[i, j] < min)

                   min = a[i, j];

           }

           s = s + min + max;

           Console.WriteLine("Сумма максимального и минимального элемента побочной дигонали: " + (min + max).ToString());

           Console.WriteLine("общая сумма(результат): " + s.ToString());

           Console.ReadKey();

       }

   }

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения данной задачи в C# вы можете использовать следующий код. В этом примере я предполагаю, что двухмерный массив имеет размерность NxN (квадратная матрица). Матрица будет заполнена случайными числами в диапазоне от 1 до 100.

csharp
using System; class Program { static void Main() { const int N = 5; // Задайте размерность матрицы (количество строк и столбцов) int[,] matrix = new int[N, N]; Random random = new Random(); // Заполнение матрицы случайными числами for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { matrix[i, j] = random.Next(1, 101); } } // Вывод исходной матрицы Console.WriteLine("Исходная матрица:"); PrintMatrix(matrix); // Нахождение минимальных и максимальных элементов диагоналей int mainDiagonalMin = int.MaxValue; int mainDiagonalMax = int.MinValue; int secondaryDiagonalMin = int.MaxValue; int secondaryDiagonalMax = int.MinValue; for (int i = 0; i < N; i++) { if (matrix[i, i] < mainDiagonalMin) mainDiagonalMin = matrix[i, i]; if (matrix[i, i] > mainDiagonalMax) mainDiagonalMax = matrix[i, i]; if (matrix[i, N - 1 - i] < secondaryDiagonalMin) secondaryDiagonalMin = matrix[i, N - 1 - i]; if (matrix[i, N - 1 - i] > secondaryDiagonalMax) secondaryDiagonalMax = matrix[i, N - 1 - i]; } // Нахождение суммы минимальных и максимальных элементов диагоналей int mainDiagonalSum = mainDiagonalMin + mainDiagonalMax; int secondaryDiagonalSum = secondaryDiagonalMin + secondaryDiagonalMax; // Вывод результатов Console.WriteLine($"Сумма минимального и максимального элементов главной диагонали: {mainDiagonalSum}"); Console.WriteLine($"Сумма минимального и максимального элементов побочной диагонали: {secondaryDiagonalSum}"); } // Вспомогательный метод для вывода матрицы static void PrintMatrix(int[,] matrix) { int rows = matrix.GetLength(0); int cols = matrix.GetLength(1); for (int i = 0; i < rows; i++) { for (int j = 0; j < cols; j++) { Console.Write($"{matrix[i, j],4} "); } Console.WriteLine(); } } }

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

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос