【发布时间】:2016-03-05 03:58:30
【问题描述】:
我正在尝试通过创建一些基本函数来学习 Haskell。我目前正在尝试处理的函数称为primeFactors,它需要返回给定数字 n 的质因数列表。目前我有以下内容:
factors :: Integral a => a -> [a]
factors n = [x | x <- [1..n], n `mod` x == 0]
isPrime :: Integral a => a -> Bool
isPrime n = factors n == [1, n]
primeFactors :: Integral a => a -> [a]
primeFactors n = []
我认为我应该使用前两个函数,但我不确定如何使用。函数式编程对我来说是全新的。
最后,如果我这样称呼它:primeFactors 10 我希望它返回[5, 2]
感谢任何帮助。提前致谢。
【问题讨论】:
-
"factors" 只需要考虑 x div 2]。想想吧。