DEUG MIAS 24
 
 

Types et Structures de données
 
 

TME 3


1.Écriture d'un nombre en chiffres romain

Dans un fichier de nom romain.ml...

1.1.Programmation

Implanter la programmation, commencée en TD, de la fonction romain.

1.2.Jeux d'essais

Écrire des expressions permettant de tester méthodiquement votre fonction. Après essai, mettre en commentaire les expressions levant une exception.
 

1.3.Lecture sûre d'un entier

On rappelle ci dessous la fonction vue en cours :

(* Retourne, sans lever d'exception un entier lu au clavier,
     réitère la demande en cas d'erreur de saisie. *)
let rec safe_read_int () =
  try
    read_int ()
  with
    Failure "int_of_string" -> (
      print_string "redo ? " ;
      safe_read_int ()
    )

Copier et tester cette fonction.

1.4.Lecture d'un entier naturel

Définir, sur le modèle de la fonction précédante, une fonction safe_red_nat de type unit -> int qui retourne un entier naturel lu au clavier et réitère la demande en cas d'erreur de saisie ou de lecture d'un entier négatif. Tester cette fonction.

1.5.Lire un entier et afficher sa représentation en chiffres romains

Écrire la spécification et une définition de la fonction main : unit -> unit telle que (main ()) Indication : revoir l'expression du cours lisant un entier et affichant sa factorielle.

Terminez votre fichier romain.ml par un appel de cette fonction.

1.6.Compilation et exécution

Dans un terminal, compiler le fichier (après sauvegarde) par la commande
    ocamlc romain.ml -o romain
puis faire exécuter le fichier crée par la commande
    ./romain
 

2.Programmation d'autres exercices des TD