Aller au contenu

12 Exos Boucle While

Exercices à programmer⚓︎

Les 7 premiers exercices sont à faire sur Capytale.

Fiche d'exercices Python 12 boucle While sur Capytale

ou en vous connectant directement sur ENT > caPYTale et en saisissant le numéro d'activité :
829d-7783029

Exercice 1⚓︎

Voici un programme permettant d’afficher les carrés et les cubes des \(20\) premiers entiers naturels non nuls. Réécrivez-le avec une boucle while à la place de la boucle for.

🐍 Script Python
for n in range(1, 21):
  print("Le carré de " + str(n) + " est : " + str(n**2) + ".")
  print("Le cube de " + str(n) + " est : " + str(n**3) + ".")

Exercice 2⚓︎

Voici un programme permettant d’afficher toutes les tables de multiplication de \(0\) à \(10\). Réécrivez-le avec des boucles while à la place des boucles for.

🐍 Script Python
for k in range(0,11,1):
    print("Table de " + str(k) + " : ")
    for j in range(0,11,1):
        print(k," *",j," =",k*j)
    print()

Exercice 3⚓︎

Écrire un programme qui affiche une table de conversion des sommes d’argent exprimées en euros et en francs suisses. La progression des valeurs sera géométrique comme dans l’exemple ci-dessous :

1 CHF = 1,07 EUR
2 CHF = 2,14 EUR
3 CHF = 3,21 EUR
4 CHF = 4,144 EUR

On s’arrêtera lorsqu'on aura dépassé 4000 euros. Ne pas déterminer le nombre de tours de boucles.

Exercice 4⚓︎

Écrire un programme qui affiche une suite de nombres dont chaque terme est égal au triple du précédent. On part avec nb = 2, et on s'arrête lorsqu'il dépasse \(1\) million.

Exercice 5⚓︎

Modifier le programme ci-dessous afin de s'assurer que l'utilisateur ne choisisse que des nombres entiers entre 0 et 10 (s'il joue autre chose, on lui redemande de saisir 𝑥 et 𝑦).

🐍 Script Python
a, b = 4, 7
print("À vous de jouer")
x = int(input("x ? "))
y = int(input("y ? "))
if  x == a and y == b:
    print("Coulé")
else:
    if x == a or y == b:
        print("En vue")
    else:
        print("À l'eau")

Exercice 6⚓︎

Modifier le programme ci-dessous afin de permettre à l’utilisateur de rejouer s’il le souhaite.

🐍 Script Python
a, b = 4, 7
print("À vous de jouer")
x = int(input("x ?"))
y = int(input("y ?"))
if  x == a and y == b:
    print("Coulé")
else:
    if x == a or y == b:
        print("En vue")
    else:
        print("À l'eau")

Exercice 7⚓︎

Expérimenter avec la conjecture de Syracuse :
On part d'un nombre strictement positif ; s'il est pair, on le divise par 2 ; s'il est impair, on le multiplie par 3 et on ajoute 1. On s'arrête dès que l'on atteint 1.

La conjecture de Syracuse annonce qu'on finira par atteindre 1 pour n'importe quel entier de départ (mais attention, ça peut être long, et bloquer l'ordinateur).

Écrire une fonction qui prend en paramètre un entier \(n\), et qui fait affiche les termes successifs de cette suite jusqu'à ce qu'elle s'arrête. Tester avec quelques valeurs.

Exercices sur la terminaison des boucles While⚓︎

Pour chaque exercice ci-dessous, déterminer, en justifiant, si la boucle while se termine ou non. Si elle ne se termine pas, proposer une modification pour la faire terminer.

Exercice 8⚓︎

🐍 Script Python
y = 5
while y > 0:
    print(y)
    y = y + 1

Exercice 9⚓︎

🐍 Script Python
z = 100
while z != 0:
    print(z)
    z = z - 2

Exercice 10⚓︎

🐍 Script Python
a = 1
while a < 10:
    print(a)
    a = a * 2

Exercice 11⚓︎

🐍 Script Python
b = 0
while b < 15:
    if b % 2 == 0:
        print(b)
    b = b + 1

Exercice 12⚓︎

🐍 Script Python
b = 0
while b < 15:
    if b % 2 == 0:
        print(b)
        b = b + 1