Racine carrée entière par dichotomie
Exercice de TD · niveau 2 · NSI (terminale), chapitre 6 — Diviser pour régner
Énoncé
Racine carrée entière par dichotomie.
Calculer la partie entière de pour un entier sans utiliser math.sqrt, par recherche dichotomique sur le résultat.
Corrigé
on cherche le plus grand entier tel que .
def racine_entiere(n):
g, d = 0, n
res = 0
while g <= d:
m = (g + d) // 2
if m * m <= n:
res = m # candidat valable, on tente plus grand
g = m + 1
else:
d = m - 1
return res
La complexité est .
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.