我在这段代码中不断收到未绑定的值错误:
let count element list =
let counter = 0 in
for i = 0 to List.length list do
if element == List.i list then
counter = counter + 1
else
counter = counter
done ;;
代码应该从用户获取列表和值,然后计算该值在该列表中出现的次数,但我不断收到此错误:
Error: Unbound value List.i
我仍然是Ocaml的初学者,任何帮助将不胜感激。
List.i
不存在Ocaml
。
您正在尝试检查列表中的第i个元素是否等于元素。
List.nth
做到了这一点:
List.nth list i
代替
List.i list
最终代码:
let count element list =
let counter = ref 0 in
for i = 0 to (List.length list - 1) do
if element == List.nth list i then
counter := !counter + 1
else
counter := !counter
done ;
!counter;;