从数字中减少清单

时间:2018-09-16 21:11:42

标签: oz mozart

我需要创建一个X和Y(含)之间所有整数的递减列表。

我正在尝试:

declare
local
   fun {Dec From To}
      From | {Dec From-1 To}
   end
in
   {Browse {Loop 8 1}} % Should Display: [8, 7, 6, 5, 4, 3, 2, 1]
end

Mozart编译器显示该代码已被接受,但没有打开“浏览”窗口。

怎么了?

1 个答案:

答案 0 :(得分:2)

我认为什么也没显示,因为您的函数 Dec 是一个无限循环,因为您从未设置何时停止,这就是为什么不显示浏览窗口的原因。

该功能应为:

fun {Dec From To}
  if From == To then 
    nil
  else
    From | {Dec (From-1) To}
  end
end 

我希望这会有所帮助:)