AUTRE TD
Exemple : ÉNONCE 1 :
Écrire une FONCTION qui permet de calculer la somme des n premiers nombres
en utilisant une boucle FOR ;
en utilisant la récursivité ;
en utilisant une formule: 1+2+......+n=n (n+1)/2.
Exemple : SOLUTION avec la boucle FOR
FONCTION SOMME_PREMIER_NB( n :ENTIER) : ENTIER
VAR i, S : ENTIER
DEBUT
S 0
FOR i DE 1 A n
FAIRE
S S + i
FINPOUR
RETOURNER (S)
FIN
Exemple : SOLUTION en utilisant la récursivité
PRINCIPE : si n =0 alors S(n)=0 sinon S(n)=n+S(n-1)
On suppose que n est un entier positif !
FONCTION « somme_recursif »
(n : ENTIER) : ENTIER
DEBUT
SI (n=0)
ALORS RETOURNER (0)
SINON RETOURNER( n + somme_recursif(n-1))
FINSI
FIN
Exemple : SOLUTION en Utilisant une formule
PRINCIPE : S(n)=(n*(n+1))/2
On suppose que n est un entier positif
FONCTION SOMME_Formule(n : ENTIER) : ENTIER
DEBUT
RETOURNER(n*(n+1)/2)
FIN