TP1 - Listes
- Manipuler des listes et ses éléments ;
- Faire des conditions et boucles.
- Se créer un dossier
Première NSI
sur votre ordinateur ou clé USB - Dans ce dossier, créer un dossier
Représentation des données
Sur EduPython ou autre instance python, faire :
- Créer un nouveau fichier en cliquant sur l'icône
📄
, ou en appuyant surCTRL
+N
- Enregistrer le fichier sous le nom
TP1_Listes
en cliquant sur l'icône💾
, ou en appuyant surCTRL
+S
L'ensemble des exercices se fait sur python.
Exercice 1 - Fruits
Thierry, comme toute personne normale, souhaite utiliser python pour représenter l'ensemble des fruits qu'il aime manger.
- Créer une liste
fruits
contenant les éléments suivants :'pomme'
,'banane'
,'orange'
,'kiwi'
. - Afficher le deuxième élément de la liste.
- Finalement, Thierry souhaite changer l'orange en mangue. Modifier le troisième élément pour qu'il soit
'mangue'
et afficher la liste modifiée. - Ajouter
'fraise'
à la fin de la liste et afficher la liste. - Après avoir mangé une banane, Thierry s'est mis à gonfler du visage (mince, il est allergique !). Supprimer l'élément
'banane'
de la liste des fruits.
Exercice 2: Des nombres
Michel voudrait, à partir d'une liste de nombres, posséder une nouvelle liste contenant ces mêmes nombres, à la puissance 3.
- Créer une liste
nombres
contenant les nombres de 1 à 10. - Créer une liste
cubes
qui est vide. - Utiliser une boucle
for
pour afficher chaque nombre à la puissance 3. - Rajouter dans la boucle une instruction permettant d'ajouter chaque nombre à la puissance 3 dans la liste
cubes
. - Supprimer le nombre 5 de la liste
nombres
ainsi que la listecubes
, et afficher les listes mises à jour.
Exercice 3 : Pairs et impairs
Un prof de NSI veut vous faire réfléchir un peu en vous proposant un exercice où il souhaiterait que vous mettiez en place un programme permettant, à partir d'une liste de nombres, séparer ces nombres en 2 listes pairs
et impairs
, suivant si les nombres de la liste sont pairs ou impairs.
En important la bibliothèque random (import random), on peut utiliser la fonction random.sample(sequence, k) permettant de générer aléatoirement une liste de k
entiers parmi l'ensemble de nombres proposés dans la sequence
:
import random
liste = random.sample(range(0,100),20)
Me génère une liste de 20 entiers allant de 0 à 100.
- Créer une liste de 100 entiers allant de 0 à 500.
- Créer les listes
pairs
etimpairs
, vides. - Un entier est pair si le reste de sa division euclidienne est égal à 0. Le reste d'une division euclidienne est représenté par le symbole
%
(4%2 donne 0 car 4 = 2 * 2 + 0). En utilisant une boucle, parcourir les éléments de la liste, puis ajouter danspairs
ouimpairs
les entiers dont le reste vaut 0, ou non. - Afficher les listes
pairs
etimpairs
.
Exercice 4 : Liste de listes
Plus communément appelées matrices
, les listes de listes sont des listes donc chaque élément est une liste (comportant des éléments).
- Créer une liste
matrice
contenant les sous-listes suivantes : [1, 2, 3], [4, 5, 6], [7, 8, 9]. - Afficher l'élément situé à la position
[1][2]
(deuxième sous-liste, troisième élément). - Ajouter une nouvelle sous-liste
[10, 11, 12]
à la fin dematrice
et affiche la matrice mise à jour. - Remplacer le nombre 6 (de la sous-liste [4, 5, 6]) par 60 et afficher la matrice modifiée.
- En utilisant des boucles dans des boucles, afficher chaque élément de chaque liste de la matrice.
Exercice 5 : Somme des éléments d'une liste
On souhaite pouvoir additionner tous les entiers présents dans une liste.
- Créer une liste de 10 entiers allant de 0 à 20.
Pour additionner les éléments d'une liste, nous avons besoin :
- d'une variable de résultat qui va contenir la somme ;
- parcourir tous les éléments de la liste ;
- pour chacun des éléments de la liste, l'additionner dans la variable de résultat ;
- afficher la variable.
- En s'appuyant de l'algorithme, écrire les lignes permettant d'afficher la somme.
Exercice 6 : Conversion binaire vers décimal
On souhaite dans cet exercice utiliser une liste contenant des 0 et des 1, et la convertir en binaire.
Exemple :
l = [0,0,1,0,1,0,1]
# donnerait 21
- Créer une liste
binaire
contenant des 0 et des 1. - L'élément à l'indice 0 correspond à la plus grande puissance de 2. L'élément au dernier indice correspond à 20. A l'aide d'une boucle, afficher toutes les puissances de 2, où la valeur 1 est présente dans la liste.
- Ajouter toutes ces valeurs dans une variable
décimale
. - Afficher le résultat à la fin de la boucle.
Exercice 7 : Conversion décimal vers binaire
- A l'aide d'un
input
(permettant de saisir du texte), saisir un entier (on oubliera pas de mettreint
devant). - Créer une liste
liste_binaire
vide. - En utilisant des divisions euclidiennes avec une boucle
while
, ajouter dans la listeliste_binaire
le reste de la division euclidienne à chaque étape. - Inverser la liste obtenue et l'afficher.