The classical Möbius function: μ(n) is an important multiplicative function in number theory and combinatorics.

There are several ways to implement a Möbius function.

A fairly straightforward method is to find the prime factors of a positive integer n, then define μ(n) based on the sum of the primitive factors. It has the values {−1, 0, 1} depending on the factorization of n:

 μ(1) is defined to be 1.
 μ(n) = 1 if n is a square-free positive integer with an even number of prime factors.
 μ(n) = −1 if n is a square-free positive integer with an odd number of prime factors.
 μ(n) = 0 if n has a squared prime factor.


Task

 Write a routine (function, procedure, whatever) μ(n) to find the Möbius number for a positive integer n.
 Use that routine to find and display here, on this page, at least the first 99 terms in a grid layout. (Not just one long line or column of numbers.)


See also

 Wikipedia: Möbius function


Related Tasks

 Mertens function


    PRINT "Enter an integer"
    INPUT N
    IF N < 0 THEN LET N = -N
    IF N < 2 THEN GOTO 100 + N
    LET C = 1
    LET F = 2
 10 IF ((N/F)/F)*F*F = N THEN GOTO 100
    IF (N/F)*F = N THEN GOTO 30
 20 LET F = F + 1
    IF F<=N THEN GOTO 10
    GOTO 100 + C
 30 LET N = N / F
    LET C = -C
    GOTO 20
 99 PRINT "-1"
    END
100 PRINT "0"
    END
101 PRINT "1"
    END