Exercice 18
Ecrire un algorithme en langage Python qui demande à l'utilisateur de saisir une chaine de caractère 's' et de lui afficher un message indiquant si la chaine contient la lettre 'a' tout en indiquant sa position sur la chaine 's'. Exemple si l'utilisateur tape la chaine s = 'langage' le programme lui renvoie :
La lettre 'a' se trouve à la position : 1
La lettre 'a' se trouve à la position : 4
Solution
1ère méthode:
1 2 3 4 5 6 7 8 9 10 11 |
# Demander à l'utilisateur de tapez la valeur de s s = input("Tapez la valeur de s : ") # Obtenir la longueur de la chaine s n = len(s) # Parcourir la chaine s tout en recherchant le caractère 'a' for i in range(0,n): # Tester si le caractère rencontré est égale à 'a' if(s[i] == 'a'): print("Le caractère 'a' se trouve à la position : ", i , " dans la chaine s") |
2ème méthode: en utilisant la fonction enumerate()
1 2 3 4 5 6 7 8 9 10 11 12 13 |
s = input("Entrez une chaine de caractères : ") has_a = False # Parcourir les caractères de la chaîne for i, c in enumerate(s): # Vérifier si le caractère est 'a' if c == 'a': print(f"La lettre 'a' se trouve à la position : {i}") has_a = True # Afficher un message si 'a' n'a pas été trouvé if not has_a: print("La chaine ne contient pas la lettre 'a'.") |
Explication :
- La fonction input(): est utilisée pour demander à l'utilisateur de saisir une chaîne de caractères s.
- La variable has_a: est initialisée à False pour indiquer que la lettre 'a' n'a pas encore été trouvée.
- La boucle for: parcourt chaque caractère c de la chaîne s et utilise la fonction enumerate() pour obtenir la position i de chaque caractère dans la chaîne.
- Si le caractère est 'a': la position de 'a' est affichée à l'aide de la fonction print() et la variable has_a est mise à True.
- Si 'a' n'a pas été trouvé: dans la chaîne, un message est affiché à l'aide de la fonction print().
Younes Derfoufi
CRMEF OUJDA
1 thought on “Solution Exercice 18: index d'un caractère au sein d'une chaine en Python”