• logo categorie
    RESOLU

    La récursivité en C


    Salut à tous,

    Je programme en C et je connais bien les boucles maintenant, mais j'ai entendu parler de récursivité et j'aimerais bien comprendre l'idée et voir comment ça marche.

    Merci !
    C et C++
    Programmation en C
    Récursivité
    utilisateur
    Salomon
    Posté le : 16 Août à 15:32
    42 372 vues

  • 28
    Carlos
    Posté le : 16 Août à 16:29
    La différence entre l'utilisation de boucle ou d'une récursivité est surtout une façon de penser son programme. Il est vrai que parfois, il est peut-être préférable d'utiliser l'une ou l'autre, ça dépend de l'utilisation.
    Sinon, le principe de la récursivité est que la fonction récursive se rappelle elle-même jusqu'à ce qu'une condition de sortie arrête le processus. Je t'ai concocté un petit exemple avec la fonction factorielle, une de manière itérative et l'autre récursive.

    Fonction Factorielle - Itérative

    int facto(int nb)
    {
    int i;
    int result;

    i = 1;
    result = i;
    while (i <= nb)
    {
    result *= i;
    i = i + 1;
    }
    return (result);
    }

    Fonction Factorielle - Récursive

    int facto_rec(int nb)
    {
    int result;

    if (nb == 1 || nb == 0)
    return (1);
    else
    {
    result = nb * facto_rec(nb - 1);
    return (result);
    }
    }

    Ce qui est bien avec de la récursivité, c'est qu'on peut gagner quelques lignes mais les boucles restent une méthode assez claire et peut-être plus facilement compréhensible.
  • ⇒ Si vous êtes ici c'est que le sujet vous intéresse ^^
    Inscrivez-vous sur Oyant, apportez votre contribution sur ce sujet et gagnez de l'argent :

    Inscription
    Répondre
  • logo categorie
    RESOLU

    Date de la mort de Jeanne d'Arc ?

    Hello,
    A quel âge Jeanne D'Arc est-elle morte s'il vous plaît ?
    Célébrités
    Histoire
    Jeanne d'arc
    mort
  • logo categorie

    Renverser l'ordre de mon texte

    Salut
    J'ai besoin de renverser l'ordre de mon texte. Quelle fonction utiliser?
    PHP
    PHP
    Ordre
    Renverser
    Texte
  • logo categorie
    RESOLU

    Supprimer tous les signes backslash de mon texte

    Bonjour
    Besoin de supprimer tous les signes backslash de mon texte?
    Merci.
    PHP
    PHP
    Backslash
    Texte
  • logo categorie
    RESOLU

    Qui a dit "Bouter les Anglais hors de France" ?

    Hello,
    Qui a dit cette phrase svp ?
    Histoire
    phrase
    citation
  • logo categorie

    La fonction rawurlencode(URL texte)

    Bonjour
    En quel cas je peux utiliser la fonction rawurlencode(URL texte)?
    PHP
    PHP
    Fonction
    Rawurlencode(URL texte)
  • logo categorie
    RESOLU

    Combien de temps a duré la guerre de cent ans ?

    Salut, salut
    Combien de temps a duré la guerre de cent ans s'il vous plaît ?
    Merci
    Histoire
    guerre
    guerre de cent ans
  • logo categorie

    La fonction rawurldecode(URL)

    Bonjour
    A quoi sert la fonction rawurldecode(URL)?
    Merci d'avance.

    PHP
    PHP
    Fonction
    Rawurldecode(URL)
  • logo categorie
    RESOLU

    Qui a assassiné Henry IV ?

    Salut,

    Qui a assassiné Henry IV s'il vous plaît ?
    Histoire
    assassinat
    Henry IV
  • logo categorie

    La fonction quotemeta(texte)

    Bonjour
    Comment fonctionne la fonction quotemeta(texte)?
    Merci d'avance.
    PHP
    PHP
    Fonction
    Quotemeta(texte)
  • logo categorie
    RESOLU

    Combien y a-t-il eu de mort par la peste ?

    Hello!
    Lors de l'épidémie de peste entre 1347 et 1352 combien y a-t-il eu de morts s'il vous plaît ?
    Culture générale
    Histoire
    peste
    épidémie
  • logo categorie

    La fonction parse_url(requête)

    Bonjour
    Comment utiliser la fonction parse_url(requête)?
    PHP
    PHP
    Fonction
    Parse_url(requête)
  • logo categorie

    Caractère ASCII en C

    Bien le bonjour,

    J'aimerais savoir comment connaître le code ASCII d'un caractère en C svp...
    C et C++
    Programmation C
    ASCII
  • logo categorie
    RESOLU

    Quel est le vrai prénom de Voltaire ?

    Salut !
    Quel est le vrai nom de Voltaire s'il vous plaît ?
    Culture
    Célébrités
    Histoire
    voltaire
  • logo categorie
    RESOLU

    Le code ASCII d'un caractère

    salut
    J'ai besoin d'une fonction qui retourne le code ASCII d'un caractère donné.
    PHP
    PHP
    ASCII
    Caractère
    Fonction
  • logo categorie
    RESOLU

    La fonction newline_to_br(texte).

    Bonjour
    En quel cas je peux utiliser la fonction newline_to_br(texte)?
    PHP
    Fonction
    PHP
    Newline_to_br(texte)
  • logo categorie

    La fonction ltrim(texte)

    Bonjour
    A quoi sert la fonction ltrim(texte)?
    PHP
    Fonction
    PHP
    ltrim(texte)
  • logo categorie
    RESOLU

    La fonction htmlentities(texte)

    Bonjour
    Comment fonctionne la fonction htmlentities(texte)?
    PHP
    PHP
    Fonction
    htmlentities(texte)
  • logo categorie
    RESOLU

    Supprimer les slashs d'un chemin d'accès

    Salut
    Si j'ai besoin de supprimer les slashs d'un chemin d'accès, qu'est-ce que vous me conseillez?
    PHP
    PHP
    Slash
    Fonction
  • logo categorie
    RESOLU

    Une fonction pour avoir un caractère à partir d'un code ASCII

    Bonjour
    S'il vous plait, une fonction pour avoir un caractère à partir d'un code ASCII?
    PHP
    Fonction
    Caractère
    ASCII
    PHP
  • logo categorie

    Supprimer les espaces d'une chaine de caractère.

    Bonjour
    J'ai besoin de supprimer les espaces d'une chaine de caractère?
    PHP
    PHP
    Fonction
    Chaine de caractère
    Espace
  • Veuillez vous connecter pour profiter pleinement de toutes les fonctionnalités de Oyant.
    Connexion
    Inscription

    Poster une question

    AnimauxApplicationsArnaquesAutres langagesBases de donnéesBeauté et ModeC et C++Cartes de voeux, lettres, poèmes et discoursCMS (Système de gestion de contenu)CollectionCuisineCultureDémarches administrativesDivertissementDotnetDroitEmploiEmploi et études en informatiqueEnseignementEntrepriseEnvironnementEvénementsFinanceGénéral développementImmobilier, logement et urbanisme    JavaLanguesLogicielsMétiersNouvelles technologiesPHPPrestations socialesRéservé aux adultesSantéSportSystèmesTransportsVie pratiqueWebmasters - Développement web 3.028 Utlisateurs parcourent Oyant en ce moment