Multifactorial: Difference between revisions

m
→‎{{header|Haskell}}: Added type signatures, applied Ormolu.
m (→‎{{header|Haskell}}: Added type signatures, applied Ormolu.)
Line 882:
 
=={{header|Haskell}}==
<lang haskell>mulfac k:: =(Num 1:sa, whereEnum sa) => [1 .. k] ++ zipWith (*)a s-> [k+1..a]
mulfac k = 1 : s
where
s = [1 .. k] <> zipWith (*) s [k + 1 ..]
 
-- forFor single n:
mulfac1 k n = product [n, n-k .. 1]
 
mulfac1 :: (Num a, Enum a) => a -> a -> a
main = mapM_ (print . take 10 . tail . mulfac) [1..5]</lang>
mulfac1 k n = product [n, n - k .. 1]
 
main :: IO ()
main =
mapM_
main = mapM_ (print . take 10 . tail . mulfac) [1..5]</lang>
[1 .. 5]
</prelang>
{{out}}
<pre>[1,2,6,24,120,720,5040,40320,362880,3628800]
<pre>
[1,2,6,24,120,720,5040,40320,362880,3628800]
[1,2,3,8,15,48,105,384,945,3840]
[1,2,3,4,10,18,28,80,162,280]
[1,2,3,4,5,12,21,32,45,120]
[1,2,3,4,5,6,14,24,36,50]</pre>
</pre>
 
==Icon and {{header|Unicon}}==
9,655

edits