Calculer la somme de la série des inverses

C++C++Beginner
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, nous allons apprendre à écrire un programme C++ qui calcule la somme d'une série. La série avec laquelle nous allons travailler est la somme des carrés des inverses des nombres naturels. En termes simples, le programme calcule la somme de 1 + 1/2^2 + 1/3^3 + 1/4^4 +... + 1/N^N.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL cpp(("C++")) -.-> cpp/FunctionsGroup(["Functions"]) cpp(("C++")) -.-> cpp/IOandFileHandlingGroup(["I/O and File Handling"]) cpp(("C++")) -.-> cpp/StandardLibraryGroup(["Standard Library"]) cpp(("C++")) -.-> cpp/SyntaxandStyleGroup(["Syntax and Style"]) cpp(("C++")) -.-> cpp/BasicsGroup(["Basics"]) cpp(("C++")) -.-> cpp/ControlFlowGroup(["Control Flow"]) cpp/BasicsGroup -.-> cpp/variables("Variables") cpp/BasicsGroup -.-> cpp/data_types("Data Types") cpp/ControlFlowGroup -.-> cpp/for_loop("For Loop") cpp/FunctionsGroup -.-> cpp/function_parameters("Function Parameters") cpp/IOandFileHandlingGroup -.-> cpp/output("Output") cpp/IOandFileHandlingGroup -.-> cpp/user_input("User Input") cpp/IOandFileHandlingGroup -.-> cpp/files("Files") cpp/StandardLibraryGroup -.-> cpp/math("Math") cpp/SyntaxandStyleGroup -.-> cpp/code_formatting("Code Formatting") subgraph Lab Skills cpp/variables -.-> lab-96193{{"Calculer la somme de la série des inverses"}} cpp/data_types -.-> lab-96193{{"Calculer la somme de la série des inverses"}} cpp/for_loop -.-> lab-96193{{"Calculer la somme de la série des inverses"}} cpp/function_parameters -.-> lab-96193{{"Calculer la somme de la série des inverses"}} cpp/output -.-> lab-96193{{"Calculer la somme de la série des inverses"}} cpp/user_input -.-> lab-96193{{"Calculer la somme de la série des inverses"}} cpp/files -.-> lab-96193{{"Calculer la somme de la série des inverses"}} cpp/math -.-> lab-96193{{"Calculer la somme de la série des inverses"}} cpp/code_formatting -.-> lab-96193{{"Calculer la somme de la série des inverses"}} end

Créer un nouveau fichier dans le répertoire du projet

Créez un nouveau fichier nommé main.cpp dans le répertoire de votre projet.

touch ~/projet/main.cpp

Ajouter les fichiers d'en-tête nécessaires

Ajoutez les fichiers d'en-tête nécessaires au programme. Dans ce programme, nous avons besoin des fichiers d'en-tête iostream et cmath.

#include<iostream>
#include<cmath>
using namespace std;

Écrire la fonction findsum()

Dans cette étape, nous allons définir la fonction findsum() qui sera utilisée pour calculer la somme de la série. Cette fonction prend la valeur de N en entrée et renvoie la somme de la série.

double findsum(int N) {
    double sum = 0;
    for(int i=1; i<=N; i++) {
        sum += pow((double)1/i,i);
    }
    return sum;
}

Dans le code ci-dessus, nous avons utilisé la fonction pow() du fichier d'en-tête <cmath> pour calculer la puissance de chaque terme. Nous utilisons également le type de données double pour obtenir des valeurs précises.

Écrire la fonction main()

Dans cette étape, nous allons écrire la fonction main() qui prendra l'entrée de l'utilisateur sous forme d'un entier N. Ensuite, nous appellerons la fonction findsum() pour calculer la somme de la série. Enfin, nous afficherons le résultat.

int main() {
    int N;
    cout << "Entrez la valeur de N : ";
    cin >> N;
    double sum = findsum(N);
    cout << "La somme de la série est : " << sum << endl;
    return 0;
}

Compiler et exécuter le programme

Enregistrez les modifications apportées au fichier main.cpp et exécutez la commande suivante dans votre terminal :

g++ main.cpp -o main &&./main

Après une compilation et une exécution réussies, le programme demandera à l'utilisateur d'entrer la valeur de N. Après avoir entré la valeur de N, le programme renverra la somme de la série.

Code complet du fichier main.cpp :

#include <iostream>
#include <cmath>

using namespace std;

double findsum(int N) {
    double sum = 0;
    for(int i=1; i<=N; i++) {
        sum += pow((double)1/i,i);
    }
    return sum;
}

int main() {
    int N;
    cout << "Entrez la valeur de N : ";
    cin >> N;
    double sum = findsum(N);
    cout << "La somme de la série est : " << sum << endl;
    return 0;
}

Sommaire

Dans ce laboratoire, nous avons appris à écrire un programme C++ qui calcule la somme d'une série. Nous avons utilisé une boucle pour parcourir tous les termes et les additionner pour obtenir la somme de la série. Nous avons également utilisé la fonction pow() pour calculer la puissance de chaque terme.