CAML

Modérateur : Michel Quercia

Répondre
MisterReilous
Messages : 2
Enregistré le : mar. août 08, 2017 9:29 pm
Classe : 921

CAML

Message par MisterReilous » sam. août 12, 2017 7:45 pm

Bonjour,
Je fait du caml en vacances et je me demandais pourquoi la fonction "defile" suivante :


type 'a file_FIFO = { contenu: 'a vect; taille: int ;mutable nombre: int; mutable tete: int};;

let defile file = file.contenu.(file.tete) ; if file.nombre = 0 then failwith "File vide" else if file.tete = file.taille - 1 then file.tete <- 0 else file.tete <- file.tete + 1;;


était du type 'a file_FIFO' -> unit () et ne renvoi pas de valeur associée à "file.contenu.(file.tete)"

Et si possible, si quelqu'un pouvait m'indiquer comment faire les deux à la fois dans la même fonction

Merci d'avance

Quentin Fortier
Messages : 10
Enregistré le : jeu. juil. 27, 2017 1:37 pm
Contact :

Re: CAML

Message par Quentin Fortier » dim. août 13, 2017 12:39 pm

Tu pourrais donc écrire quelque chose du genre:
let defile file =
let res = file.contenu.(file.tete) in
if file.nombre = 0 then failwith "File vide"
else if file.tete = file.taille - 1 then file.tete <- 0 else file.tete <- file.tete + 1;
res;;
Professeur d'informatique en CPGE
http://quentinfortier.fr/

MisterReilous
Messages : 2
Enregistré le : mar. août 08, 2017 9:29 pm
Classe : 921

Re: CAML

Message par MisterReilous » jeu. août 17, 2017 10:11 am

Merci pour l'éclairement

Répondre

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités