IsTrapezoidal

長方形(正方行列ではない)m×n行列が上台形行列または下台形行列かどうかを確認します。

bool matrix::IsTrapezoidal(
  bool      is_upper      // 上台形行列または下台形行列
  );

パラメータ

is_upper

[out]  値によって、上台形行列か下台形行列かが判別されます。

戻り値

行列が台形行列であればtrue

注意事項

サイズm×nの零行列は台形行列です。

m<nの場合、主対角線より下の下三角部分がすべて0かどうかを確認します。サイズ6x7の零行列は上台形行列です。

m>nの場合、主対角線より上の下三角部分がすべて0かどうかを確認します。サイズ7x6の零行列は下台形行列です。

台形行列

  上台形行列              下台形行列
 
  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