我有问题: 编写一个名为minimum6的函数,它接受6个参数并返回最小的参数。 示例:minimum6 10 20 30 40 50 60 = 10
这是我到目前为止所得到的:
让min a b =如果a< b然后a b ;; 设最小6 x1 x2 x3 x4 x5 x6 = min(min(min(min(min x1 x2)x3)x4)x5)x6);;
然而,我得到'这个表达式有类型int但是表达式需要'a - >类型'b'指向第一个'10' 我是语言的新手,我做错了什么?是因为我在函数中使用了函数吗?
答案 0 :(得分:1)
你有一些括号问题。 :)
你也可以做一些更普遍的事情。类似的东西:
let rec list_min min = function
| [] -> min
| x::xs -> if x < min then list_min x xs else list_min min xs
let min6 x1 .. x6 = list_min x1 [x2; ...; x6]