如何在 Erlang 中使用递归函数以这种方式生成偶数。
注意:输出列表的长度是函数func
例子:
> mod:func(5).
[2,4,6,8,10]
最佳答案
在 erlang 中有很多方法可以做到这一点,我建议:
使用序列生成器
doubles(Number)-> lists:seq(2,Number*2,2).
使用列表理解
doubles(Number)-> [X*2 || X <- lists:seq(1,Number)].
递归方式
doubles(Max)-> doubles(1,Max). doubles(Max,Max)-> [Max*2]; doubles(Val,Max)-> [Val*2]++doubles2(Val+1,Max).
关于recursion - 如何使用递归函数在 erlang 中列出偶数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36033868/