A capacidade de pensar de forma recursiva é muito importante para os desenvolvedores de software . Um software recursiva repete rotina referenciando -se em algum ponto. Tal rotina tem um caso base , que termina a recursão e evita a rotina de exercer a indefinidamente. A maioria dos programadores aprender a codificar a seqüência de Fibonacci quando aprendem a recursividade . Uma série semelhante de números é a Série Lucas , e ele pode ser resolvido de forma recursiva bem . A Série Lucas começa com os números 2 e 1. Cada número subsequente na série é a soma das duas anteriores - por exemplo , o terceiro número é 3 ( 1 2 ) , seguido por 4 ( 3 +1 ) , seguido por 7 ( 4 3 ) , e assim por diante . Coisas que você precisa
C + + Compiler , como GCC
C + + IDE , como o Eclipse CDT
Show Mais instruções
1
Inicie o seu + + IDE C e criar um arquivo de código fonte + novo C + .
2
Crie uma função chamada lucas . A parte principal do programa irá alimentar lucas um número e esperar lucas para passar um número de volta para ele. Esta sintaxe é realizado escrevendo algo como isto:
int lucas (int x) {
}
3
Set -se o primeiro caso base. O primeiro caso base ocorre quando a entrada de número para a função de lucas é 0. O resultado disto é o valor de saída de 2 a principal . Você pode fazer isso adicionando um " if" para o interior das chaves da função lucas, assim:
if ( x == 0 ) {return 2 ;}
4
Configure o segundo caso base. O segundo caso base ocorre quando a entrada de número para a função de lucas é 1. O resultado disto é a saída de valor de 1 a principal . Você pode escrever isso "else - if" como esta, abaixo do " if" a partir do passo 3:
else if ( x == 1 ) {return 1 ;}
5
Configurar a chamada recursiva . Esta chamada vai chamar a própria função lucas mais duas vezes , acrescentando que o resultado dos dois resultados anteriores da série Lucas juntos. Esta chamada recursiva pode ficar assim , e vai abaixo a declaração " if-else " no passo 4 :
else { return lucas (x - 1 ) + lucas (x - 2) ;}
6 lucas
chamada na função principal . Você vai colocar a sua principal função abaixo acabado a função lucas, do lado de fora de suas chaves. Toda a função principal deve ficar assim :
int main () { int
y = lucas (7); cout << y << endl; retornar 0 ;}
7
compilar e executar este programa ( muitos ambientes de desenvolvimento de alcançar este objetivo , pressionando F5). A saída do programa serão os oito primeiros números da Série Lucas : 2, 1, 3, 4, 7, 11, 18, 29
.