Adloun

La décroissance radioactive

Exercice de TD · niveau 3 (difficile) · sciences numériques et technologie (seconde), chapitre 4 — Les boucles · La boucle non bornée : while

Énoncé

Un échantillon contient noyaux radioactifs. À chaque période, la moitié des noyaux restants se désintègre (on arrondira à l'entier inférieur avec //).

  1. Écrire un programme qui affiche le nombre de périodes au bout desquelles il reste moins de noyaux.
  2. Afficher l'évolution période par période.
  3. Que se passerait-il si l'on remplaçait // par / ? Et si le seuil était au lieu de ?

Corrigé

1. et 2.

noyaux = 2000
periodes = 0
while noyaux >= 10:
    noyaux = noyaux // 2
    periodes = periodes + 1
    print("période", periodes, ":", noyaux)
print("Il reste", noyaux, "noyaux après", periodes, "périodes")
période 1 : 1000
période 2 : 500
période 3 : 250
période 4 : 125
période 5 : 62
période 6 : 31
période 7 : 15
période 8 : 7
Il reste 7 noyaux après 8 périodes

3. Avec /, les valeurs deviennent des flottants et ne sont plus des comptages de noyaux : noyau n'a pas de sens physique. La boucle finirait quand même, mais le modèle serait faux.

Avec un seuil de , en revanche, le comportement dépend de l'opérateur, et c'est le point important :

Une boucle while dont la condition porte sur des flottants est toujours à regarder de près.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.