Ir ao conteúdo
  • Cadastre-se

C++ condicao não esta batendo ou minha operação do vetor n acha a matriz triangular


Posts recomendados

image.png

Uma matriz quadrada é dita triangular se os elementos situados acima de sua diagonal principal são todos nulos. Escreva um programa que receba uma matriz quadrada e verifique se ela é triangular.

 

Estou muito confuso e não estou conseguindo resolver este programa  , ajuda plss.

 

 

 

#include <iostream>
#include <stdio.h>
#include <stdlib.h>

using namespace std;
int main(int argc, char *argv[])
{
 int x,i,j,y,soma,a[x][x],b[y],cont=0;
 
 cout<<"Escreva o tamanho da sua matriz quadratica ";
 cin>>x;
 
 y=x+1;
 
 soma=0;
 
 b[0]=0;
 
     for(i=1;i<y;i++)
     {
      b= soma + b[i-1];
      soma ++;              
     }
 
 
     for(i=0;i<x;i++)
     for(j=0;j<x;j++)
     {
         cout<<"Digite o valor da pos["<<i<<","<<j<<"] da matriz A ";
         cin>>a[j];
     }
 
     for(i=0;i<x;i++)
     {
         cout<<endl;
                 
     for(j=0;j<x;j++)
     {
         cout<<a[j]<<" ";
 

     }
     }
     for(i=0;i<x;i++)
     for(j=0;j<x;j++){
                  
        if(i<j && a[j]==0){              
                                        
               cont++;          
        }
                  
    }
                       
        if(cont==b[y]){
            
            cout<<"Matriz triangular"<<endl;
            
        }
            else{
                
                cout<<"Matriz nao triangular"<<endl;
                            
            }
                                                
 cout<<endl;
 cout<<endl;
 
  system("PAUSE"); 
  return 0;
}

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

4 horas atrás, AnsiC disse:

Olá! O seu problema é composto de outros problemas (2 subproblemas) que precisam ser tratados.

Você reconhece isso ? Por qual deles queres começar ??

Vou te falar que a minha lógica n esta batendo , isso eu sei , os 2 subproblemas que você esta dizendo eu ainda não encontrei , como eu disse , eu acredito que seja a condição ou operação aritmética com o meu vetor esta dando errado , até agora estou confuso e ainda não encontrei a lógica deste programa .

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

... São dois problemas:

 

12 horas atrás, Vinicios Castilho disse:

Escreva um programa que receba uma matriz quadrada

"Escreva um program que recebe uma matriz quadrada"

 

Uma matriz quadrada? Como assim uma?? Significa dizer que essa matriz é de tamanho indefinido, e daí? Daí, antes de partir para o problema principal; que é o aspecto matemático da questão, pare e pense se aloca memória para essa matriz de forma correta no código. Pois se não estiver não adianta bater a cabeça na mesa tentando o segundo problema que é ...

12 horas atrás, Vinicios Castilho disse:

verifique se ela é triangular.

 

 

Em resumo: aprenda como alocar essa matriz em tempo de execução; para só assim depois estudar o que é uma matriz triangular e como expressar a resolução em código C++. Pois a maneira como aloca essa matriz no código acima está errada!

 

Revisa as anotações feitas durante a aula.

Aguardando...

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

@Vinicios Castilho        no c++ para declarar uma matriz com valor definido pelo usuário , você pode criar essa matriz depois de pegar o valor referente a ela , e para saber se a matriz é triangular você precisa ver se  todos os elementos da parte superior da diagonal principal são nulos e nesse caso ela será uma matriz quadrada triangular superior  , ou se todos os elementos da parte inferior da diagonal principal são nulos , e nesse caso ela será uma matriz quadrada triangular inferior , então para isso você compara se cada elemento é diferente de zero , pois se apenas hum elemento for diferente de zero a matriz não triangular .

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

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!