[Caml] Listes et changements
Bonjour tout le monde,
Je rencontre un probleme dans un exercice de caml quiu est le suivant :
On a :
- une liste de ce style
Code:
let l = [("Hugo", 42.);("Moro",89.);("Zoro",1.)]
- un type exigé vis a vis de notre fonction :
Code:
string- > string -> (string *'a) list -> (string * 'a) list = <fun>
- une fonction pour changer le type d'une valeur en String.
On doit :
- Créer une fonction dans laquelle on entre le nom d'une personne, le nom qu'on souhaite lui attribuer pour remplacer l'ancien et la liste l.
Voila ce que j'ai et ça marche pas je comprends pas pourquoi... (la liste est defini plus haut dans mon code).
Code:
1 2 3 4 5 6 7
| let rec change_name ancien_nom nouveau_nom l =
let ancien_nom = String.lowercase ancien_nom and nouveau_nom = String.lowercase nouveau_nom in
match l with
|[]-> []
|(m,w)::l when m = ancien_nom -> (nouveau_nom,w)::l
|(m,w)::l when m > ancien_nom -> (m,w)::l
|(m,w)::l when m < ancien_nom -> (m,w)::(name ancien_nom nouveau_nom l);; |
Merci d'avance...