Listes et dictionnaires
Dans ce chapitre, nous utiliserons nos premières structures de données (listes et dictionnaires) et commencerons à utiliser des boucles for
.
Nous vous conseillons de finir cette matière le vendredi de S4.
Exercices
1. Un peu plus de calcul vectoriel
Écrivez un programme qui demande à l'utilisateur combien de dimensions les vecteurs auront, puis, les composantes de deux vecteurs.
Affichez à l'écran la somme des deux vecteurs, le produit scalaire des deux, le produit vectoriel (si à 3 dimensions) et le produit scalaire du dernier résultat avec les deux vecteurs initiaux.
2. Quelques calculs statistiques
Écrivez un programme qui demande à l'utilisateur d'entrer des nombres. Tant qu'ils sont positifs, les enregistrer dans une liste. S'arrêter dès que le nombre est négatif.
Ensuite, effectuez les opérations suivantes :
- Affichez les valeurs entrées à l'écran.
- Triez la liste du plus petit au plus grand (à l'aide de la méthode de votre choix, implémentée par vos soins) et affichez-le à l'écran.
- Calculez et affichez la moyenne, variance et médiane.
3. Strings et listes
Écrivez un programme qui compte le nombre de mots dans une phrase avec une ponctuation qui pourrait être erronée.
Exemple:
Les objectifs de Python en font un langage pédagogique idéal.C’est un langage general-purpose:il s’adapte à toutes les applications
contient 23 mots.
4. Variations sur la question précédente.
Sur base de la résolution de l'exercice précédent, nous allons regarder ce que la RTBF dit du CERN. Pour ce faire, nous aurons tout d'abord besoin d'une série d'articles de la RTBF.
Téléchargez le fichier python suivant dans le dossier où vous travaillez. Ceci peut être fait dans le terminal à l'aide de la commande suivante :
wget https://cp3-git.irmp.ucl.ac.be/mdelcourt/lphys1201/raw/master/Chapter_3/corpus.py
(attention, pour coller en terminal, il faut tapper "CTRL-SHIFT-V". De même, pour copier, c'est "CTRL-SHIFT-C")
Ce fichier corpus.py
contient les 20 derniers articles de la RTBF sur le sujet. Pour y accéder depuis un de vos programmes, il faut ajouter la ligne suivante :
from corpus import texte
print(texte)
Comptez le nombre de fois que chaque mot apparaît dans les articles. Affichez ensuite les 20 mots d'au moins 4 lettres les plus courants, classés par nombre d'occurrences.
Attention, la casse ne doit pas être respectée dans cet exercice. Le mot "Arbre" est équivalent à "arbre" ou "aRbRe". Les fonctions mon_texte.lower()
ou mon_texte.upper()
vous seront utiles.
5. Triangle de pascal.
Écrivez un programme qui affiche un triangle de pascal de dimension N ,donnée par l'utilisateur.
6. Un snake plutôt nul. -- Difficile
Écrivez une version basique de snake.
On commence avec un serpent de taille 1, et une pomme placée sur la grille. À chaque tour de jeu, demandez une direction à l'utilisateur (plus facile en utilisant "zsqd" z = haut, s = bas, q = gauche, d = droite).
Bougez le serpent, et affichez-le ainsi que la pomme. Le serpent peut être symbolisé par des "@", et la pomme par une étoile. Affichez aussi les limites du terrain.
Si le serpent se mord la queue ou touche une bordure, le jeu s'arrête. Si le serpent mange la pomme, sa taille augmente de 1 et une pomme apparaît à l'opposé du bout de sa queue. Attention si la case de la pomme est déjà occupée par le serpent, il faudra essayer d'autres cases (les coins, par exemple) !
Enfin, si le serpent fait la taille du tableau, le jeu s'arrête.