
Дана матрица. Найти минимальный элемент матрицы и заменить все значения столбца и строки единицы,
где находится этот элемент. Язык С#

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

Ответ:
using System;
using System.Collections;
namespace Application
{
class MainClass
{
public static void Main (string[] args)
{
int M = 4, N = 4;
int[,] A = new int[M, N];
Random gen = new Random ();
ArrayList listMinElements = new ArrayList ();
for (int i = 0; i < M; i++)
{
int min = int.MaxValue;
for (int j = 0; j < N; j++)
{
A [i, j] = gen.Next (1, 20);
Console.Write ("{0,4}", A [i, j]);
if (A [i, j] < min)
min = A [i, j];
}
listMinElements.Add (min);
Console.WriteLine ();
}
Console.WriteLine ();
for (int i = 0; i < listMinElements.Count; i++)
{
Console.WriteLine ("Min element in row {0} equal {1}", i, listMinElements [i]);
}
int minElement = int.MaxValue;
int maxElement = int.MinValue;
foreach (int item in A)
{
if (item > maxElement) {
maxElement = item;
}
if (item < minElement) {
minElement = item;
}
}
int sum = 0;
int k = M * N;
foreach (int item in A)
{
if (item != minElement && item != maxElement) {
sum += item;
} else {
--k;
}
}
double middle_value = (double)sum / k;
Console.WriteLine ("\nMiddle value: " + middle_value);
}
}
}



Для выполнения данной задачи вам потребуется пройтись по матрице, найти минимальный элемент и затем заменить все значения в соответствующей строке и столбце на единицы. Вот пример кода на C#:
csharpusing System;
class Program
{
static void Main()
{
// Исходная матрица (пример)
int[,] matrix = {
{5, 8, 3},
{2, 1, 6},
{4, 0, 7}
};
// Найти минимальный элемент
int minElement = matrix[0, 0];
int minRow = 0;
int minCol = 0;
for (int i = 0; i < matrix.GetLength(0); i++)
{
for (int j = 0; j < matrix.GetLength(1); j++)
{
if (matrix[i, j] < minElement)
{
minElement = matrix[i, j];
minRow = i;
minCol = j;
}
}
}
// Заменить значения в строке и столбце на единицы
for (int i = 0; i < matrix.GetLength(0); i++)
{
for (int j = 0; j < matrix.GetLength(1); j++)
{
if (i == minRow || j == minCol)
{
matrix[i, j] = 1;
}
}
}
// Вывести результат
Console.WriteLine("Минимальный элемент: " + minElement);
Console.WriteLine("Матрица после замены:");
for (int i = 0; i < matrix.GetLength(0); i++)
{
for (int j = 0; j < matrix.GetLength(1); j++)
{
Console.Write(matrix[i, j] + " ");
}
Console.WriteLine();
}
}
}
Этот код найдет минимальный элемент в матрице и заменит все значения в его строке и столбце на единицы, а затем выведет результат на консоль.


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







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili