Special neighbor primes: Difference between revisions
Content added Content deleted
(add fermat) |
(add C) |
||
Line 93: | Line 93: | ||
Special neighbor primes 3-99: 13 |
Special neighbor primes 3-99: 13 |
||
</pre> |
</pre> |
||
=={{header|C}}== |
|||
<lang c>#include<stdio.h> |
|||
#include<stdlib.h> |
|||
int isprime( int p ) { |
|||
int i; |
|||
if(p==2) return 1; |
|||
if(!(p%2)) return 0; |
|||
for(i=3; i*i<=p; i+=2) { |
|||
if(!(p%i)) return 0; |
|||
} |
|||
return 1; |
|||
} |
|||
int nextprime( int p ) { |
|||
int i=0; |
|||
if(p==0) return 2; |
|||
if(p<3) return p+1; |
|||
while(!isprime(++i + p)); |
|||
return i+p; |
|||
} |
|||
int main(void) { |
|||
int p1, p2; |
|||
for(p1=3;p1<=99;p1+=2) { |
|||
p2=nextprime(p1); |
|||
if(p2<100&&isprime(p1)&&isprime(p2+p1-1)) { |
|||
printf( "%d + %d - 1 = %d\n", p1, p2, p1+p2-1 ); |
|||
} |
|||
} |
|||
return 0; |
|||
}</lang> |
|||
{{out}}<pre>3 + 5 - 1 = 7 |
|||
5 + 7 - 1 = 11 |
|||
7 + 11 - 1 = 17 |
|||
11 + 13 - 1 = 23 |
|||
13 + 17 - 1 = 29 |
|||
19 + 23 - 1 = 41 |
|||
29 + 31 - 1 = 59 |
|||
31 + 37 - 1 = 67 |
|||
41 + 43 - 1 = 83 |
|||
43 + 47 - 1 = 89 |
|||
61 + 67 - 1 = 127 |
|||
67 + 71 - 1 = 137 |
|||
73 + 79 - 1 = 151 |
|||
</pre> |
|||
=={{header|F_Sharp|F#}}== |
=={{header|F_Sharp|F#}}== |