Wolstenholme numbers: Difference between revisions

Added Wren
(J draft)
(Added Wren)
Line 145:
14th: 23541935187269979100..02324742766220468879 (digits: 1518)
15th: 40306783143871607599..58901192511859288941 (digits: 1539)</pre>
 
=={{header|Wren}}==
{{libheader|Wren-gmp}}
{{libheader|Wren-fmt}}
<syntaxhighlight lang="ecmascript">import "./gmp" for Mpq
import "./fmt" for Fmt
 
var w = Mpq.new()
var h = Mpq.new()
var primes = []
var l = [500, 1000, 2500, 5000, 10000]
System.print("Wolstenholme numbers:")
for (k in 1..10000) {
h.set(1, k * k)
w.add(h)
var n = w.num
if (primes.count < 15 && n.probPrime(15) > 0) primes.add(n)
if (k <= 20) {
Fmt.print("$8r: $i", k, n)
} else if (l.contains(k)) {
var ns = n.toString
Fmt.print("$,8r: $20a (digits: $d)", k, ns, ns.count)
}
}
System.print("\nPrime Wolstenholme numbers:")
for (i in 0...primes.count) {
if (i < 4) {
Fmt.print("$8r: $i", i+1, primes[i])
} else {
var ps = primes[i].toString
Fmt.print("$8r: $20a (digits: $d)", i+1, ps, ps.count)
}
}</syntaxhighlight>
 
{{out}}
<pre>
Wolstenholme numbers:
1st: 1
2nd: 5
3rd: 49
4th: 205
5th: 5269
6th: 5369
7th: 266681
8th: 1077749
9th: 9778141
10th: 1968329
11th: 239437889
12th: 240505109
13th: 40799043101
14th: 40931552621
15th: 205234915681
16th: 822968714749
17th: 238357395880861
18th: 238820721143261
19th: 86364397717734821
20th: 17299975731542641
500th: 40989667509417020364...48084984597965892703 (digits: 434)
1,000th: 83545938483149689478...99094240207812766449 (digits: 866)
2,500th: 64537911900230612090...12785535902976933153 (digits: 2164)
5,000th: 34472086597488537716...22525144829082590451 (digits: 4340)
10,000th: 54714423173933343999...49175649667700005717 (digits: 8693)
 
Prime Wolstenholme numbers:
1st: 5
2nd: 266681
3rd: 40799043101
4th: 86364397717734821
5th: 36190908596780862323...79995976006474252029 (digits: 104)
6th: 33427988094524601237...48446489305085140033 (digits: 156)
7th: 22812704758392002353...84405125167217413149 (digits: 218)
8th: 28347687473208792918...45794572911130248059 (digits: 318)
9th: 78440559440644426017...30422337523878698419 (digits: 520)
10th: 22706893975121925531...02173859396183964989 (digits: 649)
11th: 27310394808585898968...86311385662644388271 (digits: 935)
12th: 13001072736642048751...08635832246554146071 (digits: 984)
13th: 15086863305391456002...05367804007944918693 (digits: 1202)
14th: 23541935187269979100...02324742766220468879 (digits: 1518)
15th: 40306783143871607599...58901192511859288941 (digits: 1539)
</pre>
9,476

edits