Algoritmo de Fibonacci

main.c

#include <stdio.h>

long fib(int n) {
    if (n <= 1) // Caso Base
        return n;
    // Passo Recursivo
    return fib(n-1) + fib(n-2);
}

int main() {
    int n = 4;
    printf("Fibonacci(%d) = %ld\n", n, fib(n));
    return 0;
}

Terminal de Saída

$ Aguardando execução...

Compreendendo a Recursão

A recursão ocorre quando a função divide o problema original em subproblemas do mesmo tipo, invocando a si mesma.

Estrutura do Fibonacci
  • Caso Base: Interrompe a execução quando n ≤ 1.
  • Ramificação: A função se divide em duas: fib(n-1) e fib(n-2).

Árvore de Chamadas (Call Tree)

Execute o código (para n ≤ 6) para gerar o diagrama visual da memória.

Nenhuma árvore gerada ainda.