Factors of an integer: Difference between revisions
Content added Content deleted
(→{{Header|Haskell}}: List comprehension) |
(→List comprehension: Factor, cofactor. Rearrange a list of tuples to a sorted list) |
||
Line 1,027: | Line 1,027: | ||
=== List comprehension === |
=== List comprehension === |
||
Naive, functional, no import |
Naive, functional, no import |
||
<lang Haskell> |
<lang Haskell>factors_naive n = [i | i <-[1..n], (mod n i) == 0]</lang> |
||
<lang Haskell> |
<lang Haskell>factors_naive 6 |
||
[1,2,3,6] |
|||
</lang> |
|||
Factor, cofactor. Rearrange a list of tuples to a sorted list |
|||
<lang Haskell>import Data.List |
|||
tuple_to_list lt = (fst lt) ++ (snd lt) |
|||
factors_co n = sort (tuple_to_list(unzip |
|||
[ (j, (div n j)) | j <- |
|||
[i | i <- |
|||
[1..truncate (sqrt (fromIntegral n))] |
|||
, (mod n i) == 0]] )) |
|||
</lang> |
|||
<lang Haskell>factors_co 6 |
|||
[1,2,3,6] |
[1,2,3,6] |
||
</lang> |
</lang> |