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

UptoLike

91
for (y = 0; y < n; y++)
Console.Write("{0}\t", a[x, y]);
Console.WriteLine();
}
// вычисление определителя как подсчет произведения
// элементов главной диагонали с учетом знака
float opr = z;
for(x = 0; x < n; x++)
opr = opr * a[x, x];
Console.WriteLine("Определитель = {0}",opr);
}
}
}
Задача 7. Распечатать все седловые точки прямоугольной матрицы.
Седловая точка - это пара индексов (номер строки, номера столбца), на
пересечении которых находится элемент, максимальный в строке и
одновременно минимальный в столбце, или наоборот минимальный в
строке и одновременно максимальный в столбце.
Для решения этой задачи в каждой строке матрицы находим
максимальный и минимальный элементы. Затем все максимумы и минимумы
строки проверяем на выполнение условия для седловых точек по столбцу.
Если оно выполняется, то печатаем соответствующие пары индексов.
Блок-схема решения задачи представлена на Рис.6.11 и 6.12.
Код программы для задачи 7.
using System;
namespace Examples
{
class Program1
{
static void Main(string[] args)
{
int m, n;
Console.Write("Введите количество строк матрицы m:");
int.TryParse(Console.ReadLine(), out m);
Console.Write("Введите количество столбцов матрицы n:");
int.TryParse(Console.ReadLine(), out n);
if (m <= 0 || n <= 0)
{
Console.WriteLine("Введите положительный размер");
return;
}
int[,] a = new int[m, n];
if (a == null)
{
Console.WriteLine("Запрошено большое количество памяти.
Попробуйте ввести меньший размер.");
return;
                     for (y = 0; y < n; y++)
                          Console.Write("{0}\t", a[x, y]);
                      Console.WriteLine();
                 }
                 // вычисление определителя как подсчет произведения
                 // элементов главной диагонали с учетом знака
                 float opr = z;
                 for(x = 0; x < n; x++)
                             opr = opr * a[x, x];
                 Console.WriteLine("Определитель = {0}",opr);
             }
         }
     }

    Задача 7. Распечатать все седловые точки прямоугольной матрицы.
    Седловая точка - это пара индексов (номер строки, номера столбца), на
пересечении которых находится элемент, максимальный в строке и
одновременно минимальный в столбце, или наоборот – минимальный в
строке и одновременно максимальный в столбце.
    Для решения этой задачи в каждой строке матрицы находим
максимальный и минимальный элементы. Затем все максимумы и минимумы
строки проверяем на выполнение условия для седловых точек по столбцу.
Если оно выполняется, то печатаем соответствующие пары индексов.
    Блок-схема решения задачи представлена на Рис.6.11 и 6.12.

    Код программы для задачи 7.
     using System;

     namespace Examples
     {
         class Program1
         {
             static void Main(string[] args)
             {
                 int m, n;
                 Console.Write("Введите количество строк матрицы m:");
                 int.TryParse(Console.ReadLine(), out m);
                 Console.Write("Введите количество столбцов матрицы n:");
                 int.TryParse(Console.ReadLine(), out n);
                 if (m <= 0 || n <= 0)
                 {
                     Console.WriteLine("Введите положительный размер");
                     return;
                 }
                 int[,] a = new int[m, n];
                 if (a == null)
                 {
                     Console.WriteLine("Запрошено большое количество памяти.
                                         Попробуйте ввести меньший размер.");
                     return;
                                        91