This commit is contained in:
Ingy döt Net 2013-04-10 21:29:02 -07:00
parent 764da6cbbb
commit db842d013d
19005 changed files with 197040 additions and 7 deletions

View file

@ -0,0 +1,22 @@
procedure main()
every writes(primeTest(901 to 1000, 10)," ")
write()
end
procedure primeTest(n, k)
if n = 2 then return n
if n%2 = 0 then fail
s := 0
d := n-1
while (d%2 ~= 0, s+:=1, d/:=2)
every (1 to k, x := ((1+?(n-2))^d)%n) do {
if x = (1 | (n-1)) then next
every (1 to s-1, x := (x^2)%n) do {
if x = 1 then fail
if x = n-1 then break next
}
fail
}
return n
end