Find prime n such that reversed n is also prime: Difference between revisions

Add Cowgol
(Add PL/I)
(Add Cowgol)
Line 352:
<pre>2 3 5 7 11 13 17 31 37 71 73 79 97 101 107 113 131 149 151 157 167 179 181 191 199 311 313 337 347 353 359 373 383 389</pre>
 
=={{header|Cowgol}}==
<lang cowgol>include "cowgol.coh";
 
const PRIME_LIMIT := 999;
const LIMIT := 500;
 
var prime: uint8[PRIME_LIMIT + 1];
typedef P is @indexof prime;
sub sieve() is
prime[0] := 0;
prime[1] := 0;
MemSet(&prime[2], 0xFF, @bytesof prime-2);
var p: P := 2;
while p*p <= PRIME_LIMIT loop
if prime[p] != 0 then
var c := p*p;
while c <= PRIME_LIMIT loop
prime[c] := 0;
c := c + p;
end loop;
end if;
p := p + 1;
end loop;
end sub;
 
sub reverse(n: P): (r: P) is
r := 0;
while n>0 loop
r := 10*r + n%10;
n := n/10;
end loop;
end sub;
 
sieve();
var n: P := 1;
while n <= LIMIT loop
if prime[n] != 0 and prime[reverse(n)] != 0 then
print_i32(n as uint32);
print_char(' ');
end if;
n := n + 1;
end loop;
print_nl();</lang>
{{out}}
<pre>2 3 5 7 11 13 17 31 37 71 73 79 97 101 107 113 131 149 151 157 167 179 181 191 199 311 313 337 347 353 359 373 383 389</pre>
=={{header|Delphi}}==
{{libheader| System.SysUtils}}
2,094

edits