【发布时间】:2018-10-02 14:57:21
【问题描述】:
我的问题是:
我有一个列表和一个数字,我想把这个数字加到列表中,这样我就可以做到这一点
Adding ls n = [x+n| x<-ls]
它有效。
我的问题是我想根据列表的长度添加n+1、n+2、n+3。
如果我这样做了
let b = 0
Adding´ ls n = [x+adder n b| x<-ls] where adder n b= n+b,b++
它不起作用,因为 b 没有前进,所以如果我有 Adding´ [1,3,4] 3 = [4,7,9] 。
【问题讨论】:
-
adding xs n = zipWith (+) xs [n..] = [x+i | (x,i) <- zip xs [n..]]。这是你的意思吗?