Ir ao conteúdo
  • Cadastre-se
bruno.95

Ajuda com matrizes em C

Recommended Posts

Eu não estou sabendo muito a matéria de matrizes em C, o professor passou alguns exercícios que eu até consegui fazer, mas esse não:

A inversa de uma matriz A existe e é definida como A-1, se A for quadrada e se o produto das duas matrizes (A e A-1)for igual a uma matriz identidade quadrada de mesma ordem. Faça um programa que verifique se uma matriz é inversa da outra

Alguém me ajuda com esse código?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Bruno,

realmente a questão exige um pouco de raciocínio mas, estudando um pouco mais sobre matrizes você consegue facilmente desenvolver o programa, vou postar o código abaixo, utilize-o para estudo, grande abraço:

//Verifica se uma matriz é inversa da outra
//Criado por Guilherme Soares Valdevieso
//2013 - guilherme.valdevieso@msn.com
#include <stdio.h>

int inversa(int matrizA[4], int matrizB[4], int matrizIdentidade[4]){
int matrizAux[4];
register int i = 0;
matrizAux[0] = (matrizA[0]*matrizB[0])+(matrizA[1]*matrizB[2]);
matrizAux[1] = (matrizA[0]*matrizB[1])+(matrizA[1]*matrizB[3]);
matrizAux[2] = (matrizA[2]*matrizB[0])+(matrizA[3]*matrizB[2]);
matrizAux[3] = (matrizA[2]*matrizB[1])+(matrizA[3]*matrizB[3]);

for(i=0;i<4;i++){
if(matrizAux[i] != matrizIdentidade[i])
return 0;
}
return 1;
}
void main(){
int matrizA[4];
int matrizB[4];
int matrizIdentidade[4];
unsigned register int i = 0;
// Setando a matriz identidade
matrizIdentidade[0] = 1;
matrizIdentidade[1] = 0;
matrizIdentidade[2] = 0;
matrizIdentidade[3] = 1;
// Fim
// Recebendo valores da matriz A e B
printf("De os valores para a matriz A:\n");
for(i=0;i<4;i++){
printf("\nElemento a%d: ",i+1);
scanf("%d",&matrizA[i]);
}
printf("\nOtimo, agora de os valores para a matriz B:\n");
for(i=0;i<4;i++){
printf("\nElemento a%d: ",i+1);
scanf("%d",&matrizB[i]);
}
if(inversa(matrizA,matrizB,matrizIdentidade))
printf("\nMatriz A e B sao inversas!!\n");
else
printf("\nMatriz A e B nao sao inversas!!\n");
getchar();
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro 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 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

×