with(NumberTheory): primorial := proc(n::integer) local total := 1: local count: for count from 1 to n do total *= ithprime(count): end: return total; end proc: primorialDigits := proc(n::integer) local logSum := 0: local count: for count from 1 to n do logSum += log10(ithprime(count)): end: return ceil(logSum); end proc: print("The first 10 primorial numbers"); for count from 0 to 9 do cat("primorial(", count, ") = ", primorial(count)) end; for expon from 1 to 5 do cat("primorial(", 10^expon, ") has ", primorialDigits(10^expon), " digits"); end;