Exercice algorithme corrigé les chaînes

 Exercice 1 

Fonction Longueur (chaine : Tchaine) : entier

Var i : entier

Début

iÍ0

Tant que chaine[ i ] != END faire iÍ i+1

Retourner (i)

Fin

Fonction de copie : première méthode :

Fonction Copier (E : src : Tchaine, S : dest : Tchaine)

Var i, Lsrc : entier

Début

LsrcÍLongueur(src)

Pour i de 0 à Lsrc faire dest[ i ]Ísrc [ i ]

Fin

Fonction de copie : deuxième méthode : plus optimisée :

Fonction CopieOptimisée (E : src : Tchaine, S : dest : Tchaine)

Var i : entier

Début

iÍ0

tant que src[ i ] != END faire

dest [ i ] Í src [ i ]

i Í i+1

dest [ i ] Í src [ i] {pour copier en fin de fichier la sentinelle}

Fin

Exercice 2 

Début

iÍ0

LsrcÍLongueur (src1)

Tant que src2 [ i ] != END

Src1[ Lsrc1+i]Í src2[ i ]

iÍi+1

src1[Lsrc1+i]Ísrc2[ i ]

Fin

Pour faire la fonction comparer, il faut d’abord créer une fonction qui compare les

caractères :

Fonction ComparerChar (char a, char b)

Début

Si a

Si a=b retourner (0)

Si a>b retourner (1)

Fin

On peut maintenant faire la fonction de comparaison de chaînes de caractères qui utilisera la

fonction ComparerChar :

Fonction Comparer (E : src1 : Tchaine, E : src2 : Tchaine)

Var i, L1, L2, cmp : entiers

Début

L1ÍLongueur (src1)

L2ÍLongueur (src2)

IÍ0

Tant que (i

Si i=L1 ou i=L2 alors

Si i

Sinon

Si i

Sinon cmpÍ0

Sinon cmpÍComparerChar(src1[ i ], src2 [ i ])

Retourner (cmp)

Fin

Fonction Effacer (ES : src : Tchaine, E : indice : entier, E : lg : entier)

Var i, Lsrc : entiers

Début

LsrcÍLongueur (src)

Pour i de indice+lg à Lsrc faire

Src[i-lg]Ísrc[ i ]

Fin

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *