[OCAML] Question de débutant relative au match

Question de débutant relative au match [OCAML] - Divers - Programmation

Marsh Posté le 05-01-2007 à 12:17:19    

Bonjour à tous !
 
J'aimerai écrire une fonction de ce style :
 
let blabla l = match l with  
   [] -> 0
   |x::_ -> (min x 3)
                    (max x 2)
;;
 
Mais impossible de compiler ca coince au niveau des appels de min et max, or si j'ecris juste ce qui suit, je n'ai pas de soucis.
 
let blabla l = match l with  
   [] -> 0
   |x::_ -> (min x 3)              
;;
 
Ma question est donc la suivante : Comment faire lorsque l'on souhaite que l'un des motifs de son match effectue plusieurs appels consécutifs de fonctions (appels qui dans le cas de la fonction sur laquelle je bloque sont en plus récursifs)
 
Merci d'avance !!!

Reply

Marsh Posté le 05-01-2007 à 12:17:19   

Reply

Marsh Posté le 05-01-2007 à 12:46:47    

Tes fonctions min et max elles renvoient un type unit ?
Tu peux séparer les deux appels par un ; si c'est ta question.

Reply

Marsh Posté le 05-01-2007 à 12:53:40    

justement non, min et max renvoient des int, et c'est bien cela le soucis !

Reply

Marsh Posté le 05-01-2007 à 12:55:53    

ok, je viens de me rendre compte de ma bétise, comment ma fonction blabla peut elle renvoyer un "seul" int, si je lui écris (min x 3)(max x2) ... chacune de ces fun renvoie 1 int ... Merci ! ;)


Message édité par teemu le 05-01-2007 à 12:59:46
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed