Como usar a função recursiva em c

Como usar a função recursiva em c

Quando se trata de resolver problemas na programação de computadores, existem muitas técnicas disponíveis. Um deles é recursão, que é um processo que envolve chamar uma função dentro de si.

Este artigo explorará como implementar funções recursivas na linguagem de programação C C. Discutiremos a sintaxe e estrutura básica de funções recursivas, Além de fornecer um exemplo de como eles podem ser usados ​​para resolver problemas comuns de programação.

Qual é a função recursiva

Na programação C, o função recursiva é uma função que se chama durante sua execução. É benéfico para resolver problemas complexos que requerem cálculos repetitivos ou lógica de ramificação. Ao dividir um problema em subproblemas menores que podem ser resolvidos recursivamente, o programa pode chegar a uma solução de maneira eficiente e elegante.

A seguir, são seguintes dois pré -requisitos para criar recursão Na programação C:

  1. Uma condição de saída: Esta condição ajuda a função a determinar quando sair. Sem uma condição de saída, o código pode entrar em um loop infinito.
  2. Mudando o balcão: O contador deve ser alterado a cada chamado para a função.

Sintaxe para função recursiva em C

A sintaxe de c função recursiva é dado como:

return_type function_name (parâmetros)
// caso base
if (condição)
retornar algum_value;

// Caso recursivo
return function_name (modificado_parameters);


Aqui, return_type é o tipo de dados do valor retornado pela função, function_name é o nome da função, e os parâmetros são os parâmetros de entrada passados ​​para a função.

A função é definida pela primeira vez com um caso base que fornece uma condição de terminação e, em seguida, um caso recursivo que chama a própria função com parâmetros de entrada modificados.

Como usar a função recursiva em c

Quando um função recursiva é chamado, ele deixa de lado alguma memória para executar suas operações. Se a condição for atendida, ela passará o resultado de volta para a função anterior, que também libera a memória que se reserva. Este processo continua repetindo até a função que iniciou tudo retorna sua saída final. No entanto, quando os critérios não forem atendidos, a função continuará fazendo chamadas recursivas até que acabem trazendo o programa.

A seguir é um código simples para usar o função recursiva Na programação C:

#incluir
int fatorial (int n)
// Caso base
if (n == 0)
retornar 1;

// Caso recursivo
outro
retornar n * fatorial (n-1);


int main ()
int num;
printf ("Digite um número não negativo:");
scanf ("%d", & num);
printf ("Fatorial de %d é %d", num, fatorial (num));
retornar 0;


O código acima leva ao usuário a inserir um número inteiro não negativo e calcula seu fatorial usando uma função recursiva chamada fatorial(). A função verifica primeiro se o caso base é atendido (i.e., Se a entrada for 0) e retornará 1 se sim. Caso contrário, ele se chama com o argumento (n-1) até que o caso base seja atendido. Um resultado final foi então devolvido à função Main (), que a imprime no console.

Conclusão

Funções recursivas são uma poderosa técnica de programação para resolver problemas que requerem execução repetida de lógica semelhante. No entanto, eles devem ser usados ​​com cuidado, pois exigem mais memória e tempo do que programas incrementais. É importante definir uma condição de base para o função recursiva e verifique se a condição de saída é atendida para evitar um loop infinito. Com a ajuda deste tutorial, agora você tem um bom entendimento de como criar e usar funções recursivas na programação C.