Fonctions sur les chaines

Question 1

Écrire une fonction supprime_espace_aux_extremites(chaine) prenant en argument une chaine et supprimant les espaces au début et à la fin de la chaine.

Question 2

Il y a souvent plusieurs caractères indésirables en début et fin de chaine, ajouter un argument à la fonction précédente pour permettre de choisir les caractères indésirables en début et fin de chaines (ainsi on pourra éliminer les sauts de lignes et autres).

Indication : pour tester si un caractère apparait dans une chaine, on peut utiliser le mot clé "in" :

    c = 'A'
    chaine = "Salut..."
    if c in chaine:
        print("La lettre" , c, "apparait dans la chaine", chaine)

Rappel : cette fonction existe déjà en Python : il s'agit de la méthode "strip" :

>>> "  Salut, je m'appelle Bob...".strip(" S.")
"alut, je m'appelle Bob"

Question 3

Écrivez une fonction qui demande une liste de flottants à l'utilisateur (grâce à la fonction "input(...)").

L'utilisateur peut rentrer autant de flottant qu'il veut, sur une seule ligne. Les flottants sont séparés par des points-virgules (et des espaces s'il le souhaite), et chaque flottant peut utiliser le symbole "," comme en français au lieu du symbole "." comme en anglais.

Voici un exemple valide : "1,3 ; 3,14159265 ; -1 ; 0".

Votre fonction devra renvoyer un tableau de flottant.

Question 4

Écrivez une procédure qui affiche une liste de flottants à l'écran. Votre fonction aura cinq arguments :

Exercices sur les palindromes

Question 1 (révision)

Écrire une fonction renversant une chaine (le premier caractère devient le dernier et ainsi de suite).

Question 2 (révision)

Écrire une fonction testant si une chaine est un palindrome.

Question 3

Écrire une fonction prenant un tableau de mots (chaine) et renvoyant le tableau (éventuellement vide) des mots de ce tableau qui sont des palindromes.

Question 4

Pour concevoir des longs palindromes, on peut avoir besoin d'aide. Pour cela, étant donné un tableau de mots français (un dictionnaire) en variable globale, écrire une fonction prenant en argument une chaine et retournant le tableau des mots du dictionnaire se terminant par cette chaine, mais à l'envers.

Question 5

Trouver tous les couples M1,M2 de mots du dictionnaire tel que le début de M1 soit égale à la fin de M2 à l'envers. La partie commune devra avoir au moins la taille 2 et la liste des couples devra être triée dans l'ordre inverse de la longueur de la partie commune.