如何在Haskell中编写一个函数,它接受一个列表和一个数字,并删除大于该数字的所有元素并返回列表.
删除[5,4,3,9,1] 5应该返回[5,4,3,1]
我编写了以下方法,当它达到大于给定数字时,它变成无限循环.我出去了[5,4,3然后程序没有结束.
remove l1 x = if (null l1 == True)
then l1
else if (head l1 > x)
then remove (drop 0 l1) x
else ((head l1) : remove (tail l1) x)
Run Code Online (Sandbox Code Playgroud)
这是我第一次尝试Haskell程序,请告诉我这里我做错了什么.
谢谢
haskell ×1