récursivité est l'une des idées les plus puissants de toute la science informatique. Souvent considéré comme une approche «diviser pour mieux régner " pour résoudre les problèmes , la récursivité vous permet de résoudre un problème en résolvant une ou plusieurs versions «petits» du même problème , et puis en faisant une petite quantité de travail supplémentaire ou de la combinaison . De cette façon , de nombreux problèmes très complexes peuvent être résolus par des algorithmes incroyablement élégant. Choses que vous devez
Microsoft Visual Basic
Voir Plus Instructions
1
créer une nouvelle fonction Visual Basic. Par exemple: .
Fonction PGCD ( ByVal x As Integer , ByVal y as Integer ) Comme IntegerEnd Fonction:
Cette fonction permet de calculer le plus grand commun diviseur de deux nombres
2
Ajouter un test entre la fonction et les lignes de fonction Fin de distinguer le «scénario de base » et le « cas récursif. " Cas de base sont très importants dans les fonctions récursives - sans, votre code sera généralement provoquer une boucle infinie et probablement planter votre programme. Par exemple, le cas de base pour la fonction " GCD " ressemble à ceci:
Si y = 0 Then ' Ce sera le caseElse de base » Ce sera le caseEnd récursive Si
< br > 3
Ajoutez un scénario de base . C'est la valeur que votre fonction retourne quand il rencontre un problème si petit qu'il ne peut pas décomposer davantage. Pour la fonction " GCD " , il ressemble à ceci :
retour x
4
Ajoutez un cas récursif. Lorsque vous récurrents de fonction , il se invoque un problème simple qui l'aidera à résoudre le problème plus grave. Dans le cas de la fonction " pgcd " , le problème plus simple est choisie pour que son résultat est en fait le résultat de l'ensemble du problème complexe . Il ressemble à ceci :
Retour PGCD (y, x Mod y)
5
Testez votre fonction . Il est toujours important de tester les fonctions récursives utilisant le scénario de base et certains cas récursifs comme entrée. Essayez de penser à des tests qui pourraient être en dehors de la norme , comme les nombres négatifs.