Exercice 34
Écrire un programme en python qui prends en entré un texte T donné et génère un ensemble A formé des mots contenant la lettre 'a' et l'ensemble B formé des mots ne contenant pas la lettre 'a'. L'ensemble B doit être généré par deux façons différentes:
- En faisant une manipulation directe sur le texte T
- En faisant le passage au complémentaire de A.
Solution
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
def generate_sets(text): words = text.split() # Divise le texte en mots # Ensemble A : Mots contenant la lettre 'a' A = {word for word in words if 'a' in word} # Ensemble B (Méthode 1) : Mots ne contenant pas la lettre 'a' B_method1 = {word for word in words if 'a' not in word} # Ensemble B (Méthode 2) : Passage au complémentaire de A B_method2 = set(words) - A return A, B_method1, B_method2 # Entrée : Un texte text = "ceci est un exemple de texte avec quelques mots qui contiennent la lettre a" # Appel de la fonction pour générer les ensembles A et B A, B_methode1, B_methode2 = generate_sets(text) # Affichage des ensembles print("Ensemble A:", A) print("Ensemble B (Méthode 1):", B_methode1) print("Ensemble B (Méthode 2):", B_methode2) """ output: Ensemble A: {'avec', 'a', 'la'} Ensemble B (Méthode 1): {'qui', 'ceci', 'un', 'est', 'texte', 'mots', 'exemple', 'contiennent', 'lettre', 'de', 'quelques'} Ensemble B (Méthode 2): {'qui', 'ceci', 'un', 'est', 'texte', 'mots', 'exemple', 'contiennent', 'lettre', 'de', 'quelques'} """ |
Younes Derfoufi
CRMEF OUJDA