Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Lenguaje C

C - Recursión

La recursividad es el proceso de repetir elementos de manera autosimilar. En los lenguajes de programación, si un programa le permite llamar a una función dentro de la misma función, entonces se llama una llamada recursiva de la función.

void recursion() {
   recursion(); /* function calls itself */
}

int main() {
   recursion();
}

El lenguaje de programación C admite recursividad, es decir, una función para llamarse a sí misma. Pero al usar la recursividad, los programadores deben tener cuidado de definir una condición de salida de la función, de lo contrario entrará en un ciclo infinito.

Las funciones recursivas son muy útiles para resolver muchos problemas matemáticos, como calcular el factorial de un número, generar series de Fibonacci, etc.

Factoriales numéricos

El siguiente ejemplo calcula el factorial de un número dado usando una función recursiva −

Demostración en vivo
#include <stdio.h>

unsigned long long int factorial(unsigned int i) {

   if(i <= 1) {
      return 1;
   }
   return i * factorial(i - 1);
}

int  main() {
   int i = 12;
   printf("Factorial of %d is %d\n", i, factorial(i));
   return 0;
}

Cuando el código anterior se compila y ejecuta, produce el siguiente resultado −

Factorial of 12 is 479001600

Serie de Fibonacci

El siguiente ejemplo genera la serie de Fibonacci para un número dado usando una función recursiva −

Demostración en vivo
#include <stdio.h>

int fibonacci(int i) {

   if(i == 0) {
      return 0;
   }
	
   if(i == 1) {
      return 1;
   }
   return fibonacci(i-1) + fibonacci(i-2);
}

int  main() {

   int i;
	
   for (i = 0; i < 10; i++) {
      printf("%d\t\n", fibonacci(i));
   }
	
   return 0;
}

Cuando el código anterior se compila y ejecuta, produce el siguiente resultado −

0	
1	
1	
2	
3	
5	
8	
13	
21	
34

Lenguaje C

  1. C# Hello World:su primer programa en C#
  2. Identificadores y palabras clave de C#
  3. Variables de C# y tipos de datos (primitivos)
  4. Operadores de C#
  5. Operadores C# Bitwise y Bit Shift
  6. Entrada y salida básica de C#
  7. Expresiones, declaraciones y bloques de C# (con ejemplos)
  8. Comentarios de C#
  9. Declaración de interrupción de C#
  10. Declaración de continuación de C#
  11. Matrices de C#