NSI (première) · Chapitre 3 · Exercice d'entraînement
n° 105
Langages et programmation · Écrire et spécifier ses propres fonctions · niveau 3 (difficile)
Énoncé
Écrire est_premier(n). Justifier que la boucle peut s'arrêter dès que — et non seulement à . Comparer le nombre de divisions des deux versions, puis vérifier qu'elles donnent le même résultat sur à .
Pour démarrer : comment l'IA t'aide
Élève
Je vois qu'il faut écrire une fonction est_premier, mais je ne sais pas par où commencer : je teste quoi, et jusqu'où ?
IA
Commence par le cas de base : pour quelles valeurs de la réponse est-elle fausse sans même chercher un diviseur ? Ensuite, pour un plus grand, quel entier vas-tu essayer de diviser par lui, et comment testeras-tu la divisibilité en Python ?
Élève
Pour plus petit que , c'est faux. Après, je peux essayer , puis , etc., et regarder si .
IA
C'est la bonne piste. Reste la question du moment où tu peux t'arrêter : si tu montes jusqu'à , tu fais beaucoup d'essais inutiles. À ton avis, au-delà de quelle valeur de par rapport à est-il certain qu'il n'y a plus rien à trouver ?
L'IA ne donne pas la réponse : elle pose la question qui fait avancer. Le corrigé de cet exercice n'est pas publié : à toi de continuer.
Continue cet exercice avec l'IA
Reprends l'exercice là où le dialogue s'arrête.
Continuer avec l'IA — gratuit, sans inscriptionGratuit, sans inscription. L'IA te guide pas à pas, sans te donner la réponse.