C13 : Exercices
C13.E1 : Lettre la plus présente dans un texte
1) Écrire une fonction occurrences(chaine:str)->dico qui prend une chaine de caractères en paramètre et renvoie un dictionnaire dont chaque clé est un caractère ou un signe de de ponctuation du texte (on exclura les espaces), et la valeur associée est le nombre d'apparition de ce caractère dans le texte.
2) Écrire une fonction occurrence_max(texte:str)->str qui prend un texte en paramètre et renvoie la lettre la plus présente dans le texte, ainsi que le nombre d'occurrences de cette lettre.
C13.E2 : Gestion d'un parc de vélos en libre accès
On souhaite créer un outil de gestion d'un ensemble de vélos en libre accès dans la ville de Villebicette.
Pour chaque vélo, on dispose des informations suivantes :
- - un identifiant numérique unique ;
- - un statut qui peut être L (pour libre), D (pour en déplacement) ou P (pour en panne) ;
- - un nom de station où est garé le vélo (ou la dernière station occupée si le vélo est en déplacement)
Les stations de Villebicette sont : Mairie, Canal, Vieux chateau et Rue longue.
Le code python suivant permet de créer une liste des vélos correspondant à ceux de Villebicette à une date donnée.
parc = []
parc.append({'id': 1, 'statut':'L', 'station': 'Mairie'})
parc.append({'id': 2, 'statut':'L', 'station': 'Mairie'})
parc.append({'id': 5, 'statut':'P', 'station': 'Mairie'})
parc.append({'id': 8, 'statut':'P', 'station': 'Mairie'})
parc.append({'id': 10, 'statut':'D', 'station': 'Mairie'})
parc.append({'id': 11, 'statut':'L', 'station': 'Mairie'})
parc.append({'id': 12, 'statut':'D', 'station': 'Mairie'})
parc.append({'id': 13, 'statut':'D', 'station': 'Gare'})
parc.append({'id': 16, 'statut':'P', 'station': 'Gare'})
parc.append({'id': 17, 'statut':'D', 'station': 'Gare'})
parc.append({'id': 18, 'statut':'D', 'station': 'Gare'})
parc.append({'id': 21, 'statut':'L', 'station': 'Gare'})
parc.append({'id': 22, 'statut':'D', 'station': 'Gare'})
parc.append({'id': 23, 'statut':'D', 'station': 'Gare'})
parc.append({'id': 25, 'statut':'D', 'station': 'Gare'})
parc.append({'id': 26, 'statut':'P', 'station': 'Grande place'})
parc.append({'id': 27, 'statut':'L', 'station': 'Grande place'})
parc.append({'id': 28, 'statut':'D', 'station': 'Grande place'})
parc.append({'id': 30, 'statut':'L', 'station': 'Grande place'})
parc.append({'id': 32, 'statut':'D', 'station': 'Grande place'})
parc.append({'id': 34, 'statut':'P', 'station': 'Grande place'})
parc.append({'id': 35, 'statut':'L', 'station': 'Grande place'})
parc.append({'id': 39, 'statut':'D', 'station': 'Musée'})
parc.append({'id': 42, 'statut':'D', 'station': 'Musée'})
parc.append({'id': 45, 'statut':'D', 'station': 'Musée'})
parc.append({'id': 48, 'statut':'P', 'station': 'Musée'})
parc.append({'id': 49, 'statut':'L', 'station': 'Musée'})
parc.append({'id': 50, 'statut':'D', 'station': 'Musée'})
parc.append({'id': 52, 'statut':'L', 'station': 'Musée'})
parc.append({'id': 53, 'statut':'L', 'station': 'Musée'})
1) Quel est le type utilisé pour sauvegarder les informations de chaque vélo ?
2) Écrire une fonction qui, à partir d'une liste de vélos passée en paramètre, renvoie le nombre de vélos en déplacement.
3) Écrire une fonction qui, à partir d'une liste de vélos passée en paramètre, renvoie la liste des id des vélos en panne.
4) Écrire une fonction qui, à partir d'un nom de station et d'une liste de vélos passés en paramètre, renvoie le nombre de vélos libre de la station.
5) Écrire une fonction qui, à partir d'une liste de vélos passée en paramètre, renvoie le nom de la station qui contient le moins de vélos disponibles
C13.E3 : Scrabble => Décompte des points d'un mot
Au Scrabble, chaque lettre est affectée d'un nombre de points.
Le total des point d'un mot se fait en additionnant les points de chaque lettre.
Compléter la fonction ci-dessous
points_lettres = {"A":1,"B":3,"C":3,"D":2,"E":1,"F":4,"G":2,"H":4,"I":1,"J":8,"K":10,"L":1,"M":2,"N":1,"O":1,"P":3,"Q":8,"R":1,"S":1,"T":1,"U":1,"V":4,"W":10,"X":10,"Y":10,"Z":10}
def points(mot):
"""
Compte le nombre de points d'une chaine de caractères au jeu de Scrabble
:param mot: une chaine de caractères composée de lettres de l'alphabet en majuscules
:return: le nombre de points au Scrabble (un entier)
>>> points("BONJOUR")
16
>>> points("ANTICONSTITUTIONNELLEMENT")
28
"""
pass