TP Algorithmes et
Programmation Python
Bachelor, École Centrale Méditerranée
Semester 1, 2023-2024
Thomas Boudier
École Centrale Méditerranée
December 5, 2023
1
Listes imbriquées
Liste de notes
Nous allons créer une liste de plusieurs notes.
1. Créer deux listes note1 et note2 correspondant à deux séries de notes
d’étudiants, avec un même nombre d’éléments chacune.
2. Créer une liste principale note = [note1, note2]. Comment accéder à la
première note de note1 et note2 ?
3. Calculer et afficher la moyenne des notes note1 et note2 en utilisant la
fonction sum(liste).
4. Même chose pour le minimum et le maximum avec min(liste) et max(liste).
5. Tester la fonction .sort() sur notes, comment s’effectue le tri ?
6. Trier les deux sous-liste note[0] et note[1], comment s’effectue le tri ?
Quel est le problème avec ces tris ?
7. Créer une troisième liste qui prend la moyenne des deux notes, et
l’ajouter à la liste principale note.
Tableaux NumPy
Création de tableaux
Avant toute utilisation des tableaux, importer le package NumPy avec import numpy as np.
1. Créer un tableau de 1000 entiers, initialisé à 0. Vérifier les dimensions
du tableau avec shape, le type des données avec dtype.
2. Changer la première valeur du tableau en 1.5, que constatez-vous ?
3. Créer un tableau de 1000 réels espacés entre 0 et 1.
4. Extraire dans un deuxième tableau les 100 premiers nombres du tableau,
même chose avec les 100 derniers.
5. Extraire dans 2 tableaux les valeurs d’indice pair et impair.
Info-ECM-Bachelor1 2 Thomas Boudier
Nombres aléatoires et Histogramme
Avant toute utilisation des tableaux, importer le package NumPy avec import numpy as np.
1. Créer un tableau de 10 nombres tirés au hasard avec [Link](10).
2. Créer un autre tableau contenant 10 valeurs entières initialisées à 0.
Ce tableau contiendra le nombre de valeurs du tableau aléatoire entre
0–0.1, 0.1–0.2,. . .,0.9–1.0.
3. Parcourir les valeurs du tableau aléatoires, suivant à quel intervalle
appartient la valeur, àjouter 1 à la case correspondante dans le tableau
de comptage. Afficher les valeurs finales du tableau de comptage, que
constatez-vous ?
4. Effectuer la même chose avec 100, 1 000 ou 1 000 000 de valeurs, que
constatez-vous ?
Tableau de notes
Nous allons créer une liste de plusieurs notes. Avant toute utilisation des
tableaux, importer le package NumPy avec import numpy as np.
1. Créer un tableau à deux dimensions, correspondant à deux séries de
notes d’étudiants.
2. Calculer et afficher la moyenne des notes par série et par étudiants en
utilisant la fonction [Link]().
3. Même chose pour le minimum et le maximum avec [Link]() et [Link]().
4. Tester la fonction [Link]() pour trier les 2 séries de notes.
Tri avec indices
Nous allons trier des tableaux en utilisant l’indice de tri. Avant toute utili-
sation des tableaux, importer le package NumPy avec import numpy as np.
1. Créer 2 tableaux tab1 = [Link]([9, 8, 7, 6, 5, 4, 3]) et
tab2 = [Link]([1, 2, 3, 4, 5, 6, 7]).
2. Trier le premier tableau en utilisant le tri par indice [Link](). Af-
ficher les valeurs retournées par la fonction, à quoi correspondent-elles?
3. Créer un tableau, avec des 0, de même taille que tab1. Utiliser le
résultat précédent pour mettre les valeurs triées de tab1 dans ce tableau.
Info-ECM-Bachelor1 3 Thomas Boudier
Figure 1: Graphe de la fonction Sinus.
4. Même chose avec tab2, les données seront triées, mais en utilisant l’ordre
de tri de tab1.
5. Effectuer la même chose, mais avec un tableau 2D.
Fonction trigonométriques et affichage
Nous allons créer deux tableaux regroupant les valeurs x et sin(x) et nous
afficherons la courbe correspondante 1.
1. Créer un tableau avec les valeurs de X xvalues = [Link](−[Link], [Link], 1000).
2. Le tableau avec les valeurs de Y est défini par yvalues = [Link](x).
3. Pour l’affichage il faut importer [Link].
4. Pour afficher en abscisse et ordonnées les valeurs on utilise [Link](xvalues, yvalues)
suivi de [Link]().
5. Ajouter un titre à l’affichage avec [Link](”...”), un label en X et
Y avec [Link](”...”) et [Link](”...”), à mettre avant l’appel à
[Link]().
6. Même chose avec la fonction cos(x), l’afficher sur le même graphique
que sin(x).
Info-ECM-Bachelor1 4 Thomas Boudier
7. Se servir des précédents pour afficher un cercle ?
sin(x)
8. Afficher le graphe de la courbe x
(changer les intervalles de X si
besoin).
Application I - Données Temporelles
Nous allons étudier le prix de denrées alimentaires en Nouvelle-Zélande. Les
données sont disponibles sur Stats NZ.
1. Lire le fichier [Link], extraire dans plusieurs fichiers les
données correspondants au prix du pain, des œufs et du fromage.
2. Lire le fichier pour le prix du pain, mettre les données de date et de
prix dans deux listes. Créer un tableau à deux dimensions à partir de
ces 2 listes.
3. Afficher les informations de prix minimum, maximum avec les dates
correspondantes.
4. Afficher le graphe de l’évolution des prix.
5. Lire les fichiers pour les prix des œufs et du fromage et afficher les 3
graphes.
Info-ECM-Bachelor1 5 Thomas Boudier