Jump to content


Photo

Ajuda Em Chamada De Funcoes


  • Faça o login para participar
1 reply to this topic

#1 Scolare

Scolare

    Novato no fórum

  • Usuários
  • 1 posts
  • Sexo:Não informado

Posted 19/10/2008, 21:07

Eu estou fazendo um programa para resolucao de sistemas matematicos.
para isso, preciso das operacoes de matrizes envolvendo transpostas, multiplicacoes, determinantes e inversas

para isso, criei uma estrutura para a matriz, que indica tambem o numero de linhas e colunas para ela:

typedef struct matriz {
		float M[15][15];
		int linhas, colunas;
}matriz;

alem das funcoes já ditas, criei uma funcao que remove uma linha e uma coluna de uma matriz.
as chamadas das minhas funcoes de transposta, multiplicacao e determinante são :

matriz Remover(matriz M, int linha, int coluna)
matriz Transposta(matriz M)
matriz Mult(matriz M1, matriz M2)
float Determinante(matriz M)

as tres funcoes matrizes funcionam normalmente quando testadas dentro do main do programa.
mas na funcao derivada, quando eu faco uma chamada para a funcao de remocao, ocorre um erro de onflito de tipos na funcao remover.

float Determinante(matriz M) {
	   if (M.linhas == M.colunas) {
			if (M.linhas == 1)
				return M.M[0][0];
			else {
				 float soma = 0;
				 int i = 0;
				 matriz Aux;
				 
				 for (i = 0; i < M.linhas; i++) {
					Aux = Remover (M, i, 0);   <-- nesta chamada ocorre o erro
					soma += pow(-1,i+2) * ( M.M[i][0] * Determinante(Aux) );
				 }
				 
				 return soma;
			}
	   } else printf ("Matriz não quadrada, não existe derivada.\n");
}


eu já tentei fazer a funcao de remocao usando ponteiros ao invés de retorno, mas o mesmo erro ocorre
tentei tambem chamar as outras funcoes dentro uma da outra, mas ocorre o mesmo erro sempre que uma funcao é chamada dentro de outra

alguém sabe qual pode ser o problema?

grato

Edição feita por: Scolare, 19/10/2008, 21:08.


#2 ffmm

ffmm

    Veterano

  • Usuários
  • 1224 posts
  • Sexo:Não informado

Posted 31/10/2008, 14:58

Qual a mensagem de erro exatamente?




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq