Prime numbers whose neighboring pairs are tetraprimes: Difference between revisions
Content added Content deleted
m (→{{header|Pascal}}: added Free in Free Pascal) |
(→{{header|XPL0}}: Change average to median) |
||
Line 1,387: | Line 1,387: | ||
Maximum gap between those 10,551 primes : 10,284 |
Maximum gap between those 10,551 primes : 10,284 |
||
</pre> |
</pre> |
||
=={{header|XPL0}}== |
=={{header|XPL0}}== |
||
Works on Raspberry Pi. |
|||
<syntaxhighlight lang "XPL0">include xpllib; \for Print |
<syntaxhighlight lang "XPL0">include xpllib; \for IsPrime, Sort, and Print |
||
func Median(A, Len); \Return median value of (sorted) array A |
|||
int A, Len, M; |
|||
[M:= Len/2; |
|||
return if rem(0) then A(M) else (A(M-1) + A(M)) / 2; |
|||
]; |
|||
int Have7; \ |
int Have7; \Boolean: a tetraprime factor is 7 |
||
func IsTetraprime(N); \Return 'true' if N is a tetraprime |
|||
int N; |
int N; |
||
int Div, Count, Distinct; |
int Div, Count, Distinct; |
||
Line 1,412: | Line 1,420: | ||
]; |
]; |
||
int Sign, TenPower, TP, Case, N, N0, Count, Count7, |
int Sign, TenPower, TP, Case, N, N0, Count, Count7, Gaps; |
||
[Sign:= -1; TenPower:= 100_000; |
[Sign:= -1; TenPower:= 100_000; |
||
for TP:= 5 to 7 do |
for TP:= 5 to 7 do |
||
[for Case:= 1 to 2 do \preceding or following neighboring pairs |
[for Case:= 1 to 2 do \preceding or following neighboring pairs |
||
[Count:= 0; Count7:= 0; N0:= 0; |
[Count:= 0; Count7:= 0; N0:= 0; Gaps:= 0; |
||
if TP = 5 then CrLf(0); \100_000 |
if TP = 5 then CrLf(0); \100_000 |
||
for N:= 3 to TenPower-1 do |
for N:= 3 to TenPower-1 do |
||
Line 1,430: | Line 1,438: | ||
if Have7 then Count7:= Count7+1; |
if Have7 then Count7:= Count7+1; |
||
if N0 # 0 then |
if N0 # 0 then |
||
[ |
[Gaps:= ReallocMem(Gaps, Count*4); \4 = SizeOfInt |
||
Gaps(Count-2):= N - N0; |
|||
if Gap > GapMax then GapMax:= Gap; |
|||
GapSum:= GapSum + Gap; |
|||
]; |
]; |
||
N0:= N; |
N0:= N; |
||
Line 1,440: | Line 1,446: | ||
N:= N+1; |
N:= N+1; |
||
]; |
]; |
||
Sort(Gaps, Count-1); |
|||
Print("\nFound %,d primes under %,d whose neighboring pair are tetraprimes\n", |
Print("\nFound %,d primes under %,d whose neighboring pair are tetraprimes\n", |
||
Count, TenPower); |
Count, TenPower); |
||
Print("of which %,d have a neighboring pair, one of whose factors is 7.\n\n", |
Print("of which %,d have a neighboring pair, one of whose factors is 7.\n\n", |
||
Count7); |
Count7); |
||
Print("Minimum gap between %d primes : %,d\n", Count, |
Print("Minimum gap between %,d primes : %,d\n", Count, Gaps(0)); |
||
Print(" |
Print("Median gap between %,d primes : %,d\n", Count, Median(Gaps, Count-1)); |
||
Print("Maximum gap between %,d primes : %,d\n", Count, Gaps(Count-2)); |
|||
Print("Maximum gap between %d primes : %,d\n", Count, GapMax); |
|||
Sign:= Sign * -1; |
Sign:= Sign * -1; |
||
]; |
]; |
||
Line 1,465: | Line 1,471: | ||
Minimum gap between 49 primes : 56 |
Minimum gap between 49 primes : 56 |
||
Median gap between 49 primes : 1,208 |
|||
Maximum gap between 49 primes : 6,460 |
Maximum gap between 49 primes : 6,460 |
||
Line 1,477: | Line 1,483: | ||
Minimum gap between 46 primes : 112 |
Minimum gap between 46 primes : 112 |
||
Median gap between 46 primes : 1,460 |
|||
Maximum gap between 46 primes : 10,284 |
Maximum gap between 46 primes : 10,284 |
||
Line 1,484: | Line 1,490: | ||
Minimum gap between 885 primes : 4 |
Minimum gap between 885 primes : 4 |
||
Median gap between 885 primes : 756 |
|||
Maximum gap between 885 primes : 7,712 |
Maximum gap between 885 primes : 7,712 |
||
Line 1,491: | Line 1,497: | ||
Minimum gap between 866 primes : 4 |
Minimum gap between 866 primes : 4 |
||
Median gap between 866 primes : 832 |
|||
Maximum gap between 866 primes : 10,284 |
Maximum gap between 866 primes : 10,284 |
||
Line 1,497: | Line 1,503: | ||
of which 5,176 have a neighboring pair, one of whose factors is 7. |
of which 5,176 have a neighboring pair, one of whose factors is 7. |
||
Minimum gap between |
Minimum gap between 10,815 primes : 4 |
||
Median gap between 10,815 primes : 648 |
|||
Maximum gap between |
Maximum gap between 10,815 primes : 9,352 |
||
Found 10,551 primes under 10,000,000 whose neighboring pair are tetraprimes |
Found 10,551 primes under 10,000,000 whose neighboring pair are tetraprimes |
||
of which 5,069 have a neighboring pair, one of whose factors is 7. |
of which 5,069 have a neighboring pair, one of whose factors is 7. |
||
Minimum gap between |
Minimum gap between 10,551 primes : 4 |
||
Median gap between 10,551 primes : 660 |
|||
Maximum gap between |
Maximum gap between 10,551 primes : 10,284 |
||
</pre> |
</pre> |