[RESOLVIDO] Metódo recursivo de fibonacci sem laços

E ai! Blz!
Estou com problemas para resolver um dos desafios do fj11 da caelum
O exercício é o seguinte criar um método calculaFibonacci que não pode ter nenhum laço, só pode chamar ele mesmo como método. Então eu tenho:

Fibonacci fibo = new Fibonacci();
int i = fibo.calculaFibonacci(6);
System.out.println(i);

Isso imprime o número 8 que o sexto da ordem: 1,1,2,3,5,8. Esse programa trabalha com duas classes esse código em cima e a parte que o exercício me mostra até aí é o da apostila.

O ruim é que sou iniciante é díficil controlar sem laço nenhum e o código que eu fiz não funcionou e a recursividade sem dúvida é um problema mas queria dicas para melhorar aí embaixo foi o metódo que eu tentei fazer:

[code]
public class Fibonacci {

/** METÓDO **/
void calculaFibonacci(int i){
	int anterior = 0;
	int atual = 1;
	
	if (anterior < atual){
		anterior = anterior + atual;
	}
	
	if (atual == anterior){
		atual = anterior + atual;
	}
	if (anterior == i){
		// Têm que executar até que fique na posição 6 mais não sei o que fazer aqui!
	}
}

}[/code]
O raciocinio não foi dos melhores mas talvez não esteja tudo errado

http://www.guj.com.br/posts/list/57712.java#303559

Vini obrigado o código que você fez sem dúvida resolveu o problema as duas classes estão trabalhando em harmônia.
Mas sem querer abusar da sua paciência teria como você postar o código em portugol visualg eu tenho dificuldades em fazer o teste de mesa mesmo o código sendo simples e no momento estou treinando sem instrutor e o visual é o único que eu conheço que mostra o passo a passo.
Não me entenda mal tentei fazer no visualg mais estou mais acustumado com a linguagem java original do que com o portugol. O metódo que eu tentei é muito diferente do seu não basta eu ler o código tenho que ver o metodo recursivo em ação.

Não faço idéia do que seja portugol visualg.

Você está usando alguma IDE para programar em Java? Se estiver, elas tem o modo debug que permite fazer seu programa executar em um passo a passo para que você entenda o que está acontecendo.

De qualquer forma, o teste de mesa não é complicado…

E ai Marco bom cara o debug eu tenho porque estou fazendo tudo no eclipse mais como eu disse eu sou iniciante e ele teria que me mostrar devagar e destacando o passo a passo não sei se ele faz isso de qualquer forma se ele fizer você não sabe de algum post que ensina a usar o debug

É meio antigo mas deve ajudar: http://hotwork.sourceforge.net/hotwork/manual/eclipse/eclipse-user-guide.html#Rodando_em_modo_Debug

Não conheço tutoriais, mas é simples…

Voce “marca” a linha onde quer que o debug “pare” ao chegar, dando um duplo-clique na barra lateral esquerda, ao lado do código (aquela faixa cinza bem no canto)…

Inicie o seu projeto clicando nele com o botão direito, selecione “debug as” > “java application”… pronto, quando chegar na linha marcada vai parar…

Pra avançar para a próxima linha, aperte F5…
Pra entrar no método da linha atual, F6…
Pra continuar com a aplicação, F8 (vai parar no próximo ponto de debug, se houver… se for dentro de um laço ele para também caso exista um ponto de debug naquele laço)…

Não tem segredo… e vai abrir na lateral direita, uma aba chamada “Variables” onde você pode verificar o valor das variáveis… caso não apareça você pode exibi-la através do menu “Window” > “Show View” > "Variables… se não estiver ai, clique em “Other” e escolha ela… ou você seleciona a variável que quer ver, e aperta Ctrl+Shift+I (é o atalho pro “Inspect”…

Valeu galera fiz alguns testes com o modo em debug e foi muito eficiente. Estou gostando muito do fórum obrigado a todos pelas respostas espero aprender muito por aqui.