Adloun

sciences numériques et technologie (seconde) · Chapitre 4 · Exercice supplémentaire

La conjecture de Syracuse

Les boucles · La boucle non bornée : while · niveau 3 (difficile)

Énoncé

On part d'un entier n strictement positif et on répète : s'il est pair on le divise par , sinon on le remplace par . On s'arrête quand on atteint .

Écrire une fonction duree_vol(n) renvoyant le nombre d'étapes, et la tester sur , et . Pourquoi ne peut-on pas démontrer que cette boucle se termine ?

Pour démarrer : comment l'IA t'aide

Élève

Je ne sais pas trop par où commencer : je vois bien la règle de calcul, mais je ne vois pas comment la transformer en programme.

IA

Commence par le plus concret : la règle s'applique tant qu'on n'est pas arrivé à . Quelle structure de boucle en Python permet de répéter des instructions tant qu'une condition reste vraie ?

Élève

Une boucle while, avec la condition n != 1. Mais à l'intérieur, je ne sais pas quoi mettre pour traiter les deux cas pair et impair.

IA

C'est la bonne structure. Pour les deux cas, quel test en Python permet de savoir si un entier est pair ? Et que faudra-t-il penser à compter à chaque tour de boucle ?

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 inscription

Gratuit, sans inscription. L'IA te guide pas à pas, sans te donner la réponse.

Le cours du chapitre · Tous les exercices du chapitre

Continuer avec l'IA, gratuit →