Latest web development tutorials

idioma ir función recursiva

La recursividad, es llamar a su cuenta en el proceso de ejecución.

Sintaxis es la siguiente:

func recursion() {
   recursion() /* 函数调用自身 */
}

func main() {
   recursion()
}

Ir recursividad soporte de idiomas. Pero cuando usamos la recursividad, los desarrolladores necesitan para establecer una condición de salida, de lo contrario se caerá en un bucle recursivo infinito.

función recursiva para resolver el problema matemático es muy útil, como factorial, generar número de Fibonacci y así sucesivamente.


factorial

Ir a través de los siguientes ejemplos ejemplos de lenguaje función factorial recursiva:

package main

import "fmt"

func Factorial(x int) (result int) {
  if x == 0 {
    result = 1;	
  } else {
    result = x * Factorial(x - 1);
  }
  return;
}

func main() {  
    var i int = 15
    fmt.Printf("%d 的阶乘是 %d\n", i, Factorial(i))
}

Los ejemplos de la aplicación de la salida anterior es:

15 的阶乘是 1307674368000

número de Fibonacci

Los siguientes ejemplos se logran a través de la función recursiva idioma Ir Fibonacci secuencia de Fibonacci:

package main

import "fmt"

func fibonaci(n int) int {
  if n < 2 {
   return n
  }
  return fibonaci(n-2) + fibonaci(n-1)
}

func main() {
    var i int
    for i = 0; i < 10; i++ {
       fmt.Printf("%d\t", fibonaci(i))
    }
}

Los ejemplos de la aplicación de la salida anterior es:

0	1	1	2	3	5	8	13	21	34