Prog Caml : Coffre fort en récursif

Reprenons le premier programme qu'on avait écrit avec une boucle while, celui qui simule le coffre fort.

while read_int() <> 36 do
  print_string "Code non valide !\n";
done;
print_string "Coffre ouvert !\n";

On va essayer d'écrire ce programme à l'aide d'une fonction récursive nommé coffre_fort.

  • La fonction ne prend pas de paramètres.
  • Si read_int() vaut 36, alors on affiche "Coffre ouvert !".
  • Sinon, on affiche "Code non valide !", et on recommence, c'est-à-dire qu'on rappelle la fonction coffre_fort.

Limites de temps et de mémoire (Python)

  • Temps : 4 s sur une machine à 1 GHz.
  • Mémoire : 1 000 ko.

Commentaires

Code à compléter :
let read_int() = Scanf.scanf " %d" (fun x -> x);;
let rec coffre_fort () =
  (*à compléter*)
  in

coffre_fort();;

Source : http://www.france-ioi.org/ Créé par : Arthur Charguéraud.