Thanks for catching that. I just noticed the bug in my code, which is: although I'm caching prime numbers, I'm not testing all of them as potential factors.
I'll go update the code now, but you're right; there needs to be a check for division by 2.
s''(q.S:$/9=(T1';s;(..)(..);$..=substr+crypt($1,$2),2,3;eg;print$..$/
| [reply] [Watch: Dir/Any] |
thanks, your code is much faster than mine, and now it produce the same
figure as in the http://en.wikipedia.org/wiki/Ulam_spiral
after we invert the colors
one small note is that your code will plot number 1 as a prime number,
we can find this if we insert
print "number of primes = $NumOfPrimes \n"; before the mainloop; and
try the program with number 10 , it will give us the number of primes is 5
as a variation i suggest for the invistigators for small spirals to replace the
main plotting code:
$c->createText( $x*+$o, $y+$o, -fill => "$colr", -text => '.');
with
$c->createText( $x*30+$o, $y*30+$o, -fill => "$colr", -text => "$num");
so we can see numbers instead of dots in wich the primes will be in white
color , the factor 30 above is for magnification of the plotting.
| [reply] [Watch: Dir/Any] |