Récursivité - calcul de somme

Voir le sujet précédent Voir le sujet suivant Aller en bas

Récursivité - calcul de somme

Message  Hanafi le Ven 29 Mai - 22:14

Calculer la somme suivante à l'aide de récursivité :
avatar
Hanafi

Messages : 106
Date d'inscription : 25/10/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

re fonction somme

Message  Saafi RAMI le Dim 31 Mai - 0:51

Salut Mme
Est ce que c'est possible avec 2n-2 ,, ??
avatar
Saafi RAMI

Messages : 37
Date d'inscription : 16/10/2008
Age : 27

Voir le profil de l'utilisateur http://www.imraude.skyrock.com

Revenir en haut Aller en bas

Re: Récursivité - calcul de somme

Message  Hanafi le Dim 31 Mai - 1:12

Oui, Rami, c'est possible. Si n=5 on va calculer la somme jusqu'à 8 : S=1+a^2/cos(2*a)+a^4/cos(4*a)+a^6/cos(6*a)+a^8/cos(8*a).
C.a.d n*2-2=5*2-2=8
Il faut faire une fonction récursive Puissance et une autre fonction récursive Somme. Le programme principal doit lire a et n et afficher le résultat en appelant une fonction Somme.
Essayez de le faire, c'est interessant. Very Happy
avatar
Hanafi

Messages : 106
Date d'inscription : 25/10/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Essai

Message  Saafi RAMI le Dim 31 Mai - 1:56

fonction Calcul_somme(a,n,i:integer):reel

si i<=n alors

Calcul_somme=((a puis 2i-2)/cos((2i-2)*a) + Calcul_somme(a,n,i+1)
fin si
Calcul_somme (a,n,1)

fin Calcul_somme
avatar
Saafi RAMI

Messages : 37
Date d'inscription : 16/10/2008
Age : 27

Voir le profil de l'utilisateur http://www.imraude.skyrock.com

Revenir en haut Aller en bas

Re: Récursivité - calcul de somme

Message  Hanafi le Dim 31 Mai - 3:42

Somme=[ ]
Si i>2n-2 Alors
Somme=1
Sinon
Somme=(Puissance (a,i)/Cos (i*a))+Somme (a,n,i+2)
Finsi

L'appel Recursif :
Somme (a,n,2)

Voici le programme :

program ex;
uses wincrt;
var a,n:integer;

function puis(x,y:integer):longint;
begin
if y=0 then
puis:=1
else
puis:=puis(x,y-1)*x;
end;

function somme(a,n,i:integer):real;
begin
if i>2*n-2 then
somme:=1
else
somme:=somme(a,n,i+2)+puis(a,i)/cos(i*a);
end;
begin
write('Donner a ');
readln(a);
write('Donner n ');
readln(n);
write('Somme=',somme(a,n,2));
end.
Bonne révision sunny
avatar
Hanafi

Messages : 106
Date d'inscription : 25/10/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Récursivité bien aimé (:

Message  Hanafi le Mer 3 Juin - 18:26

Écrire une fonction récursive permettant de trouver
p+(p+1)+(p+2)+…+(p+n)
avec 0<p<1 et n>1
avatar
Hanafi

Messages : 106
Date d'inscription : 25/10/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Récursivité bien aimé (:

Message  Youssef LABIDI le Mer 3 Juin - 22:12

fonction calcul(p:reel;n:entier):reel
si n<1 alors
calcul :=p
sinon
calcul:=p+calcul(p,n-1) No
fin calcul

Point d'arrêt : Si n = 0 Alors calcul <- p
Cas général : s <- calcul(p, n - 1)
calcul <- s + n + p

0) début fonction calcul(p:reel; n:entier):reel
1) si n=0 Alors
calcul <-p
sinon
s <- calcul(p, n-1)
calcul <- s+n+p
Finsi
2) fin calcul

sunny
ya3tik sa7a Yossef
Bonne chance pour demain

Youssef LABIDI

Messages : 5
Date d'inscription : 16/11/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Récursivité - calcul de somme

Message  Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum