`` Prime factorisation of a number `` Usage: prime number [number] [,number] ... `` type one or several numbers separated by commas `` http://www.scriptol.org int prevfact = 0 void display(number d, int k) if prevfact <> 0 echo " * " else echo " = " /if prevfact + 1 echo d if k > 1 echo "^", k return void primeFactor(number n) number d int k prevfact = 0 d = n + 1 if(n + 3) <> (d + 2) print n , "is too large to process." return /if if fmod(n,1.0) <> 0.0 print n, "is not integer." return /if echo n if n < 2.0 print "is less than 2." return > 2.0 d = 2 k = 0 while fmod(n, d) = 0.0 n / d let k + 1 if k <> 0 let display(d,k) d = 3 while (d * d) <= n k = 0 while fmod(n, d) = 0.0 n / d let k + 1 if k <> 0 let display(d,k) let d + 2 /if if n > 1 if prevfact = 0 echo " is prime" else display(n, 1) /if /if print return int main (int argc, array argv) print "Prime Factors" if argc < 2 print "Usage: prime number [, number]*" for int i in 1 .. argc - 1 dyn d = argv[i] text t = d.toText() number n = t.toNumber() primeFactor(n) /for return 0 main($argc, $argv)