gpt4 book ai didi

haskell - 在 haskell 中创建可整除整数列表

转载 作者:行者123 更新时间:2023-12-05 09:15:05 29 4
gpt4 key购买 nike

我是 haskell 的新手,我正在尝试创建一个表达式,它给出一个从 0 到 n 的整数列表,这些整数可以被 3 整除。我写的脚本不起作用,我不确定是什么原因。

zeroto :: Int -> [Int]
zeroto n = [x | x <- [0..n]]
where
x "mod" 3 == 0

最佳答案

where 不是那样工作的。它不是过滤器——它是局部范围的定义。

但是,列表理解允许过滤器,只是您没有将它放在正确的位置。

zeroto :: Int -> [Int]
zeroto n = [x | x <- [0..n], x `mod` 3 == 0]

或者,您可以在 where block 中定义一个过滤器函数,然后再进行过滤,但这有点傻。

zeroto :: Int -> [Int]
zeroto n = divisibleByThree [0..n]
where divisibleByThree = filter (\x -> x `mod` 3 == 0)

关于haskell - 在 haskell 中创建可整除整数列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53091462/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com