Ir ao conteúdo
  • Cadastre-se

Programacao


CelsoJr001

Posts recomendados

Eae galera beleza? estava tentando fazer o seguinte codigo: 

Faça um programa que leia duas matrizes A e B de dimensões n x n de números reais e realize as

operações descritas abaixo sobre elas:

a) Calcule a soma de A e B e coloque em C.

B) Calcule a multiplicação entre A e B e coloque em D.

A soma consegui calcular mas a multiplicação não consegui fazer alguem ae pode ajudar? valeu

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

int main() {
    int n,m;
    scanf("%d",&n);
    int A[m][n];
    for(int lin=0;lin<n;lin++){
        for(int col=0;col<n;col++){
            scanf("%d",&A[lin][col]);
        }
    }
    int B[n][n];
    for(int lin=0;lin<n;lin++){
        for(int col=0;col<n;col++){
            scanf("%d",&B[lin][col]);
        }
    }
    int C[n][n];
    for(int lin=0;lin<n;lin++){
        for(int col=0;col<n;col++){
            C[lin][col]=((A[lin][col])+(B[lin][col]));
        }
    }
  
    for(int lin=0;lin<n;lin++){
        for(int col=0;col<n;col++){
            printf("%d ",C[lin][col]);
        }
        printf("\n");
    }
   
    
    return (0);
}

 

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

@CelsoJr001

O enunciado informa que a matriz é do tipo n x n, ou seja, linhas e colunas iguais.

A declaração da matriz A deveria ser: 

 

float A[n][n]; // float ou double, pois o enunciado pede números reais.  N e N, pois o enunciado pede matriz quadrada.

 

A declaração da matriz B também deve ser FLOAT.

A entrada de dados está OK.

A declaração da matriz C também deve ser FLOAT.

 

Está faltando a matriz D para realizar a multiplicação. 

 

Link para o comentário
Compartilhar em outros sites

  • Membro VIP
14 minutos atrás, CelsoJr001 disse:

beleza mas o que não estou entendendo e como funciona o codigo pra fazer a multiplicacao.@Math.Pi

 

 

Nada a ver essa multiplicação que postei.

 

http://www.somatematica.com.br/emedio/matrizes/matrizes4.php

Link para o comentário
Compartilhar em outros sites

  • Membro VIP
26 minutos atrás, CelsoJr001 disse:

mais multiplicacao de matrizes nao se faz assim.

 

É mesmo rsrs.

 

Mas não parece difícil. Vou ver...

adicionado 15 minutos depois

 

Acho que é isso:

for (int i = 0; i < 3; i++)
      {
          for (int j = 0; j < 3; j++)
          {
              matC[i][j] = 0;
              for (int k = 0; k < 3; k++)
                  matC[i][j] += matA[i][k] * matB[k][j];
              printf("%d\t", matC[i][j]);
          }
          printf("\n"); 
      }

 

https://rafaelomarques.wordpress.com/2010/08/28/multiplicacao-de-matrizes-dinamicas-em-cc/

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

Estava fazendo um código que leia uma matriz 4 x 4 e troque os valores da 1a.linha pelos da

4a.coluna, vice-e-versa. Imprimir ao final a matriz obtida

só que ela esta com um erro na saída alguém poderia ajudar?

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

int main() {
    int m=4;
    
    int aux[m];
    int v[m][m];
    for(int lin=0;lin<m;lin++){
        for(int col=0;col<m;col++){
            scanf("%d",&v[lin][col]);
        }
    }
    for(int col=0;col<m;col++){
        aux[col]=v[0][col];
        v[0][col]=v[col+1][3];
        v[col+1][3]=aux[col];
        }
    for(int lin=0;lin<m;lin++){
        for(int col=0;col<m;col++){
            printf("%d ",v[lin][col]);
        }
        printf("\n");
    }
    
    
    return 0;
}

 

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