Bonjour,
je ne comprends pas le message d'erreur de Caml quand je tente de compiler ce code :
Message d'erreur de Caml :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 let base = 10000 ;; type nat == int list ;; (*Question 1*) let cons_nat c n = c::n ;; (*Question 2*) let add_nat n1 n2 = let rec add_avec_retenue n1 n2 retenue = match (n1,n2) with ([],_) -> n2 |(_,[]) -> n1 |(t1::q1,t2::q2) -> if (t1+t2) > base then ( t1+t2-base + retenue )::( add_avec_retenue q1 q2 1) in add_avec_retenue n1 n2 0 ;;Pourriez-vous m'expliquer comment corriger cette erreur ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 #Entrée interactive: > ....................if t1+t2 > base > then( t1+t2-base + retenue )::( add_avec_retenue q1 q2 1) Cette expression est de type unit, mais est utilisée avec le type int list.
Merci beaucoup
Partager