Find adjacent primes which differ by a square integer: Difference between revisions

m
Moved Wren into alphabetical order.
(add fermat)
m (Moved Wren into alphabetical order.)
Line 108:
981823 981887 64
997813 997877 64
</pre>
 
=={{header|Wren}}==
{{libheader|Wren-math}}
{{libheader|Wren-fmt}}
<lang ecmascript>import "./math" for Int
import "./fmt" for Fmt
 
var limit = 1e6 - 1
var primes = Int.primeSieve(limit)
System.print("Adjacent primes under 1,000,000 whose difference is a square > 36:")
for (i in 1...primes.count) {
var diff = primes[i] - primes[i-1]
if (diff > 36) {
var s = diff.sqrt.floor
if (diff == s * s) {
Fmt.print ("$,7d - $,7d = $3d = $2d x $2d", primes[i], primes[i-1], diff, s, s)
}
}
}</lang>
 
{{out}}
<pre>
Adjacent primes under 1,000,000 whose difference is a square > 36:
89,753 - 89,689 = 64 = 8 x 8
107,441 - 107,377 = 64 = 8 x 8
288,647 - 288,583 = 64 = 8 x 8
368,021 - 367,957 = 64 = 8 x 8
381,167 - 381,103 = 64 = 8 x 8
396,833 - 396,733 = 100 = 10 x 10
400,823 - 400,759 = 64 = 8 x 8
445,427 - 445,363 = 64 = 8 x 8
623,171 - 623,107 = 64 = 8 x 8
625,763 - 625,699 = 64 = 8 x 8
637,067 - 637,003 = 64 = 8 x 8
710,777 - 710,713 = 64 = 8 x 8
725,273 - 725,209 = 64 = 8 x 8
779,477 - 779,413 = 64 = 8 x 8
801,947 - 801,883 = 64 = 8 x 8
803,813 - 803,749 = 64 = 8 x 8
821,741 - 821,677 = 64 = 8 x 8
832,583 - 832,519 = 64 = 8 x 8
838,349 - 838,249 = 100 = 10 x 10
844,841 - 844,777 = 64 = 8 x 8
883,871 - 883,807 = 64 = 8 x 8
912,167 - 912,103 = 64 = 8 x 8
919,511 - 919,447 = 64 = 8 x 8
954,827 - 954,763 = 64 = 8 x 8
981,887 - 981,823 = 64 = 8 x 8
997,877 - 997,813 = 64 = 8 x 8
</pre>
 
Line 294 ⟶ 244:
997877 997813 diff = 64
done...
</pre>
 
=={{header|Wren}}==
{{libheader|Wren-math}}
{{libheader|Wren-fmt}}
<lang ecmascript>import "./math" for Int
import "./fmt" for Fmt
 
var limit = 1e6 - 1
var primes = Int.primeSieve(limit)
System.print("Adjacent primes under 1,000,000 whose difference is a square > 36:")
for (i in 1...primes.count) {
var diff = primes[i] - primes[i-1]
if (diff > 36) {
var s = diff.sqrt.floor
if (diff == s * s) {
Fmt.print ("$,7d - $,7d = $3d = $2d x $2d", primes[i], primes[i-1], diff, s, s)
}
}
}</lang>
 
{{out}}
<pre>
Adjacent primes under 1,000,000 whose difference is a square > 36:
89,753 - 89,689 = 64 = 8 x 8
107,441 - 107,377 = 64 = 8 x 8
288,647 - 288,583 = 64 = 8 x 8
368,021 - 367,957 = 64 = 8 x 8
381,167 - 381,103 = 64 = 8 x 8
396,833 - 396,733 = 100 = 10 x 10
400,823 - 400,759 = 64 = 8 x 8
445,427 - 445,363 = 64 = 8 x 8
623,171 - 623,107 = 64 = 8 x 8
625,763 - 625,699 = 64 = 8 x 8
637,067 - 637,003 = 64 = 8 x 8
710,777 - 710,713 = 64 = 8 x 8
725,273 - 725,209 = 64 = 8 x 8
779,477 - 779,413 = 64 = 8 x 8
801,947 - 801,883 = 64 = 8 x 8
803,813 - 803,749 = 64 = 8 x 8
821,741 - 821,677 = 64 = 8 x 8
832,583 - 832,519 = 64 = 8 x 8
838,349 - 838,249 = 100 = 10 x 10
844,841 - 844,777 = 64 = 8 x 8
883,871 - 883,807 = 64 = 8 x 8
912,167 - 912,103 = 64 = 8 x 8
919,511 - 919,447 = 64 = 8 x 8
954,827 - 954,763 = 64 = 8 x 8
981,887 - 981,823 = 64 = 8 x 8
997,877 - 997,813 = 64 = 8 x 8
</pre>
9,476

edits