Ir ao conteúdo
  • Cadastre-se

Matriz diagonal dominante


Posts recomendados

oi gente sou novo nesse negócio de algoritmos e comecei a facul e to estudando isso... então tenho uma lista de exercícios pra fazer e tenho prova quarta feira, já consegui fazer vários exercícios mas cheguei nesse e não sei nem como começar... 

 

Fazer um algoritmo que leia números inteiros armazenando-os em uma matriz de 6
linhas por 6 colunas e identifique se é uma matriz diagonal dominante ou não. Uma matriz é
diagonal dominante quando, para todas as linhas (i) desta, o valor na diagonal principal em
módulo é maior que a soma dos módulos dos demais valores desta linha. (∀i)∣aii∣> Σ  |aii|
                                                                                                                                    i≠ j
 
 
se alguém puder me dar uma ajudinha ae eu agradeço, 
valeu ^^
Link para o comentário
Compartilhar em outros sites

Diagonal dominante é quando o elemento da diagonal é maior que os demais na mesma linha da matriz. Os elementos da diagonal sempre vão seguir o padrão vetor[x][x] numa matriz. Por exemplo:

 

{ 5, 1, 2,  2, 6, 3,  3, 4, 7 }

 

Na primeira linha: 5 > 1 + 2 --> matriz[0][0] > matriz[0][1] + matriz[0][2]

Na segunda linha: 6 > 2 + 3 --> matriz[1][1] > matriz[1][0] + matriz[1][2]

Na terceira linha: 7 > 3 + 4 --> matriz[2][2] > matriz[2][0] + matriz[2][1]

 

Pra achar a diagonal é fácil... é só ver o elemento onde o numero da linha e da coluna são iguais.

Então numa matriz tamanho 3x3, basta uma estrutura simples de repetição pra pegar a soma da diagonal:

 

Para x=0, enquanto x < 3, faça: {    somaDiagonais = somaDiagonais + matriz[x][x]    x = x+1}

 

Pra achar os outros valores, você usa outra estrutura de repetição, excluindo os valores da diagonal:

 

Para x=0, enquanto x < 3, faça: {    Para y=0, enquanto y < 3, faça:        Se x for diferente de y, faça: soma = soma + matriz[x][y]        y = y + 1    }    x = x + 1}

 

No final é só testar se somaDiagonais é maior que soma.

Pra usar a função modulo, depende da linguagem que você usar. No C você usa a função abs().

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...