Você está aqui: C# ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Como testar se uma matriz é uma Matriz Triangular Superior em C# - Exercícios Resolvidos de C#Quantidade de visualizações: 755 vezes |
Pergunta/Tarefa: Uma Matriz Triangular Superior é a matriz na qual todos os termos que estão abaixo da diagonal principal são iguais a zero e os termos que estão acima da diagonal principal são números reais. Veja um exemplo de Matriz Triangular Superior na imagem abaixo: ![]() Escreva um programa C# que pede para o usuário informar o número de linhas e colunas de uma matriz quadrada. Em seguida solicite os valores para cada um dos elementos da matriz. Para finalizar informe ao usuário se a matriz informada é uma matriz triangular superior. Sua saída deverá ser parecida com: Número de linhas e colunas da matriz: 3 Valor para a linha 0 e coluna 0: 8 Valor para a linha 0 e coluna 1: 2 Valor para a linha 0 e coluna 2: 3 Valor para a linha 1 e coluna 0: 0 Valor para a linha 1 e coluna 1: 3 Valor para a linha 1 e coluna 2: 9 Valor para a linha 2 e coluna 0: 0 Valor para a linha 2 e coluna 1: 0 Valor para a linha 2 e coluna 2: 2 Valores na matriz 8 2 3 0 3 9 0 0 2 A matriz é uma matriz triangular superior Veja a resolução comentada deste exercício usando C#: ---------------------------------------------------------------------- Precisa de ajuda? Chama no WhatsApp +55 (62) 98553-6711 (Osmar) Este código foi útil? Paga um cafezinho pra mim :-( PIX: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- using System; namespace Estudos { class Principal { // função principal do programa C# static void Main(string[] args) { // vamos pedir a ordem da matriz Console.Write("Número de linhas e colunas da matriz: "); int ordem = Int32.Parse(Console.ReadLine()); // agora vamos construir a matriz int[,] matriz = new int[ordem, ordem]; // vamos pedir para o usuário informar os valores // dos elementos da matriz, uma linha de cada vez Console.WriteLine(); for (int i = 0; i < matriz.GetLength(0); i++) { for (int j = 0; j < matriz.GetLength(1); j++) { Console.Write("Linha " + (i + 1) + " e coluna " + (j + 1) + ": "); // lê o número e guarda na linha e coluna especificadas matriz[i, j] = int.Parse(Console.ReadLine()); } } // vamos mostrar a matriz da forma que ela foi informada Console.WriteLine("\nValores na matriz\n"); for (int i = 0; i < matriz.GetLength(0); i++) { for (int j = 0; j < matriz.GetLength(1); j++) { Console.Write(matriz[i, j].ToString().PadLeft(5) + " "); } // passa para a próxima linha Console.WriteLine(); } // agora vamos testar se a matriz é uma matriz triangular // superior bool triangular_superior = true; for (int i = 0; i < matriz.GetLength(0); i++) { for (int j = 0; j < matriz.GetLength(1); j++) { // a condição para que a matriz seja triangular superior é // que os elementos abaixo da diagonal principal sejam // iguais a zero if ((j < i) && (matriz[i, j] != 0)) { triangular_superior = false; } } } if (triangular_superior) { Console.WriteLine("\nA matriz é uma matriz triangular superior"); } else { Console.WriteLine("\nA matriz não é uma matriz triangular superior"); } Console.WriteLine("\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Listamos abaixo algumas propriedades específicas da matriz triangular. 1) o determinante de uma matriz triangular é igual ao produto dos termos da diagonal principal. 2) o produto entre duas matrizes triangulares é uma matriz triangular. 3) se um dos termos da diagonal principal da matriz triangular for igual a zero, então o seu determinante será igual a zero e, consequentemente, ela não será inversível. 4) a matriz inversa de uma matriz triangular é também uma matriz triangular. 5) a soma de duas matrizes triangulares superiores é uma matriz triangular superior; de forma análoga, a soma de duas matrizes triangulares inferiores é uma matriz triangular inferior. |
![]() |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |