Quadrat special primes: Difference between revisions
m
syntax highlighting fixup automation
(J) |
Thundergnat (talk | contribs) m (syntax highlighting fixup automation) |
||
Line 10:
{{trans|Nim}}
<
I n == 2
R 1B
Line 35:
print(‘Quadrat special primes < 16000:’)
L(qp) quadraPrimes
print(‘#5’.format(qp), end' I (L.index + 1) % 7 == 0 {"\n"} E ‘ ’)</
{{out}}
Line 51:
=={{header|Action!}}==
{{libheader|Action! Sieve of Eratosthenes}}
<
DEFINE MAX="15999"
Line 93:
p=FindNextQuadraticPrime(p)
OD
RETURN</
{{out}}
[https://gitlab.com/amarok8bit/action-rosetta-code/-/raw/master/images/Quadrat_Special_Primes.png Screenshot from Atari 8-bit computer]
Line 105:
{{Trans|ALGOL W}}
{{libheader|ALGOL 68-primes}}
<
# an array of squares #
PROC get squares = ( INT n )[]INT:
Line 132:
DO sq pos +:= 2 OD
OD
END</
{{out}}
<pre>
Line 143:
=={{header|ALGOL W}}==
<
% sets p( 1 :: n ) to a sieve of primes up to n %
procedure Eratosthenes ( logical array p( * ) ; integer value n ) ;
Line 185:
end while_thisPrime_lt_MAX_NUMBER
end
end.</
{{out}}
<pre>
Line 195:
</pre>
=={{header|AWK}}==
<syntaxhighlight lang="awk">
# syntax: GAWK -f QUADRAT_SPECIAL_PRIMES.AWK
# converted from FreeBASIC
Line 228:
return(1)
}
</syntaxhighlight>
{{out}}
<pre>
Line 243:
==={{header|Applesoft BASIC}}===
{{trans|BASIC256}}
<
110 PRINT S$P;
120 LET S$ = " "
Line 264:
290 IF NOT ISPRIME THEN RETURN
300 NEXT D
310 RETURN</
==={{header|BASIC256}}===
<
if v < 2 then return False
if v mod 2 = 0 then return v = 2
Line 291:
j = 1
end while
end</
==={{header|PureBasic}}===
<
If v <= 1 : ProcedureReturn #False
ElseIf v < 4 : ProcedureReturn #True
Line 333:
ForEver
Input()
CloseConsole()</
==={{header|Yabasic}}===
<
if v < 2 then return False : fi
if mod(v, 2) = 0 then return v = 2 : fi
Line 361:
j = 1
loop
end</
=={{header|Factor}}==
{{works with|Factor|0.98}}
<
2 [ 1 lfrom swap '[ sq _ + ] lmap-lazy [ prime? ] lfilter car ]
lfrom-by [ 16000 < ] lwhile [ pprint bl ] leach nl</
{{out}}
<pre>
Line 375:
=={{header|FreeBASIC}}==
<
#include "isprime.bas"
Line 391:
loop
print
</syntaxhighlight>
{{out}}
<pre>
Line 399:
=={{header|Go}}==
{{trans|Wren}}
<
import (
Line 473:
}
fmt.Println("\n", count+1, "such primes found.")
}</
{{out}}
Line 481:
=={{header|J}}==
<
j=. 0
r=. 2
Line 488:
end.
}} p:i.p:inv 16e3
2 3 7 11 47 83 227 263 587 911 947 983 1019 1163 1307 1451 1487 1523 1559 2459 3359 4259 4583 5483 5519 5843 5879 6203 6779 7103 7247 7283 7607 7643 8219 8363 10667 11243 11279 11423 12323 12647 12791 13367 13691 14591 14627 14771 15671</
=={{header|jq}}==
'''Adaptation of [[#Julia|Julia]]
Line 495:
For the definition of `is_prime` used here, see https://rosettacode.org/wiki/Additive_primes
<syntaxhighlight lang="jq">
# Input: a number > 2
# Output: an array of the quadrat primes less than `.`
Line 516:
"Quadrat special primes < 16000:",
(16000 | quadrat[])
</syntaxhighlight>
{{out}}
<pre>
Line 530:
=={{header|Julia}}==
<
function quadrat(N = 16000)
Line 550:
println("Quadrat special primes < 16000:")
foreach(p -> print(rpad(p[2], 6), p[1] % 10 == 0 ? "\n" : ""), enumerate(quadrat()))
</
<pre>
Quadrat special primes < 16000:
Line 561:
=={{header|Ksh}}==
<
#!/bin/ksh
Line 613:
done
printf "\n"
</syntaxhighlight>
{{out}}<pre>
2 3 7 11 47 83 227 263 587 911 947 983 1019 1163 1307 1451 1487 1523 1559 2459 3359 4259 4583 5483 5519 5843 5879 6203 6779 7103 7247 7283 7607 7643 8219 8363 10667 11243 11279 11423 12323 12647 12791 13367 13691 14591 14627 14771 15671
Line 619:
=={{header|Mathematica}}/{{header|Wolfram Language}}==
<
Do[
Do[
Line 636:
];
ps //= Most;
Multicolumn[ps, {Automatic, 7}, Appearance -> "Horizontal"]</
{{out}}
<pre>2 3 7 11 47 83 227
Line 647:
=={{header|Nim}}==
<
func isPrime(n: Natural): bool =
Line 685:
for qp in quadraPrimes(Max):
inc count
stdout.write ($qp).align(5), if count mod 7 == 0: '\n' else: ' '</
{{out}}
Line 699:
=={{header|Perl}}==
{{libheader|ntheory}}
<
use warnings;
use feature 'say';
Line 712:
} until $sp[-1] >= 16000;
pop @sp and say ((sprintf '%-7d'x@sp, @sp) =~ s/.{1,$#sp}\K\s/\n/gr);</
{{out}}
<pre>2 3 7 11 47 83 227
Line 723:
=={{header|Phix}}==
<!--<
<span style="color: #008080;">constant</span> <span style="color: #000000;">desc</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">split</span><span style="color: #0000FF;">(</span><span style="color: #008000;">"linear quadratic cubic quartic quintic sextic septic octic nonic decic"</span><span style="color: #0000FF;">),</span>
<span style="color: #000000;">limits</span> <span style="color: #0000FF;">=</span> <span style="color: #0000FF;">{</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">16000</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">15000</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">14e9</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">8025e5</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">25e12</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">195e12</span><span style="color: #0000FF;">,</span><span style="color: #000000;">75e11</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">3e9</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">11e8</span><span style="color: #0000FF;">}</span>
Line 745:
<span style="color: #7060A8;">printf</span><span style="color: #0000FF;">(</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"Found %d %s special primes < %g:\n%s\n"</span><span style="color: #0000FF;">,{</span><span style="color: #7060A8;">length</span><span style="color: #0000FF;">(</span><span style="color: #000000;">res</span><span style="color: #0000FF;">),</span><span style="color: #000000;">desc</span><span style="color: #0000FF;">[</span><span style="color: #000000;">p</span><span style="color: #0000FF;">],</span><span style="color: #000000;">N</span><span style="color: #0000FF;">,</span><span style="color: #000000;">r</span><span style="color: #0000FF;">})</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">for</span>
<!--</
{{out}}
<pre>
Line 786:
=={{header|Python}}==
<
def isPrime(n):
Line 808:
break
print(p, end = " ");
j = 1</
=={{header|Raku}}==
<syntaxhighlight lang="raku"
my $next;
for (1..∞).map: *² {
Line 822:
say "{+$_} matching numbers:\n", $_».fmt('%5d').batch(7).join: "\n" given
@sqp[^(@sqp.first: * > 16000, :k)];</
{{out}}
<pre>49 matching numbers:
Line 834:
=={{header|REXX}}==
<
/*─────────────────────────────────────────────────── are the smallest quadrat numbers. */
parse arg hi cols . /*obtain optional argument from the CL.*/
Line 883:
end /*k*/ /* [↑] only process numbers ≤ √ J */
#= #+1; @.#= j; s.#= j*j; !.j= 1 /*bump # of Ps; assign next P; P²; P# */
end /*j*/; return</
{{out|output|text= when using the default inputs:}}
<pre>
Line 899:
=={{header|Ring}}==
<
/* Searching for the smallest prime gaps under a limit,
Line 942:
s = string(x) l = len(s)
if l > y y = l ok
return substr(" ", 11 - y + l) + s</
{{out}}
<pre style="height:20em">working...
Line 1,072:
=={{header|Sidef}}==
<
var prev = 2
Line 1,089:
take(k)
})
}</
{{out}}
<pre>
Line 1,098:
{{libheader|Wren-math}}
{{libheader|Wren-fmt}}
<
import "/fmt" for Fmt
Line 1,121:
}
}
System.print("\n%(count+1) such primes found.")</
{{out}}
Line 1,181:
=={{header|XPL0}}==
Find primes where the difference between the current one and a following one is a perfect square.
<
int N, I;
[if N <= 1 then return false;
Line 1,206:
Text(0, " such primes found below 16000.
");
]</
{{out}}
|