En Python, la boucle while permet de répéter une série d'instructions tant qu'une condition est
vraie.
Elle est utile lorsqu’on ne sait pas à l’avance combien de fois on devra répéter le code.
La boucle while répète un bloc d'instructions tant qu’une condition est vraie.
Elle est utile lorsqu’on ne sait pas d’avance combien de fois répéter : on s’arrête dès que la condition
devient fausse.
while condition:
# bloc exécuté tant que vaut True
n = 5
while n > 0:
print(n)
n -= 1 # on rapproche n de 0 pour arrêter la boucle
print("Décollage !")
Sortie : 5 4 3 2 1 Décollage !
secret = "python"
code = ""
while code != secret:
code = input("Mot de passe : ")
print("Accès autorisé")
Si la condition ne devient jamais fausse, la boucle tourne sans fin :
while True: crée volontairement une boucle infinie, qu’on interrompt généralement avec
break ou Ctrl + C.
while répète tant qu’une condition est vraie.Exécuter le programme suivant puis donner une explication au dernier nombre affiché.
Tests :
# Tests
Affichage :
Console:
Exécuter le programme suivant puis donner une explication au dernier nombre affiché.
Tests :
# Tests
Affichage :
Console:
Écris une fonction appelée somme_n_premiers_while qui prend un entier
n en paramètre et utilise une boucle while
pour calculer la somme des n premiers entiers, de 1 à
n (inclus).
La fonction doit retourner cette somme :
n = 5, elle renverra 15,
car 1 + 2 + 3 + 4 + 5 = 15.Exemples :
somme_n_premiers_while(0) → 0somme_n_premiers_while(5) → 15somme_n_premiers_while(10) → 55Tests :
# Tests
Affichage :
Console:
3 marches par jour,
mais chaque nuit il glisse de 1 marche.
Écris une fonction appelée jours_pour_haut qui prend:
hauteur_visée la hauteur de l’escalier en nombre de marches.La fonction doit:
hauteur est égale à 0.0.3 marches.1 marche et continue.Exemples:
jours_pour_haut(0) → 0jours_pour_haut(2) → 1jours_pour_haut(5) → 2jours_pour_haut(10) → 5Tests :
# Tests
Affichage :
Console:
Une culture bactérienne compte 1 bactérie au départ. Chaque heure, la population double.
Écrire une fonction heures_doublement(N) qui calcule et renvoie le nombre d’heures nécessaires pour atteindre au moins N bactéries.
La fonction doit :
N vaut 1 ou moins, retourner 0 (déjà atteint).heures à 0 et une variable population à 1.population est strictement inférieur à N :
population par 2.heures de 1.heures.Tests :
# Tests
Affichage :
Console:
Une immense piscine est vide et contient 0 L d’eau.
Chaque jour, 5% de l'eau s'évapore mais on peut la remplir de 500 L d’eau à l'aide d'un tuyau.
On se pose la question de savoir en combien de jours elle peut atteindre une certaine quantité d'eau.
On ne dépassera jamais une année c'est à dire 365 jours. On considèrera alors qu'il est non réalisable de mettre cette quantité d'eau dans la piscine.
Ecrire la fonction nb_de_jours(quantité_voulue) qui prend un nombre entier correspondant à une quantité d'eau souhaitée à l'intérieur de la piscine et qui renvoie le nombre de jours nécessaire pour la remplir.
Puis répondre aux questions suivantes :
Tests :
# Tests
Affichage :
Console:
On souhaite modéliser un lancer de dé à l'aide de la commande random.randint(1, 6) de la bibliothèque random
Le but est de simuler plusieurs lancers d'un dé à la suite et déterminer combien de fois il a fallu lancer le dé pour obtenir un certain nombre de 6.
Pour cela, programmer la fonction simulation(nb_6_voulu) qui va simuler les lancers de dés et qui retourne le nombre de fois où il a fallu lancer le dé pour obtenir un nombre nb_6_voulu de 6.
Par exemple, si l'exécution de simulation(30) retourne 150 cela veut dire que lors de cette simulation, il a fallu lancer 150 fois le dé pour obtenir 30 fois le nombre 6.
Tests :
# Pas de tests ici puisque le résultat est aléatoire.
Affichage :
Console:
La factorielle d’un entier k, notée k!, est le produit de tous les entiers de 1 à k.
Par exemple :
On cherche le plus petit entier k tel que k! soit au moins égal à N.
Écrire une fonction etapes_factorielle(N) qui renvoie ce k.
La fonction doit :
k à 1 et fact à 1.fact < N :
k de 1.fact par k.k.Tests :
# Tests
Affichage :
Console: