Magic squares of doubly even order: Difference between revisions
Content added Content deleted
m (→{{header|AppleScript}}: ( slight reordering )) |
|||
Line 602: | Line 602: | ||
limit = sqr + 1 |
limit = sqr + 1 |
||
series |
series |
||
-- For |
-- For powers of 2, the (append not) 'magic' series directly |
||
-- yields the truth table that we need |
-- yields the truth table that we need |
||
| isPowerOf 2 n = |
| isPowerOf 2 n = |
||
magicSeries $ floor (logBase 2 (fromIntegral sqr)) |
magicSeries $ floor (logBase 2 (fromIntegral sqr)) |
||
-- where n is not |
-- where n is not a power of 2, we can replicate a |
||
-- minimum truth table, horizontally and vertically |
-- minimum truth table, horizontally and vertically |
||
| otherwise = (concat |
| otherwise = (concat . concat . concat . |
||
scale |
scale . fmap scale $ splitEvery 4 $ magicSeries 4) |
||
where |
where |
||
scale = replicate $ quot n 4 |
scale = replicate $ quot n 4 |