IsTrapezoidal

Проверяет, является ли прямоугольная (не квадратная) матрица размером m на n верхней или нижней трапециевидной.

bool matrix::IsTrapezoidal(
  bool       is_upper      // верхняя или нижняя трапециевидная матрица
   );

Параметры

is_upper

[out]  Значение определяет, распознана ли верхняя или нижняя трапециевидная матрица.

Возвращаемое значение

Возвращает True, если квадратная является трапециевидной.

Примечание

Нулевая матрица размера m на n является трапециевидной.

Если m < n, необходимо проверить, что нижняя треугольная часть (под главной диагональю) содержит только нули. Например, нулевая матрица размера 6 на 7 является верхней трапециевидной.

Если m > n, необходимо проверить, что верхняя треугольная часть (над главной диагональю) содержит только нули. Например, нулевая матрица размера 7 на 6 является нижней трапецеидальной.

Трапециевидные матрицы

  верхняя трапециевидная     нижняя трапециевидная
 
   v  v  v  v  v  v  v              v  0  0  0  0  0
   0  v  v  v  v  v  v              v  v  0  0  0  0
   0  0  v  v  v  v  v              v  v  v  0  0  0
   0  0  0  v  v  v  v              v  v  v  v  0  0
   0  0  0  0  v  v  v              v  v  v  v  v  0
   0  0  0  0  0  v  v              v  v  v  v  v  v
                                    v  v  v  v  v  v