Académique Documents
Professionnel Documents
Culture Documents
Correction
Exercice 1 :
1- La procédure EMP1 est à récursivité non terminale, par contre la procédure EMP2 est
récursive terminale.
2- Déroulement de EMP1(5)
EMP1(5)
Déroulement de EMP2(5)
IMP2(5)
EXERCICE 2
Fonction f(a, b : entier) : entier ;
Début
Si b=1 alors
Retourner (a)
Sinon
Retourner (a + f(a, f(a, b‐1))
Fsi
Fin
EXERCICE 3
On a l’identité remarquable (n+1)2 = n2+2n+1, elle nous donne le carré de n+1 en fonction du
carré de n.
Pour écrire une fonction récursive qui donne le carré de n, on doit avoir une équation donnant
le carré de n en fonction du carré de n-1. L’identité remarquable donnée est valable ∀n≥0, en
remplaçant n par n-1 l’équation reste valable ∀n˃0 .
En remplaçant on obtient :
(n-1+1)2 = (n-1)2+2n+1 ce qui donne
(n)2 = (n-1)2+2n-1 ce qui donne le carré de n en fonction du carré de n-1
EXERCICE 4
𝐶 𝐶 𝐶 avec n˃1 , n≥p et 𝐶 𝐶 1
Cette égalité ne s’apprête pas à une écriture d’une fonction récursive
On peut donc la transformer comme suit 𝐶 𝐶 𝐶
Déroulement C(6, 2)
C(6, 2)= 15
15
C(5,2) + C(5, 1)
10 5
C(4,2) + C(4, 1) C(4,1) + C(4, 0)
6 4 4
=1 2 2 =1 2 =1 2 =1
=1 =1 =1 =1 =1 =1 =1 =1
UMMTO
FGEI Dep- Informatique Année -2023-24
L2-ALGO3-STD
Série de TD N°1
EXERCICE 5
1. C’est l’équivalent de
Exp (x, 0) =1
Exp (x, n) = Exp (x, n-1)*x pour x > 0
2.
Fonction Exp2 ( x : entier, n : entier) : entier ;
Debut
Si n˂0 alors écrire (‘la fonction ne fait pas de puissance négative’)
Sinon
Si n = 0 alors retourner (1)
Sinon
Si (n Mod 2= 0) alors
Retourner (Exp2(x*x, n div 2))
sinon
Retourner (Exp2(x*x, (n‐1) Div 2)*x)
Fsi
Fsi
Fsi
Fin
EXERCICE 6
1- Il s’agit d’une récursivité non terminale.
Déroulement pour n=213 :
Toto(213) =14
14
3*3+Toto(21)
5
1*1+ Toto(2)
4
=2*2=4
2- La fonction calcule la somme 2*2+1*1+3*3 pour n=213, donc elle calcule la somme des carrés des
chiffres du nombre n.
UMMTO
FGEI Dep- Informatique Année -2023-24
L2-ALGO3-STD
Série de TD N°1
EXERCICE 7
Fonction fact (n : entier) :entier ;
début
si n=0 alors
retourner (1)
sinon
retourner (n*fact(n‐1))
fsi
fin
Dans ce genre d’algorithme, aucun calcul n’est fait à la remontée, ce qui entraîne un gain de
temps.