Erro na compilação de uma função. [RESOLVIDO]

1. Erro na compilação de uma função. [RESOLVIDO]

fabiano meireles dos santos
Fabiano_meireles

(usa Outra)

Enviado em 23/11/2008 - 15:54h

Olá,
ocorre o seguinte, estou fazendo uma função que realize o calculo de fibonacci, o usuario digita um numero por exemplo 6, entao eu mostrarei o 6 numero da soma de fibonacci, contudo não quero que resolvam nada para mim apenas que me ajudem a encontrar porque não esta compilando, segue abaixo o código,
#include<stdio.h>
#include<stdlib.h>
int fibo(int n, int n1, int n2){
int aux=0,aux2=0;
if(n>=aux2){
return aux+fibo(aux,n1+1,n2+1);
aux2++;
}
return 0;
}
main()
{
int n,fibo,resul;
printf("digite um numero para efetuar o calculo de fibonacci\n");
scanf("%i",&n);
resul=fibo(n,0,1);
system("pause");

}
o erro de compilação esta presente nesta linha na função main,
resul=fibo(n,0,1);
quando compilo aparece isto called objetc is not a function, não
sei o porque deste erro, se alguem puder ajudar.
só vou dizer pq estou passando o 0 e o 1 na função ja junto com o numero digitado, faço isso porque os dois primeros números da sequência de fibonacci são 0 e 1.


  


2. MELHOR RESPOSTA

Marcelo A. B. Slomp
mslomp

(usa Slackware)

Enviado em 23/11/2008 - 16:17h

cara, na linha onde você declara as variáveis, acabou declarando uma com o nome fibo, que já está em uso pela função. além disso, essa variável nem mesmo será usada, então você pode removê-la, não precisa nem mesmo renomeá-la.

troque
int n,fibo,resul;
por
int n,resul;

3. Re: Erro na compilação de uma função. [RESOLVIDO]

Rogério Cassimiro
cassimirinho

(usa Ubuntu)

Enviado em 23/11/2008 - 15:59h

Tem muito tempo que não estudo C, mas nessa passagem de parâmetros o n não teria que ter um *n ou &n
Não me recordo bem, mas para passar o valor para chamar a função com o valor contido na variável acho que tem o * ou &.

É uma lembrança vaga que tenho de C.


4. Re: Erro na compilação de uma função. [RESOLVIDO]

fabiano meireles dos santos
Fabiano_meireles

(usa Outra)

Enviado em 23/11/2008 - 16:06h

Creio que não necessito passar o endereço de memória da variavel n &n, porque na criação da função, int fibo(int n, int n1, int n2){
a variavel n recebe este valor resul=fibo(n, entao n1 recebe 0 e n2 recebee 1, assim a variavel n da função recebe o que foi passado no n da função main, bom também tentei assim mais não consegui. da erro na mesma linha com o mesmo erro.


5. Re: Erro na compilação de uma função. [RESOLVIDO]

fabiano meireles dos santos
Fabiano_meireles

(usa Outra)

Enviado em 23/11/2008 - 16:19h

Realmente me passei nessa, muito obrigado estou começando com programação cometi um erro bem iniciate, obrigado.


6. Re: Erro na compilação de uma função. [RESOLVIDO]

Rogério Cassimiro
cassimirinho

(usa Ubuntu)

Enviado em 23/11/2008 - 16:46h

Posta a solução.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts