| maison  | Hardware  | réseaux  | programmation  | Logiciel  | Dépannage  | systèmes |  
programmation  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Connaissances Informatiques >> programmation >> Computer Programming Languages >> Content
    Qu'est-ce que la récursivité dans Programmation
    Dans la programmation informatique , la récursivité se produit quand une fonction ou une procédure - en d'autres termes , une séquence d' instructions pour effectuer une fonction particulière - se nomme , directement ou indirectement ? . La fonction ou une procédure modifie la valeur du paramètre (s) qui lui est passé pour la première fois , il est appelé et se qualifie avec la nouvelle valeur (s) . Factorielles

    L'exemple classique de la récursivité des factorielles informatiques. Une factorielle est le produit d'un nombre entier positif donné, multipliée par tous les nombres entiers inférieurs . La factorielle de 5 est 5 * 4 * 3 * 2 * 1, la factorielle de 4 est 4 * 3 * 2 * 1 et ainsi de suite . La factorielle d'un nombre est égal à ce nombre multiplié par la factorielle du nombre immédiatement inférieur . En d'autres termes , factorielle ( 5) est le même que 5 * factorielle ( 4) , factorielle ( 4) est le même que 4 * factorielle ( 3) et ainsi de suite , donc une fonction factorielle simple pourrait être écrit comme :

    int factorielle (int n) {return n * factorielle ( n - 1) ;}
    cas de base

    Le problème avec cette fonction simple, cependant , c'est qu'il n'a pas de scénario de base , ou une condition de lui dire quand arrêter . À l'heure actuelle , la fonction va continuer à se faire appeler lorsque n atteint zéro et au-delà dans les nombres négatifs , revenant factorielles absurdes . En réalité, une fonction factorielle doit cesser lorsque n = 1, donc une vraie fonction factorielle peut être écrite comme :

    int factorielle (int n) {if ( n == 1) { return 1; } else {return n * factorielle ( n - 1 );}}

    En anglais, la fonction examine le nombre qui lui est passé en paramètre, et , si le nombre est 1, renvoie 1. Sinon, la fonction retourne le nombre multiplié par la factorielle du nombre moins un.
    Programme Stack

    Tous les programmes récursifs doivent avoir un point bas , ou la base cas où l'opération est si trivial que la réponse peut être renvoyée directement . La récursivité fonctionne par l'addition, ou de poussée , et en supprimant , ou sauter, des trames individuelles à et à partir d'une structure de données appelée une pile de programme . Il ya seulement une quantité limitée d'espace sur la pile du programme , de sorte que , sans un scénario de base , un programme récursif serait tout simplement continue en cours d'exécution jusqu'à ce que la pile a débordé.
    Pros
    < br >

    récursivité est difficile à comprendre, car il n'est pas intuitive et peut apparaître , à première vue, d'impliquer logique circulaire ou faux. Selon IBM , la récursivité est rarement utilisé par les programmeurs des langages de programmation impératifs - qui ne précisent pas explicitement une séquence d'étapes à exécuter - parce qu'ils pensent qu'elle est lente et une perte d'espace . Toutefois, si elles sont appliquées correctement , la récursivité est une technique de programmation puissant qui peut simplifier certaines tâches de programmation.

    Previous :

    next :
      articles connexes
    ·Les différences entre les liens et Rollover Buttons 
    ·Comment fusionner des fichiers plats 
    ·La différence entre un objet passif et un objet Active…
    ·Comment faire pour créer un ID dans le comte 
    ·Comment faire pour mettre un retard dans le Shell Scrip…
    ·Comment lier DataTable à ListView dans Net 
    ·Comment changer SRC de l'image dans jQuery 
    ·Outils utilisés dans le développement de logiciels 
    ·Différences entre High Level et de bas niveau Langages…
    ·Comment faire Quitter Splash en PHP 
      articles en vedette
    ·Comment créer un tableau multidimensionnel dans Ruby 
    ·Comment compiler un fichier SWF dans FlashDevelop 
    ·Comment faire une majuscule à cordes utilisant Python 
    ·Comment calculer les frais généraux Switch 
    ·Comment écrire un algorithme de l'ordonnance n Lgn pou…
    ·Comment lier des données à une zone de texte en VB 
    ·Principes de base de Visual Basic 
    ·Comment utiliser un complément à deux dans un décala…
    ·Comment: PHP MySQL évasion HTML pour Insert 
    ·Comment faire pour convertir un incorrect PHP Date 
    Copyright © Connaissances Informatiques http://fr.wingwit.com