You are on page 1of 4

TP d'Algorithme ESP Dpartement Gnie Informatique DUT 1

Nom:Mamadou Dione

Exercice 1: Acces k
Procedure Acces_element (L,tte,k;L,tte,elt):entier Debut %Prtraitement% p:typeelt i:entier liste_vide:fonction liste_vide:boolen %Traitement% si non(liste_vide(L,tte)) Alors tant que (L<>nil) Faire alloue(tte) si tete<>nil alors i0 repete eltp.info ii+1 jusqu' i=k fsi ftque Sinon

rien fsi Fin La fonction ci-dessous est utilise dans l'exercice 2: Fonction code(carac,n)

Debut %Pretraitement% i:entier %Traitement% i 1 Pour i de 1 long(carac) faire nsschaine(carac,i,1) Fpour coden Fin

Exercice 2: Recherce dichotomique


Procedure recherche(L,tte,nomrecherche) Debut %Prtraitement%
trouve:boolen longueur_liste:fonction longueur_liste:entier code:fonction Acces_element:procedure %On utilise la procdure Acces_element de l'exo1%
%pour acceder au milieu%

%Traitement% si L.lien<>nil Alors longlongueur_liste(L,tte)

milieulong/2 Acces_element(L,tte,milieu;L,tte,etudiant)
%La procedure Acces_element(L,tte,milieu;L,tte,etudiant) est utile ce niveau%

Letudiant.nom si code(L,n)=code(nomrecherche,n) Alors trouvevrai Sinon si code(L,n)<code(nomrecherche,n) Alors tte(long/2)+1 recherche (L,tte,nomrecherche) fsi si code(L,n)>code(nomrecherche,n) Alors milieu(long/2)+1 recherche(L,tte,nomrecherche) fsi Sinon Rien fsi Fin

Exercice 3: Concatnation
Procedure concatnation(L1,tte1,L2,tte2) Debut %Prtraitement% liste_vide:fonction

liste_vide:booln %Traitement% pc1tte1 pc2tte2 si non (liste_vide(L1,tte1)) Alors si non (liste_vide(L2,tte2)) Alors repete pc1pc1.lien jusqu' (pc1<>nil) pc1pc2.lien fsi Sinon Rien Fsi Fin

You might also like