Exercices Algorithme

Exercice 5 Les Enregistrements Corrigé

Soit un enregistrement E défini par deux informations :

  • T un tableau d’entiers pouvant contenir au maximum 100 éléments;
  • N le nombre d’éléments du tableau T.

Soit une chaîne de caractères M, écrire une action paramétrée qui retourne un enregistrement de type E contenant toutes les positions de la chaîne ‘ab‘ dans la chaîne M.

Exemple :       M = ‘faabaababbaabrs’

Positions : 3 - 6 - 8 - 12 Nombre d’éléments : 4

Type TEnregistrement = Enregistrement
    T : Tableau[1..100] de Entier
    N : Entier
Fin

Fonction TrouverPositionsAB(M : Chaine) : TEnregistrement
    Déclarer E : TEnregistrement
    E.N ← 0

    Pour i de 1 à Longueur(M) - 1 faire
        Si (M[i] = 'a') et (M[i + 1] = 'b') Alors
            E.N ← E.N + 1
            E.T[E.N] ← i
        FinSi
    FinPour

    Retourner E
FinFonction

Début
    Déclarer M : Chaine
    Déclarer Resultat : TEnregistrement

    Ecrire("Entrer la chaîne de caractères M : ")
    Lire(M)

    Resultat ← TrouverPositionsAB(M)

    Ecrire("Positions : ")
    Pour i de 1 à Resultat.N faire
        Ecrire(Resultat.T[i])
    FinPour

    Ecrire("Nombre d'éléments : ", Resultat.N)
Fin

 

Ajouter un commentaire

Veuillez vous connecter pour ajouter un commentaire.

Pas encore de commentaires.