RosettaCodeData/Task/M-bius-function/Quackery/m-bius-function.quackery

28 lines
538 B
Plaintext

[ false swap
behead swap
[ witheach
[ tuck != if
done
dip not
conclude ] ]
drop ] is square ( [ --> b )
[ 1 & ] is odd ( n --> b )
[ dup 1 = if done
primefactors
dup square iff
[ drop 0 ] done
size odd iff
-1 else 1 ] is mobius ( n --> n )
say "First 199 terms:" cr
say " "
199 times
[ i^ 1+ mobius
dup -1 > if sp
echo
i^ 1+ 20 mod
19 = iff cr
else [ sp sp ] ]