Académique Documents
Professionnel Documents
Culture Documents
1 2 3 4 5
1 2 3 4 5
2- On compare T[2]et T[3]on doit permuter
12 24 13 15 10
T
1 2 3 4 5
3- On compare T[3] et T[4]on ne doit pas permuter
12 24 13 15 10
T
1 2 3 4 5
4- On compare T[4] et T[5]on doit permuter
12 24 13 15 10
T
1 2 3 4 5
le tableau n’est pas encore trié, il faut refaire le même traitement jusqu’à
avoir un tableau trié
Décomposition :
On remarque que le
problème est composé des
taches suivantes:
- Saisir N
- Remplir T
- Trier T
- Afficher T
1 2 3 4 5
1- i=1 ; chercher la position du minimum (PMIN=5) Permuter T[1]et T[5]
T 12 24 15 13 10
1 2 3 4 5
2- i=2 ; chercher la position du minimum (PMIN=5) Permuter T[2]et T[5]
T 10 24 15 13 12
1 2 3 4 5
3- i=3 ; chercher la position du minimum (PMIN=4) Permuter T[3]et T[4]
T 10 12 15 13 24
1 2 3 4 5
4- i=4 ; chercher la position du minimum (PMIN=4) Rien faire
T 10 12 13 15 24
1 2 3 4 5
Le tableau T est trié
Décomposition :
On remarque que le problème
est composé des taches
suivantes:
- Saisir N
- Remplir T
- Trier T
- Afficher T
Analyse du programme principal :
Le programme principal, ainsi que les procédures Saisir, remplir, trier et
afficher seront les mêmes que ceux du tri à bulles
1 2 3 4 5
1- i=2 ; on remarque que T[2]>T[1] Rien faire
T 12 24 10 13 11
1 2 3 4 5
AUX 10
4 3 2 1
T 12 24 10 13 11
1 2 3 4 5
3- i=4 ; chercher la position du minimum (PMIN=4) Permuter T[3]et T[4]
AUX 13
3 2 1
T 10 12 24 13 11
1 2 3 4 5
4- i=5 ; chercher la position du minimum (PMIN=4) Rien faire
AUX 11
5 1
4 3 2
T 10 12 13 24 11
1 2 3 4 5
T devient alors :
T 10 11 12 13 24
1 2 3 4 5
Décomposition :
On remarque que le problème
est composé des taches
suivantes:
- Saisir N
- Remplir T
- Trier T
- Afficher T
Analyse du programme principal :
Le programme principal, ainsi que les procédures Saisir, remplir, trier et afficher
seront les mêmes que ceux du tri à bulles
2-Activité Ecrire une analyse modulaire pour remplir un tableau T par N réels (5≤N≤20)
et vérifie l’existence d’un entier X (saisi au clavier) dans T
Décomposition :
On remarque que le
problème est composé des
taches suivantes:
- Saisir N
- Remplir T
- Saisir X
- Chercher X dans T
- Afficher le résultat
RESULTAT=PROC AFFICHER(verif)
Verif FN CHERCHER(X,N,T)
PROC SAISIRX(X)
PROC REMPLIR(N,T)
PROC SAISIR(N)
FIN ACTIVITE
1 2 3 4 5
1- i=1 ; on remarque que T[1]<>X passer à la case suivante
X 10
T 12 24 10 13 11
1 2 3 4 5
2- i=2 ; on remarque que T[2]<>X passer à la case suivante
X 10
T 12 24 10 13 11
1 2 3 4 5
3- i=3 ; on remarque que T[3]=X X existe dans T
X 10
T 12 24 10 13 11
1 2 3 4 5
Analyse de la fonction CHERCHER :
DEF FN CHERCHER(X :REEL ;N :ENTIER ; T :TAB) :BOOLEEN
RESULTAT=CHERCHER
CHERCHER verif
[i0]
REPETER
ii+1
SI T[i]=X ALORS
VerifVRAI
SINON
VerifFAUX
FIN SI
JUSQU’A (VERIF=VRAI) OU (i=N)
FIN CHERCHER
Cours En Ligne Pour s’inscrire : www.TuniSchool.com Page 6 sur 8
Mohamed BOUDABBOUS Les algorithmes de TRI et de RECHERCHE Cours
Analyse de la fonction CHERCHER (2ème solution): Analyse de la fonction CHERCHER (3ème solution):
DEF FN CHERCHER(X :REEL ;N :ENTIER ; T :TAB) :BOOLEEN DEF FN CHERCHER(X :REEL ;N :ENTIER ; T :TAB) :BOOLEEN
RESULTAT=CHERCHER RESULTAT=CHERCHER
CHERCHER verif CHERCHER verif
[i0;VerifFaux] [i0]
REPETER REPETER
ii+1 ii+1
SI T[i]=X ALORS Verif T[i]=X
VerifVRAI JUSQU’A (VERIF) OU (i=N)
FIN SI FIN CHERCHER
JUSQU’A (VERIF) OU (i=N)
FIN CHERCHER
1 2 3 4 5
1- debut=1 ; fin=5 ; milieu=3
on remarque que X<T[milieu] chercher X dans la partie à gauche
X 14
T 10 14 21 25 30
1 2 3 4 5
X 14
T 10 14 21 25 30
1 2 3 4 5
Début FIN
milieu
X 14
T 10 14 21 25 30
1 2 3 4 5
Début
fin
milieu