Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ozkhwarizmi

Calcular o derterminante de uma matriz [Erro ao Compilar]

Recommended Posts

Olá pessoal boa noite !

 

Estou tentando compilar o codigo abaixo, porém apresenta erro "error: invalid operands to binary * (have ‘int *’ and ‘int *’)
vet[4] = matrix[0][0] * matrix[1][2] * matrix[2][1];"

 

#include<stdio.h>
4 #define DIM 3
5
6 int main(void) {
7
8 int i,j,k;//i = linha j = coluna
9 int vet[6]; //pDig = Diagonal Principal sDig Diagonal Secundaria
10 int iDet;
11
12 int aVal;
13 int matrix [DIM][DIM][DIM];
14
15 for(i=0; i<DIM; i++)
16 {
17 for(j=0; j<DIM; j++)
18 {
19 for(k=0; k<DIM; k++)
20 {
21
22 printf("Enters why the values [%d][%d][%d]: ",i,j,k);
23 scanf("%d",&aVal);
24
25 matrix[j][k] = aVal;
26 }
27 }
28
29 }
30 vet[0] = matrix[0][0] * matrix[1][1] * matrix[2][2];
31 vet[1] = matrix[0][1] * matrix[1][2] * matrix[2][0];
32 vet[2] = matrix[0][2] * matrix[1][0] * matrix[2][1];
33 vet[3] = matrix[0][2] * matrix[1][1] * matrix[2][0];
34 vet[4] = matrix[0][0] * matrix[1][2] * matrix[2][1];
35 vet[5] = matrix[0][1] * matrix[1][0] * matrix[2][2];
36
37 iDet = -(vet[0]+vet[1]+vet[2]) - vet[3]+vet[4]-vet[5];
38
39
40 printf("Determinante: %d\n",iDet);
41
42 return 0;
43
44 }
45

Bom muito obrigado e conto com todos.
~
~

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você ta tentando usar a matriz com 2 dimensões, quando na vdd você declarou ela tendo 3 dimensões.

Muda da linha 30 até a linha 35, tipo assim: vet[0] = matrix[0][0][0] * matrix[1][1][1] * matrix[2][2][2];

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.