Moon Arrows Sun
Arrows

Exercices de type problème sur l'algorithmique

Dérouler un programme

n = 5
s = 0
for k in range(1, n + 1):
    s = s + k
print(s)
  1. Qu'affiche ce programme ?
  2. Que calcule-t-il, en une phrase ?
  3. Combien de tours la boucle effectue-t-elle ? Est-elle bornée ou non bornée ?

Une boucle non bornée

On place \(1\,000\ \text{€}\) sur un compte rémunéré à \(3\ \%\) par an. On cherche l'année où le capital dépasse \(1\,500\ \text{€}\).

capital = 1000
annee = 0
while capital <= 1500:
    capital = capital * 1.03
    annee = annee + 1
print(annee)
  1. Justifier le choix d'une boucle non bornée plutôt qu'une boucle bornée.
  2. Expliquer l'origine du coefficient \(1{,}03\).
  3. Modifier le programme pour qu'il affiche aussi le capital atteint.

Écrire une fonction

  1. Écrire une fonction est_multiple(a, b) qui renvoie True lorsque a est un multiple de b.
  2. Écrire une fonction encadrement(n) qui renvoie, par balayage de pas \(10^{-n}\), deux décimaux encadrant \(\sqrt{2}\).
  3. Que renvoie cette seconde fonction pour \(n = 2\) ?