Inscription / Connexion Nouveau Sujet
Niveau maths spé
Partager :

fonction récursive des sommes

Posté par
yaw83
04-02-12 à 09:08

Bonjour,

Voila! notre professeur nous a demandé d'écrire une procédure ou fonction somme(n,p) récursive permettant de calculer la somme des premières puissances i.e

voici la somme:
s_p(n)=\frac{1}{p+1}((n+1)^{p+1}-1-\sum_{j=0}^{p-1}\begin{pmatrix}{p+1}\\j\end{pmatrix} s_j(n))

j'ai cherché pendant toute la journée aboutissant à rien.

je serai heureux si quelqu'un pouvait m'aider merci.

Posté par
carpediem
re : fonction récursive des sommes 04-02-12 à 12:20

salut


fonction somme(n,p : entier);

s = [(n + 1)p+1 - 1 - S(p)]/(p + 1)

fin

fonction S(p : entier);

S = 0;
j = 0;

tant que j < p faire

S = S + C(j,p+1)somme(n,j)

fin;

fin;

début

entrée n,p;
afficher somme(n,p);
fin


en fait il y a une "double récursivité" mais cet algorithme devrait convenir

Posté par
carpediem
re : fonction récursive des sommes 04-02-12 à 12:22

les fonctions somme et S sont récursives et "s'entremelent" mais les langages d'aujourd'hui permettent cela ....ce me semble-t-il ...

Posté par
jandri Correcteur
re : fonction récursive des sommes 04-02-12 à 12:38

Bonjour,

écrire une procédure récursive consiste simplement à recopier la formule de récurrence.

Avec Maple:
somme:=proc(p)
local j:
if p=0 then n else ((n+1)^(p+1)-1-add(binomial(p+1,j)*somme(j),j=0..p-1))/(p+1) end if end:

n est une variable formelle
binomial désigne le coefficient binomial
il ne faut pas oublier l'initialisation: si p=0 alors le résultat est n.

On peut ensuite factoriser (avec factor) ou bien développer (avec expand).

exemple: factor(somme(3)); donne n^2(n + 1)^2/4

Posté par
carpediem
re : fonction récursive des sommes 04-02-12 à 12:52

oui j'étais allé à l'essentiel sans détailler les conditions limites

oui n est une variable formelle si on veut

je pensais qu'il fallait donner une valeur numérique .... mais c'est vrai que n n'intervient pas : c'est comme une constante dans la procédure .... donc on veut !!!! (sans le "si") ...



en fait ton exemple est le carré de la somme des n premiers termes ....

que se passe-t-il pour d'autres p ?

Posté par
jandri Correcteur
re : fonction récursive des sommes 04-02-12 à 13:16

Pour n=4:

factor(somme(4)); donne n (2 n + 1) (n + 1) (3 n^2 + 3 n - 1)/ 30

expand(somme(4)); donne 1/5 n^5 + 1/2 n^4 + 1/3 n^3 - 1/30 n

Posté par
yaw83
merci 04-02-12 à 13:48

ok merci pour ta réponse carpediem et aussi jandri .

C'est ce que je pensais une double récursivité.

Bon je vais de suite tester chaque algoritmes mais en php.
merci et à toute.

Posté par
carpediem
re : fonction récursive des sommes 04-02-12 à 16:28

ha tiens on reconnait la somme des carrés des n premiers entiers pour somme(4) ....

Posté par
carpediem
re : fonction récursive des sommes 04-02-12 à 16:28

à un coefficient près ....

Posté par
jandri Correcteur
re : fonction récursive des sommes 04-02-12 à 18:06

On peut montrer que s_p(n) est un polynôme en n de degré p+1 qui admet 0 et -1 comme racines.
De plus:
si p est impair p\geq3 alors 0 et -1 sont racines doubles.
si p est pair p\geq2 alors -\dfrac12 est également racine.

Posté par
carpediem
re : fonction récursive des sommes 04-02-12 à 20:38

merci pour ces info jandri



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1768 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !