ioCode

Syracuse

Impératif • Exercices 1A

La suite de Syracuse est défnie par :

∀n∈ℕ,un+1={3un+1 si un est impairun/2 si un est pair

Même si on ne l'a pas démontré, on observe qu'il existe un rang n0 pour lequel un0 vaut 1. On nomme n0 le temps de vol de la suite.

  1. Écrire une fonction next : int -> int qui renvoie le terme suivant de la suite de Syracuse. Par exemple next 3 renvoie 10.
  2. Écrire une fonction syracuse : int -> int qui renvoie le temps de vol de la suite à partir d'un entier initial. Par exemple syracuse 3 renvoie 7.
Langage
Console initialisée. En attente de l'interpréteur...