Ir para conteúdo
Fórum Script Brasil
  • 0

Como comparar indices de uma matriz qualquer!


sidclaynt

Pergunta

olá amigos, estou com dúvida em comparar os indices i e j de uma matriz qualquer. por exemplo, os elementos abaixo da diagonal principal possuem o índice da linha maior que o índice da coluna. (índices em colchetes estão abaixo da diagonal principal) exemplo abaixo.

a00 a01 a02

[a10] a11 a12

[a20] [a21] a22

preciso comparar o índice da linha pelo da coluna de forma pareceda com isso: if ( (i > j) == 0){ ...

e comparar com o valor recebido qe tem que ser igual a zero ou não.

no meu código tentei assim:

if (matriz[l][c] = (l > c) == 0){ // aqui deve está o erro (sintaxe), como corrijo isso?

agradeço pela atenção de todos!

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

Acho que entendi. Você quer ver se a matriz é triangular superior.

for(i = 1; i < MAX_LINHA; i++)
     for(j = 0; j < i; j++)
     {
          if(matriz[i][j] != 0)
         {
              printf("Matriz não e triangular");
              break;
         }
     }

Vê se funciona ai.

Link para o comentário
Compartilhar em outros sites

  • 0
Acho que entendi. Você quer ver se a matriz é triangular superior.

for(i = 1; i < MAX_LINHA; i++)
     for(j = 0; j < i; j++)
     {
          if(matriz[i][j] != 0)
         {
              printf("Matriz não e triangular");
              break;
         }
     }

Vê se funciona ai.

verifica o código completo e teste pra ver o erro que está dando. coloca 2 e 2 para i e j e 0 apenas no índice [10], e verifica o q aparece.

código completo:

******************************************************************************************************************

#include <iostream>

using namespace std;

int i, j;

int matriz[0][0];

main (){

cout<<"Digite o numero de linhas da Matriz:"<<endl;

cin>>i;

cout<<"Digite o numero de colunas da Matriz:"<<endl;

cin>>j;

for (int l=0; l<i; l++){

for (int c=0; c<j; c++){

cout<<"Digite o Indice:""["<< l <<""<< c << "]"<<" da Matriz:"<<endl;

cin>>matriz[l][c];

}

cout<<endl;

}

for (int l=0; l<i; l++){

for (int c=0; c<j; c++){

cout<<matriz[l][c]<<" ";

}

cout<<endl;

}

cout<<endl;

if(matriz[j] != 0){

cout<<"[[[[++++ A Matriz é Triangular Superior ++++]]]]"<<endl;

}

else

{

cout<<"[[---- A Matriz não é Triangular Superior ----]]"<<endl;

}

system("pause");

}

Link para o comentário
Compartilhar em outros sites

  • 0
verifica o código completo e teste pra ver o erro que está dando. coloca 2 e 2 para i e j e 0 apenas no índice [10], e verifica o q aparece.

Bom, aqui não apareceu a mensagem "Matriz não e triangular". Deu certo aqui. Testei 3X3, 4X4.

Qual o erro que aparece ai?

Pelo seu primeiro post, entendi que era pra verificar se era triangular inferior. Mas pelo seu código agora, você quer ver também se é triangular superior. Então tem que modificar o código. A não ser que se verifique primeiro pra superior e depois pra inferior.

Editado por RonaldoRG
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...