Suite de Fibonacci en utilisant la récursivité

CCBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous allez apprendre à créer un programme C pour imprimer la suite de Fibonacci en utilisant la récursivité. Une suite de Fibonacci est définie comme une suite dans laquelle chaque nombre est la somme des deux nombres précédents, avec 1, 1 étant les deux premiers éléments de la série.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL c(("C")) -.-> c/FunctionsGroup(["Functions"]) c(("C")) -.-> c/FileHandlingGroup(["File Handling"]) c(("C")) -.-> c/UserInteractionGroup(["User Interaction"]) c/FunctionsGroup -.-> c/function_declaration("Function Declaration") c/FunctionsGroup -.-> c/recursion("Recursion") c/FileHandlingGroup -.-> c/create_files("Create Files") c/UserInteractionGroup -.-> c/user_input("User Input") c/UserInteractionGroup -.-> c/output("Output") subgraph Lab Skills c/function_declaration -.-> lab-123248{{"Suite de Fibonacci en utilisant la récursivité"}} c/recursion -.-> lab-123248{{"Suite de Fibonacci en utilisant la récursivité"}} c/create_files -.-> lab-123248{{"Suite de Fibonacci en utilisant la récursivité"}} c/user_input -.-> lab-123248{{"Suite de Fibonacci en utilisant la récursivité"}} c/output -.-> lab-123248{{"Suite de Fibonacci en utilisant la récursivité"}} end

Créez un nouveau fichier C

Créez un nouveau fichier C nommé main.c dans le répertoire ~/project/.

Incluez les bibliothèques nécessaires

Incluez la bibliothèque d'entrée/sortie standard nécessaire stdio.h.

#include<stdio.h>

Définissez la fonction printFibo

Définissez une fonction nommée printFibo avec un paramètre aj. Elle est utilisée pour imprimer la suite de Fibonacci.

void printFibo(int aj)
{
    static long int first = 0, second = 1, sum;
    if(aj > 1)
    {
        sum = first + second;
        first = second;
        second = sum;
        printf("%ld ", sum);
        printFibo(aj-1);    // appel récursif
    }
    else
    {
        // après les éléments, pour sauter une ligne
        printf("\n\n\n");
    }
}

Définissez la fonction main

Définissez la fonction principale. Demandez à l'utilisateur l'entrée pour le nombre total d'éléments dans la suite de Fibonacci, et passez-le à la fonction printFibo.

int main()
{
    printf("\n\n\t\tLabEx - Meilleur endroit pour apprendre\n\n\n");
    int k, n;
    long int i = 0, j = 1;
    printf("Entrez la longueur de la suite de Fibonacci : ");
    scanf("%d", &n);
    printf("\n\nLes %d premiers termes de la suite de Fibonacci sont :\n\n\n",n);
    printf("%d ", 1);
    printFibo(n);
    printf("\n\n\t\t\tCoder est amusant!\n\n\n");
    return 0;
}

Finalisez le code

Voici maintenant le programme complet pour imprimer la suite de Fibonacci en utilisant la récursivité :

#include<stdio.h>

// déclaration de la fonction
void printFibo(int);

int main()
{
    printf("\n\n\t\tLabEx - Meilleur endroit pour apprendre\n\n\n");
    int k, n;
    long int i = 0, j = 1;
    printf("Entrez la longueur de la suite de Fibonacci : ");
    scanf("%d", &n);
    printf("\n\nLes %d premiers termes de la suite de Fibonacci sont :\n\n\n",n);
    printf("%d ", 1);
    printFibo(n);
    printf("\n\n\t\t\tCoder est amusant!\n\n\n");
    return 0;
}

void printFibo(int aj)
{
    static long int first = 0, second = 1, sum;
    if(aj > 1)
    {
        sum = first + second;
        first = second;
        second = sum;
        printf("%ld ", sum);
        printFibo(aj-1);    // appel récursif
    }
    else
    {
        // après les éléments, pour sauter une ligne
        printf("\n\n\n");
    }
}

Sommaire

Dans ce laboratoire, vous avez appris à créer un programme C pour imprimer la suite de Fibonacci en utilisant la récursivité. Vous comprenez désormais le processus de définition de fonctions et d'utilisation de la récursivité pour itérer à travers la série nécessaire.