Maison  >  Article  >  développement back-end  >  Explication détaillée de la récursivité des fonctions C++ : implémentation récursive des séquences factorielles et de Fibonacci

Explication détaillée de la récursivité des fonctions C++ : implémentation récursive des séquences factorielles et de Fibonacci

王林
王林original
2024-05-02 13:24:011005parcourir

La récursion est une technique de programmation pour l'appel automatique de fonctions, qui est divisée en conditions de base et appels récursifs. En utilisant la récursion, vous pouvez implémenter une factorielle, qui est un entier positif multiplié par le produit de tous ses plus petits entiers positifs, et une séquence de Fibonacci, qui est une séquence dans laquelle chaque nombre est la somme des deux nombres précédents.

C++ 函数递归详解:递归实现阶乘和斐波那契数列

Explication détaillée de la récursion de fonction C++ : Implémentation récursive de séquences factorielles et de Fibonacci

Introduction

La récursion est une technique de programmation qui permet aux fonctions de s'appeler pour résoudre des problèmes. Les fonctions récursives sont généralement divisées en deux parties : les conditions de base et les appels récursifs.

Implémentation récursive de factorielle

Factorial est le produit d'un entier positif multiplié par tous ses plus petits entiers positifs. Par exemple, la factorielle de 5 est égale à 5 x 4 x 3 x 2 x 1 = 120.

int阶乘(int n) {
  if (n == 0) {  // 基线条件
    return 1;
  } else {
    return n * 阶乘(n - 1);  // 递归调用
  }
}

Cas pratique : Calculer la factorielle de 10

int result = 阶乘(10);
cout << "10 的阶乘为 " << result << endl;

Sortie :

10 的阶乘为 3628800

Implémentation récursive de la séquence de Fibonacci

La séquence de Fibonacci est une séquence dans laquelle chaque nombre est la somme des deux nombres précédents. La séquence commence par 0 et 1.

int斐波那契(int n) {
  if (n == 0) {  // 基线条件
    return 0;
  } else if (n == 1) {
    return 1;
  } else {
    return 斐波那契(n - 1) + 斐波那契(n - 2);  // 递归调用
  }
}

Cas pratique : Imprimer les 10 premiers nombres de la séquence de Fibonacci

for (int i = 0; i < 10; i++) {
  cout << 斐波那契(i) << " ";
}

Sortie :

0 1 1 2 3 5 8 13 21 34

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn