Практикум по курсу "Алгоритмизация и программирование". Часть 1. Андрианова А.А - 94 стр.

UptoLike

for (int x = 0; x < m; x++)
{
// поиск максимального и минимального элемента
// в x-ой строке
int max = a[x, 0], min = a[x, 0];
int ymax = 0, ymin = 0;
for (int y = 1; y < n; y++)
if (a[x, y] > max)
{
max = a[x, y]; ymax = y;
}
else
if (a[x, y] < min)
{
min = a[x, y]; ymin = y;
}
// если максимальных элементов несколько,
// проверяем их все на выполнение условия
// для седловой точки в столбце
for (int y = ymax; y < n; y++)
if (a[x, y] == max)
{
int f = 1;
for (int k = 0; k < m; k++)
if (max > a[k, y])
f = 0;
if (f == 1)
Console.Write("({0}, {1})\t", x + 1, y + 1);
}
// если минимальных элементов несколько,
// проверяем их все на выполнение условия
// для седловой точки в столбце
for (int y = ymin; y < n; y++)
if (a[x, y] == min)
{
int f = 1;
for (int k = 0; k < m; k++)
if (min < a[k, y])
f = 0;
if (f == 1)
Console.Write("({0}, {1})\t", x + 1, y + 1);
}
}
}
}
}
            for (int x = 0; x < m; x++)
            {
                // поиск максимального и минимального элемента
                // в x-ой строке
                int max = a[x, 0], min = a[x, 0];
                int ymax = 0, ymin = 0;
                for (int y = 1; y < n; y++)
                    if (a[x, y] > max)
                    {
                        max = a[x, y]; ymax = y;
                    }
                    else
                        if (a[x, y] < min)
                        {
                            min = a[x, y]; ymin = y;
                        }
                // если максимальных элементов несколько,
                // проверяем их все на выполнение условия
                // для седловой точки в столбце
                for (int y = ymax; y < n; y++)
                    if (a[x, y] == max)
                    {
                        int f = 1;
                        for (int k = 0; k < m; k++)
                            if (max > a[k, y])
                                f = 0;
                        if (f == 1)
                            Console.Write("({0}, {1})\t", x + 1, y + 1);
                    }
                // если минимальных элементов несколько,
                // проверяем их все на выполнение условия
                // для седловой точки в столбце
                for (int y = ymin; y < n; y++)
                    if (a[x, y] == min)
                    {
                        int f = 1;
                        for (int k = 0; k < m; k++)
                            if (min < a[k, y])
                                f = 0;
                        if (f == 1)
                            Console.Write("({0}, {1})\t", x + 1, y + 1);
                    }
            }
        }
    }
}