Ormiston pairs: Difference between revisions

Content added Content deleted
 
Line 625: Line 625:
<syntaxhighlight>
<syntaxhighlight>
maxn = 1000000
maxn = 1000000
len isdiv[] maxn
len sieve[] maxn
proc sieve . .
proc mksieve . .
max = sqrt len isdiv[]
max = sqrt len sieve[]
for d = 2 to max
for d = 2 to max
if isdiv[d] = 0
if sieve[d] = 0
for i = d * d step d to len isdiv[]
for i = d * d step d to len sieve[]
isdiv[i] = 1
sieve[i] = 1
.
.
.
.
.
.
isdiv[] &= 0
sieve[] &= 0
.
.
mksieve
sieve
func nextprim n .
func nextprim n .
repeat
repeat
n += 1
n += 1
until isdiv[n] = 0
until sieve[n] = 0
.
.
return n
return n
.
.
#
func digs n .
func digs n .
while n > 0
while n > 0
Line 658: Line 659:
db = da
db = da
a = nextprim a
a = nextprim a
until a > 1000000
until a > maxn
da = digs a
da = digs a
if da = db
if da = db