Ir ao conteúdo
  • Cadastre-se
zoone

RESOLVIDO Problema em exercício com matriz .

Recommended Posts

Oi gente , preciso de ajuda em um exercício em c, usando o programa dev-c++ , no qual o programa tem que ler a matriz e calcular a matriz transposta. Não cheguei na parte de fazer a matriz transposta , mas tive problemas na hora de executar o programa. Quando tento executar ele para de funcionar.

#include <stdio.h>#include <stdlib.h>#include <math.h>main (){  int n,m,i,j;  float A[n][m],TR;  printf("Digite o numero de linhas:");  scanf("%d\n",&n);  printf("Digite o numero de colunas:");  scanf("%d\n",&m);    for(i=0;i<n;i++)    for(j=0;j>m;j++)      printf("Digite o valor A[%d][%d] da matriz:\n",i,j);      scanf("%f",&A[i][j]);							system("PAUSE");		}

 

Existe algum problema no programa que eu digitei ou isso é problema com o dev-c++ ? 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@zoone

 

 

A parte da leitura da matriz está aí. O restante é contigo:

#include <stdio.h>#include <stdlib.h>#include <math.h>int main (){    int n, m, i, j;    printf("Digite o numero de linhas:");    scanf("%d", &n);    printf("Digite o numero de colunas:");    scanf("%d", &m);    printf("\n\n");    float A[n][m], TR;// leitura da matriz    for(i=0; i<n; i++)        for(j=0; j<m; j++)        {            printf("Digite o valor A[%d][%d] da matriz:\n", i, j);            scanf("%f", &A[i][j]);        }    printf("\n\n");// imprime a matriz    for(i=0; i<n; i++)    {        for(j=0; j<m; j++)            printf("%.2f ", A[i][j]);        printf("\n");    }    system("PAUSE");    return 0;}

LNW

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante

Fiz rapidinho,nao sei se era isso que você queria.

#include <stdio.h>#include <stdlib.h>#include <math.h>int main (){    float **A, aux;    int n, m;    int i,j;    printf("Digite o numero de linhas: ");    scanf("%d", &n);    printf("Digite o numero de colunas: ");    scanf("%d", &m);    //aloca dinamicamente os valores da linha e coluna    A = (float **)calloc(n,sizeof(float *));    for (i=0; i<n; i++)    {	A[i] = (float *)calloc(m,sizeof(float));    }    //recebe valores    for(i=0; i<n; i++)    {        for(j=0; j<m; j++)        {            printf("\n Linha(%d) Coluna(%d): ", i+1 ,j+1);            scanf("%f", &A[i][j]);        }     }     //Algoritimo para matriz transposta quadrada     for (i=0; i<n; i++)     {         for (j=0; j<m; j++)         {             if ((i != j) && (i < j))             {                 aux = A[i][j];                 A[i][j] = A[j][i];                 A[j][i] = aux;             }         }     }     printf("\n\n");     //mostra matriz transposta     for(i=0; i<n; i++)     {         for(j=0; j<m; j++)         {             printf("%.1f ", A[i][j]);         }         printf("\n");    }    return 0;}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Onde estava o erro? os usuários@slackforgo e @LNW apenas postaram o código corrigido.  por gentileza expliquem como foi resolvido, para ajudar os demais que estiverem com a mesma dúvida. 

 

Postar código apenas não resolve...  é interessante colocar uma explicação da parte onde estava o erro.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×