TP Chaines Enonce
TP Chaines Enonce
TP Chaines Enonce
a
2 parcourir et comparer des chaînes de caratères
2 copier les éléments d’une chaîne de caratères
Objectifs
Index 0 1 2 3 4 5
Chaîne p y t h o n
chaine = "Python"
for index in range(0, len(chaine)):
print(chaine[index])
for index in range(len(chaine) - 1, -1, -1): # parcours inversé de 6 à 0
print(chaine[index])
Remarque 1 : Un parcours inversé part de la fin de la chaîne, donc de l’index len(chaine) - 1 pour
finir sur l’index 0 (rappelez-vous que la borne indiquée en second paramètre n’est pas comptée dans une
boucle FOR). Le −1 en 3ième paramètre correspond au pas (ici −1).
On peut aussi parcourir une chaîne en utilisant un raccourci syntaxique permis par le langage Py-
thon :
def copie(chaine):
ch = ""
for lettre in (chaine):
ch = ch + lettre
return ch
6) Signature de fonction
En informatique, une signature de fonction permet de définir les paramètres d’entrées d’une fonction
ainsi que leur type mais également les valeurs qui seront retournées par la fonction.
Dans les exercices, nous utiliserons la syntaxe suivante pour mettre en œuvre cette signature et
décrire ce que devront réaliser les fonctions que vous devrez coder :
nom_fonction(param1, param2, ...)
|- ENTREES : description des paramètres et de leur type
|- SORTIES : nature et description de la valeur retournée
Par exemple, la signature de la fonction copie définie plus haut pourrait se présenter de la manière
suivante :
copie(chaine)
|- ENTREES : chaine est de type str
|- SORTIES : une copie exacte de la chaine passée en paramètre
# Exercices à réaliser
Pour chaque exercice, ouvrez le fichier mentionné dans l’énoncé et lisez les consignes qui reprennent
ou complètent les notions de ce document. Les conseils du TP précédent restent bien évidemment
toujours valables, à savoir :
• respecter les niveaux d’indentation
• utiliser des noms de variables explicites
• utiliser des commentaires afin de documenter votre programme via le symbole #
• user et abuser des print pour débugger, les mettre en commentaire lorque votre programme
fonctionne
• bien analyser les messages d’erreur de python qui vous renseignent sur la nature de l’erreur
lors de l’exécution
Exercice 1
Ouvrir le fichier TP-chaines-exo1.py, lire les consignes et répondre aux questions suivantes :
1. Demander à l’utilisateur de saisir son prénom.
2. Écrire une fonction compterLettres qui compte le nombre de lettres du prénom et dont la
signature est la suivante :
compter_lettres(mot)
|- ENTREES : une variable mot de type str
|- SORTIES : un entier indiquant le nombre de lettres
de la chaîne passée en paramètre
Remarque : vous éviterez évidemment d’utiliser la fonction native len(chaine) .
3. Écrire une fonction compter qui compte le nombre de consonnes et de voyelles du prénom et
dont la signature est la suivante :
compter(mot, flag)
|- ENTREES : mot et flag sont des strings
flag (drapeau en français) indique la nature des
lettres à compter ("consonnes" ou "voyelles")
|- SORTIES : un entier indiquant le nombre de consonnes ou de voyelles
de la chaîne passée en paramètre
4. Écrire une fonction index qui renvoit le le plus petit rang dans le prénom d’une certaine lettre
et dont la signature est la suivante :
index(mot, lettre)
|- ENTREES : mot et lettre sont des strings
|- SORTIES : le rang de la lettre dans le mot si elle est présente, -1 sinon
Par ex. :
index("toto", "o") renvoit 1
index("toto", "a") renvoit -1
Exercice 2
Ouvrir le fichier TP-chaines-exo2.py, lire les consignes et répondre aux questions suivantes :
1. Demander à l’utilisateur de saisir le mot de son choix.
2. Écrire une fonction remplacer qui remplace une lettre par une autre dans une chaîne et dont
la signature est la suivante :
# Compétences à valider