Jump to content

Quadrat special primes: Difference between revisions

→‎{{header|Phix}}: added cubic code
(Added Go)
(→‎{{header|Phix}}: added cubic code)
Line 226:
 
=={{header|Phix}}==
{{trans|Julia}}
<!--<lang Phix>-->
<span style="color: #008080;">function</span> <span style="color: #000000;">quadrat</span><span style="color: #0000FF;">(</span><span style="color: #004080;">integeratom</span> <span style="color: #000000;">N</span><span style="color: #0000FF;">=</span><span style="color: #000000;">16000</span><span style="color: #0000FF;">)</span>
<span style="color: #004080;">sequence</span> <span style="color: #000000;">qprimesdesc</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">split</span><span style="color: #0000FF;">{(</span><span style="color: #000000008000;">2"linear quadratic cubic quartic quintic sextic septic"</span><span style="color: #0000FF;">})</span>
<span style="color: #004080008080;">integerfor</span> <span style="color: #000000;">lastnp</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8000000;">floor2</span> <span style="color: #0000FF008080;">(to</span> <span style="color: #7060A8;">sqrtlength</span><span style="color: #0000FF;">(</span><span style="color: #000000;">Ndesc</span><span style="color: #0000FF;">))</span> <span style="color: #008080;">do</span>
<span style="color: #7060A8004080;">printfinteger</span> <span style="color: #000000;">lastn</span> <span style="color: #0000FF;">(=</span> <span style="color: #000000;">1ceil</span><span style="color: #0000FF;">,(</span><span style="color: #0080007060A8;">power</span><span style="Foundcolor: %d quadrat special primes &lt#0000FF;">(</span><span 16,000style="color:\n #000000;">N</span><span style="color: #0000FF;">,</span><span style="color: #7060A8000000;">length1</span><span style="color: #0000FF;">(/</span><span style="color: #000000;">qspp</span><span style="color: #0000FF;">))</span>
<span style="color: #008080;">while</span> <span style="color: #004600;">true</span> <span style="color: #008080;">do</span>
<span style="color: #004080;">sequence</span> <span style="color: #000000;">res</span> <span style="color: #0000FF;">=</span> <span style="color: #0000FF;">{</span><span style="color: #000000;">2</span><span style="color: #0000FF;">}</span>
<span style="color: #004080;">bool</span> <span style="color: #000000;">done</span> <span style="color: #0000FF;">=</span> <span style="color: #004600;">false</span>
<span style="color: #008080;">while</span> <span style="color: #008080;">not</span> <span style="color: #000000;">done</span> <span style="color: #008080;">do</span>
<span style="color: #008080;">for</span> <span style="color: #000000;">n</span><span style="color: #0000FF;">=</span><span style="color: #000000;">1</span> <span style="color: #008080;">to</span> <span style="color: #000000;">lastn</span> <span style="color: #008080;">do</span>
<span style="color: #004080;">integeratom</span> <span style="color: #000000;">qm</span> <span style="color: #0000FF;">=</span> <span style="color: #000000;">qprimesres</span><span style="color: #0000FF;">[$]</span> <span style="color: #0000FF;">+</span> <span style="color: #7060A8;">power</span><span style="color: #0000FF;">(</span><span style="color: #000000;">n</span><span style="color: #0000FF;">*,</span><span style="color: #000000;">np</span><span style="color: #0000FF;">)</span>
<span style="color: #008080;">if</span> <span style="color: #000000;">qm</span><span style="color: #0000FF;">></span><span style="color: #000000;">N</span> <span style="color: #008080;">then</span>
<span style="color: #008080000000;">returndone</span> <span style="color: #0000000000FF;">=</span> <span style="color: #004600;">qprimestrue</span>
<span style="color: #008080;">elsif</span> <span style="color: #7060A8;">is_prime</span><span style="color: #0000FF;">(</span><span style="color: #000000;">q</span><span style="color: #0000FF;">)</span> <span style="color: #008080;">thenexit</span>
<span style="color: #008080;">elsif</span> <span style="color: #7060A8;">is_prime</span><span style="color: #0000000000FF;">qprimes(</span><span style="color: #000000;">m</span><span style="color: #0000FF;">&=)</span> <span style="color: #000000008080;">qthen</span>
<span style="color: #008080000000;">whileres</span> <span style="color: #0046000000FF;">true&=</span> <span style="color: #008080000000;">dom</span>
<span style="color: #008080;">exit</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">if</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">for</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">while</span>
<span style="color: #7060A8;">puts</span> <span style="color: #0000FF004080;">(string</span> <span style="color: #000000;">1r</span> <span style="color: #0000FF;">,=</span> <span style="color: #7060A8;">join_by</span><span style="color: #0000FF;">(</span><span style="color: #7060A8;">apply</span><span style="color: #0000FF;">(</span><span style="color: #004600;">true</span><span style="color: #0000FF;">,</span><span style="color: #7060A8;">sprintf</span><span style="color: #0000FF;">,{{</span><span style="color: #008000;">"%,6d"</span><span style="color: #0000FF;">},</span><span style="color: #000000;">qspres</span><span style="color: #0000FF;">}),</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #000000;">7p</span><span style="color: #0000FF;">+</span><span style="color: #000000;">5</span><span style="color: #0000FF;">))</span>
<span style="color: #008080;">end</span> <span style="color: #008080;">function</span>
<span style="color: #0040807060A8;">sequenceprintf</span><span style="color: #0000FF;">(</span><span style="color: #000000;">qsp1</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"Found %d %s special primes &lt; %,d:\n%s\n"</span><span style="color: #0000FF;">,{</span><span style="color: #7060A8;">length</span><span style="color: #0000FF;">(</span><span style="color: #000000;">quadratres</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;">functionfor</span>
<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 quadrat special primes &lt; 16,000:\n"</span><span style="color: #0000FF;">,</span><span style="color: #7060A8;">length</span><span style="color: #0000FF;">(</span><span style="color: #000000;">qsp</span><span style="color: #0000FF;">))</span>
<span style="color: #7060A8;">puts</span><span style="color: #0000FF;">(</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #7060A8;">join_by</span><span style="color: #0000FF;">(</span><span style="color: #7060A8;">apply</span><span style="color: #0000FF;">(</span><span style="color: #004600;">true</span><span style="color: #0000FF;">,</span><span style="color: #7060A8;">sprintf</span><span style="color: #0000FF;">,{{</span><span style="color: #008000;">"%,6d"</span><span style="color: #0000FF;">},</span><span style="color: #000000;">qsp</span><span style="color: #0000FF;">}),</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #000000;">7</span><span style="color: #0000FF;">))</span>
<!--</lang>-->
{{out}}
<pre>
Found 49 quadratquadratic special primes < 16,000:
2 3 7 11 47 83 227
263 587 911 947 983 1,019 1,163
Line 257 ⟶ 259:
8,363 10,667 11,243 11,279 11,423 12,323 12,647
12,791 13,367 13,691 14,591 14,627 14,771 15,671
 
Found 23 cubic special primes < 16,000:
2 3 11 19 83 1,811 2,027 2,243
2,251 2,467 2,531 2,539 3,539 3,547 4,547 5,059
10,891 12,619 13,619 13,627 13,691 13,907 14,419
 
Found 3 quartic special primes < 16,000:
2 3 19
 
Found 2 quintic special primes < 16,000:
2 3
 
Found 4 sextic special primes < 16,000:
2 3 67 131
 
Found 3 septic special primes < 16,000:
2 3 131
</pre>
 
7,820

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.