1ère NSI - Notions de base - Listes - Approfondissements - Exercices

Exercice 1 - Adieu les zéros 129

Validé !

Écrire une fonction adieuZeros(liste) qui retourne une copie de liste sans zéros.

La liste doit être générée en compréhension, et la fonction doit donc s'écrire sur une seule ligne !

>>> adieuZeros([1, 0, 3, 0, 0, 4, 1, 6, 0]) [1, 3, 4, 1, 6]

def adieuZeros(liste): return []

Exercice 2 - Diviseurs 129

Validé !

Écrire une fonction diviseurs(n) qui retourne la liste des diviseurs de n, générée en compréhension.

>>> diviseurs(15) [1, 3, 5, 15]

def diviseurs(n): return []

Exercice 3 - Combien de voyelles ? 75

Validé !

Écrire une fonction nombreVoyelles(chaine) qui retourne le nombre de voyelles de chaine, à l'aide d'une liste générée en compréhension et en une seule ligne.

>>> nombreVoyelles("bonjour") 3

def nombreVoyelles(chaine): return 0

Exercice 4 - Combien de chiffres ? 94

Validé !

Combien y a-t-il de 5 dans l'écriture décimale du nombre $5^{5^5}$ ?

Répondre en une seule ligne !

print(5**5**5)

Exercice 5 - Liste de produits 34

Validé !

Écrire une fonction produit(liste) qui retourne la liste (générée en compréhension) des produits de chaque couple de nombres présent dans liste

>>> produit([[1,2], [2,3], [3,4]]) [2, 6, 12]

def produit(liste): return []

Exercice 6 - Passage à la caisse 28

Validé !

Écrire une fonction prixTotal(panier) qui retourne le prix total d'un panier de fruits (où panier est une liste de listes, dont chaque élément est de la forme [nom du fruit, quantité achetée, prix unitaire].

>>> prixTotal([["pomme", 2, 0.6], ["poire", 3, 0.8]]) 3.6 # Le coût de 2 pommes à 0.6€ et de 3 poires à 0.8€ est 3.6€

Pour éviter les erreurs d'arrondi que Python a tendance à commettre, on arrondira le résultat à 0,01 près.

def prixTotal(panier): return 0