
Дана прямоугольная матрица А(8;6). Вывести в текстовое окно все элементы которые обладают следующим
свойством. Элемент является максимальным в строке, где он находится, и одновременно минимальным в столбце, в котором он размещен, либо наоборот - минимальным в своей строке и максимальным в своем столбце. Если таких элементов нет, то выдать об этом сообщение. Код на С# нужен. Двумерные массивы. если шарите в window.form (Графический интерфейс должен иметь один элемент button и два текстовых окна.) // главное код!! Хелп((

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

private void button1_Click(object sender, EventArgs e)
{
int[,] A = new int[,]
{
{ 1, 2, 3, 4, 5, 6 },
{ 7, 8, 9, 10, 11, 12 },
{ 13, 14, 15, 16, 17, 18 },
{ 19, 20, 21, 22, 23, 24 },
{ 25, 26, 27, 28, 29, 30 },
{ 31, 32, 33, 34, 35, 36 },
{ 37, 38, 39, 40, 41, 42 },
{ 43, 44, 45, 46, 47, 48 }
};
string result = "";
bool isFound = false;
for (int i = 0; i < A.GetLength(0); i++)
{
for (int j = 0; j < A.GetLength(1); j++)
{
int cur = A[i, j];
bool isMaxInRow = true;
bool isMinInColumn = true;
for (int k = 0; k < A.GetLength(1); k++)
{
if (A[i, k] > cur)
{
isMaxInRow = false;
break;
}
}
for (int k = 0; k < A.GetLength(0); k++)
{
if (A[k, j] < cur)
{
isMinInColumn = false;
break;
}
}
if ((isMaxInRow && isMinInColumn) || (!isMaxInRow && !isMinInColumn))
{
result += cur + " ";
isFound = true;
}
}
}
if (isFound)
{
textBox1.Text = "Результат:\r\n" + result;
}
else
{
textBox1.Text = "Таких элементов нет.";
}
}
Здесь создается двумерный массив A размером 8x6 и заполняется некоторыми значениями. Затем происходит перебор всех элементов матрицы, и для каждого элемента проверяется, является ли он максимальным в своей строке и минимальным в своем столбце (или наоборот). Если это условие выполняется, то элемент добавляется в строку result, которая в конце выводится в текстовое окно textBox1. Если таких элементов нет, то в текстовое окно выводится соответствующее сообщение.



Для выполнения этой задачи вам потребуется создать Windows Forms приложение на C#. В нем будет одна кнопка и два текстовых окна, как вы указали. Вот пример кода для такого приложения:
csharpusing System;
using System.Windows.Forms;
namespace MaxMinMatrixElements
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
}
private void buttonFindElements_Click(object sender, EventArgs e)
{
// Получаем текст из текстового окна и разбиваем его на строки
string[] lines = textBoxMatrix.Text.Split('\n');
// Инициализируем двумерный массив
int[,] matrix = new int[lines.Length, lines[0].Split().Length];
// Заполняем массив значениями из текстового окна
for (int i = 0; i < lines.Length; i++)
{
string[] values = lines[i].Split();
for (int j = 0; j < values.Length; j++)
{
matrix[i, j] = int.Parse(values[j]);
}
}
// Поиск максимальных элементов в строках и минимальных элементов в столбцах
bool found = false;
string result = "";
for (int i = 0; i < matrix.GetLength(0); i++)
{
for (int j = 0; j < matrix.GetLength(1); j++)
{
int currentElement = matrix[i, j];
bool isMaxInRow = true;
bool isMinInColumn = true;
for (int k = 0; k < matrix.GetLength(1); k++)
{
if (k != j && currentElement < matrix[i, k])
{
isMaxInRow = false;
break;
}
}
for (int k = 0; k < matrix.GetLength(0); k++)
{
if (k != i && currentElement > matrix[k, j])
{
isMinInColumn = false;
break;
}
}
if (isMaxInRow || isMinInColumn)
{
found = true;
result += $"Элемент в строке {i + 1}, столбце {j + 1}: {currentElement}\n";
}
}
}
// Отображаем результат
if (found)
{
textBoxResult.Text = result;
}
else
{
textBoxResult.Text = "Таких элементов нет.";
}
}
}
}
Этот код создает Windows Forms приложение с двумя текстовыми окнами (textBoxMatrix и textBoxResult) и одной кнопкой (buttonFindElements). При нажатии на кнопку, код разбирает матрицу из текстового окна, а затем находит элементы, соответствующие заданному условию, и выводит их во втором текстовом окне (textBoxResult).
Не забудьте создать соответствующий интерфейс в дизайнере формы и привязать обработчик события для кнопки (buttonFindElements) к методу buttonFindElements_Click
.


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








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