Factors of an integer: Difference between revisions

m
→‎{{header|Haskell}}: guards rather than if-then-else
m (→‎{{header|Haskell}}: guards rather than if-then-else)
Line 2,546:
 
<lang Haskell>integerFactors :: Int -> [Int]
integerFactors n =
if| 1 > n <= 1[]
| otherwise = lows ++ fmap (quot n) (part n (reverse lows))
then []
else lows ++
fmap
(quot n)
((if n == square
then tail
else id)
(reverse lows))
where
thenpart []n
((if| n == square = tail
| otherwise = id
(square, lows) =
(,) . (^ 2) <*> (filter ((0 ==) . rem n) . enumFromTo 1) $
9,655

edits