SunuCode
Tous les exercices
Niveau 3 · Boucles· while, conjecture ouverte

Le vol de Syracuse

Énoncé

Écris une fonction vol_syracuse(n) qui renvoie le nombre d'étapes nécessaires pour que n atteigne 1. Règle : si n est pair, on le divise par 2 ; s'il est impair, on le remplace par 3n + 1. On répète jusqu'à atteindre 1. Exemple : à partir de 6, la suite est 6, 3, 10, 5, 16, 8, 4, 2, 1 — soit 8 étapes. vol_syracuse(1) vaut 0. Personne n'a jamais démontré que ce processus s'arrête toujours : c'est la conjecture de Collatz, ouverte depuis 1937.

Ton code est testé en appelant vol_syracuse directement. Ta fonction doit renvoyer le résultat avec return, pas l'afficher. Tes print() de débogage sont autorisés : ils apparaissent en console sans fausser la correction.

Indices

Coince ? Dévoile les indices un par un.

solution.py
Tests

Écris ta solution, puis clique sur Tester. 5 cas t'attendent.

5 cas de test · 2 secrets