Corrigé C20. Enoncé
Exercice 1 : tri par insertion
ALGORITHME Tri
VAR I, K, L, A : ENTIER
T : TABLEAU[1..N] DE ENTIER
DEBUT
LIRE( T)
POUR I = 2, N
A := T(I)
K := 1 ; Trouv := FAUX
TANTQUE K < I ET NON
Trouv :
SI A <= T(K) :
Trouv := VRAI
SINON
K := K + 1
FSI
FINTANTQUE
SI Trouv :
POUR L := I, K+1, -1 :
T(L) := T(L-1)
FINPOUR
T(K) := A
FSI
FINPOUR
FIN
Exercice 2 : Représentations des polynômes
(I) Représentations :
Première représentation :
Le degré est l'indice et l'élément représente le coefficient.
TYPE Polynome = TABLEAU [0..N] DE ENTIER
Deuxième représentation :
TYPE Polynome = STRUCTURE
Nbre : ENTIER
Tab : TABLEAU(40..2) DE
REEL
FIN
(Ii) Ecriture des modules :
Première représentation :
Module Point
FONCTION Point( P, V) : REEL
VAR T : Polynome
V : REEL
I : ENTIER
DEBUT
Point := 0
POUR I= 0, N :
Point := Point + I * (
X ** T(I))
FINPOUR
FIN
Module Dérivée
ACTION Dérivé( P, R)
VAR P, R
: Polynome
I, K, Coef : ENTIER
DEBUT
POUR I= 0, N-1 :
R(I) := P(I+1) * (I+1)
FINPOUR
FIN
Deuxième représentation :
Module Point
FONCTION Point( P, V) : REEL
VAR P : Polynome
V : REEL
I : ENTIER
DEBUT
Point := 0
POUR I=1, P.Nbre :
Point := Point +
(P.Tab(I, 1) * ( V ** P.Tab(I, 2) ))
FINPOUR
FIN
Module dérivée
ACTION Dérivé( P, V)
VAR P, R
: Polynome
I, K, COEF : ENTIER
DEBUT
K := 0
POUR I=1, P.Nbre :
Coef := P.Tab(I, 1) *
P.Tab(I, 2)
SI Coef # 0 :
K := K + 1
R.Tab(K, 1) := Coef
R.Tab(K, 2) := P.Tab(I, 2) - 1
FSI
FINPOUR
R.Nbre := K
FIN
(Iii) Calcul de p(x) en utilisant la factorisation de Horner
Deuxième représentation :
S := T(1)*X + T(2)
POUR I =2, Nbr -1 :
S := (S * X) + T(I+1)
FINPOUR