Определить является ли матрица верхнетреугольной или нет - C#
Формулировка задачи:
Здравствуйте, мне нужно определить является ли матрица верхнетреугольной или нижнетреугольной, нашел для этого метод в интернете но он мне выдает только "не является верхне- или нижнетреугольной", хотя когда проверял специально вводил нужную матрицу.
Листинг программы
- public string Vid()
- {
- string S;
- bool v = true; bool h = true;
- for (int i = 0; i < n - 1; i++)
- {
- for (int j = 0; j < i; j++)
- {
- if (a[i, j] != 0)
- {
- v = false;
- }
- if (a[j, i] != 0)
- {
- h = false;
- }
- }
- }
- if (v==true)
- return S="верхнетреугольная";
- if (h==true)
- return S="нижннетреугольная";
- return S="не является верхне- или нижнетреугольной";
- }
Если надо могу скинуть код всей программы
Решение задачи: «Определить является ли матрица верхнетреугольной или нет»
textual
Листинг программы
- using System;
- class Program
- {
- private static string MatrixKind(int[,] matrix)
- {
- bool upper = true;
- bool lower = true;
- for (int i = 0; i < matrix.GetLength(0); ++i)
- {
- for (int j = 0; j < matrix.GetLength(1); ++j)
- {
- upper = upper && (i <= j || matrix[i, j] == 0);
- lower = lower && (i >= j || matrix[i, j] == 0);
- if (!upper && !lower) return "ни верхняя, ни нижняя";
- }
- }
- return upper ? "верхняя" : "нижняя";
- }
- public static void Main()
- {
- int[,] a = {
- { 1, 2, 3 },
- { 4, 5, 6 },
- { 7, 8, 9 }
- };
- Console.WriteLine(MatrixKind(a));
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д