【发布时间】:2016-05-08 18:57:25
【问题描述】:
我的任务是创建一个素数列表,但仅包含以下信息:
-列表必须是无限的
-我必须检查n > 1的素数
-如果有一个变量2 <= k < n-2,它除以n,那么它不是素数,如果它不除n,它是
-没有功能!
于是我开始写这样的代码:
primes = [n| n<-[2,3..],k<-[2,3..], if (k>=2) && (k<=(n-2))
then if n `mod` k /= 0 then n else return ()
else return () ]
但随后出现以下错误:“无法将预期类型'Bool'与实际类型匹配”
这是因为return (),但我不知道如何替换这个return。
希望得到帮助。
【问题讨论】:
标签: haskell list-comprehension primes