Ir ao conteúdo
  • Cadastre-se

Programa em c com matriz.


claudio84413

Posts recomendados

Tentei não estou conseguindo,o programa esta lendo errado pode me ajudar e mostrar onde esta o erro. veja:
 

#include <stdio.h>#include <stdlib.h>int main(int argc, char *argv[]){int M[4][6];int N[4][6];int i,j,soma;for(i=0;i<4;i++){for(j=0;j<6;j++){printf("Insira M[%d][%d]:",i,j);scanf("%d",&M[i][j]);}}for(i=0;i<4;i++){for(j=0;j<6;j++){printf("Insira N[%d][%d]:",i,j);scanf("%d",&N[i][j]);}}//Somando as matrizes:for(i=0;i<4;i++){for(j=0;j<6;j++){soma=M[i][j]+N[i][j];}}//Diferença entre as matrizes:for(i=0;i<4;i++){for(j=0;j<6;j++){M[i][j]!=N[i][j];}}//Mostrando as matrizes M:for(i=0;i<4;i++){for(j=0;j<6;j++){printf("\n M[%d][%d]= %d",i,j,M[i][j]);}}for(i=0;i<4;i++){for(j=0;j<6;j++){printf("\n N[%d][%d]= %d",i,j,N[i][j]);}}system ("pause");return(0);}

Abraços

Link para o comentário
Compartilhar em outros sites

O programa está lendo corretamente, porém você não deve ter lido atentamente o enunciado.

O exercício pede que você crie duas outras matrizes, uma que seja a soma e outra que seja a diferença.

Troque essas linhas abaixo do seu algoritmo e veja o que acontece.

Essa int i,j,soma; por essa int i, j, soma[4][6], diferenca[4][6];

Essa soma=M[j]+N[j]; por essa soma[j]=M[j]+N[j];

Essa M[j]!=N[j]; por essa diferenca[j]=M[j]-N[j];

Link para o comentário
Compartilhar em outros sites

  • 3 meses depois...

Eu tenho dois algoritmos, um que faz a soma de duas matrizes nxm  e um que faz o produto:

Para soma de duas matrizes nxm:

#include <stdio.h>int main(){    int i,j;    const int NL,NC;    printf("---------------------------------------------------------\n"); //A condição para soma das matrizes e que suas ordens devem ser iguais.    printf("Entre com o numero de linhas das matrizes: ");    scanf("%d",&NL);    printf("Entre com o numero de colunas das matrizes: ");    scanf("%d",&NC);    float matA[NL][NC],matB[NL][NC],matC[NL][NC];    printf("---------------------------------------------------------\n");    for (i=0;i<NL;i++)        for (j=0;j<NC;j++)        {            printf("Entre com o elemento a%d%d da matriz A: ",i+1,j+1);            scanf("%f",&matA[i][j]);        }    printf("---------------------------------------------------------\n");    for (i=0;i<NL;i++)        for (j=0;j<NC;j++)    {        printf("Entre com o elemento b%d%d da matriz B: ",i+1,j+1);        scanf("%f",&matB[i][j]);    }    printf("---------------------------------------------------------\n");    printf("A soma das matrizes A+B %c igual a matriz C\n",130);    printf("---------------------------------------------------------\n");    for (i=0;i<NL;i++)        for (j=0;j<NC;j++)    {        matC[i][j]=(matA[i][j]+matB[i][j]);        printf("O elemento c%d%d da matriz C %c: %.2f\n",i+1,j+1,130,matC[i][j]);    }    printf("---------------------------------------------------------\n");    system("pause");    return (0);}Para o produto de duas matrizes nxm:Citar#include <stdio.h>int main(){    int i,j,k;    int NLA,NCA,NLB,NCB;    printf("--------------------------------------------------------------------------------"); //A condição para soma das matrizes e que suas ordens devem ser iguais.    printf("CONDICAO PARA O PRODUTO DE MATRIZES!:\n");    printf("-------------------------------------\n");    printf("O numero de colunas da matriz A tem que ser igual ao numero de linhas da matriz B!\n");    printf("--------------------------------------------------------------------------------");    printf("Entre com o numero de linhas da matriz A: ");    scanf("%d",&NLA);    printf("Entre com o numero de colunas da matriz A: ");    scanf("%d",&NCA);    printf("---------------------------------------------------------\n");    printf("Entre com o numero de linhas da matriz B: ");    scanf("%d",&NLB);    while (NCA!=NLB)    {        printf("================================================================================");        printf("O numero de linhas da matriz B %c diferente do numero de colunas da matriz A!!!\n",130);        printf("================================================================================");        printf("Entre novamente com o numero de linhas da matriz B: ");        scanf("%d",&NLB);    }    printf("Entre com o numero de colunas da matriz B: ");    scanf("%d",&NCB);    printf("---------------------------------------------------------\n");    float matA[NLA][NCA],matB[NLB][NCB],matC[NLA][NCB];    for (i=0;i<NLA;i++)        for (j=0;j<NCA;j++)        {            printf("Entre com o elemento a%d%d da matriz A: ",i+1,j+1);            scanf("%f",&matA[i][j]);        }    printf("---------------------------------------------------------\n");    for (i=0;i<NLB;i++)        for (j=0;j<NCB;j++)    {        printf("Entre com o elemento b%d%d da matriz B: ",i+1,j+1);        scanf("%f",&matB[i][j]);    }    printf("---------------------------------------------------------\n");    printf("O produto das matrizes A*B %c igual a matriz C\n",130);    printf("---------------------------------------------------------\n");    for (i=0;i<NLA;i++)        for (j=0;j<NCB;j++)        {            matC[i][j]=0;            for (k=0;k<NCA;k++)            {                matC[i][j]+=(matA[i][k]*matB[k][j]);            }            printf("O elemento c%d%d da matriz C %c: %.2f\n",i+1,j+1,130,matC[i][j]);        }    printf("---------------------------------------------------------\n");    system("pause");    return (0);}

Os algoritmos foram compilados por mim através do programa Codeblocks, espero que te ajude em seu algoritmo!

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para 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...