Algorithme d'une suite

infoboy Messages postés 3 Statut Membre -  
oh9007 Messages postés 49 Statut Membre -
Bonjour,
qui peut m'aider à trouver la solution de cet exercice je sais que c'est simple mais je ne l'ai pas bien compris en tout cas voici l'énoncé:
Epsilon égale à la somme suivante : E= X0/0! + X1/1! + X2/2! + X3/3! + ..... +XN/N!
On se propose d'écrire un algorithme qui permet de calculer et d'afficher E, sachant que X et N deux entiers naturels non nuls donnés.
NB : On demande de décomposer le programme en sous-programmes élémentaires et simples.
-------------
Merci pour votre aide
Configuration: Windows XP
Firefox 3.0.5

2 réponses

  1. loupius
     
    Je ne vais pas de donner la solution car c'est trop simple.
    On peut écrire la formule ainsi:
    E = somme (de 0 à l'infini) x^n / n!
    ...
    Il suffit donc de faire simplement un boucle de 0 à l'infini ( ;-) ) et de sommer la valeur: x^n / n!
    Tu t'apercevras alors que E n'est autre que e (eh oui ce n'est pas epsilon!).
    Bon courage.
    0
  2. oh9007 Messages postés 49 Statut Membre 3
     
    E= X0/0! + X1/1! + X2/2! + X3/3! + ..... +XN/N!
    calcule facto!!
    fact:=1;
    pour i:=1 à n fair
    fact:=fact* i,

    calcule expo
    exp:=1;
    pour i:=1 à n fair
    exp:=exp*x;

    algorithmme calcule;

    var n,fact,exp,i,x :entier; e:reel;
    debut
    lire(n); lire(x);
    fact:=1; exp:=1; e:=1;
    pour i:=1 à n fair
    fact:=fact* i ;
    exp:=exp*x;
    e:=e+(exp/fact);
    fair;
    ecrir(e);
    fin.

    program calcule;
    uses wincrt;
    var n,fact,exp,i,x :integer; e:real;
    begin
    writeln('donner la val de n');
    readln(n);
    writeln('donner la val de x');
    readln(x);
    e:=1; fact:=1; exp:=1;
    for i:=1 to n do
    begin
    fact:=fact* i ;
    exp:=exp*x;
    e:=e+(exp/fact);
    end;
    writeln('E= ',e:2:2);
    readln;readln;
    end.
    0