Super-d numbers: Difference between revisions
Content added Content deleted
m (→{{header|Phix}}: syntax coloured) |
(→{{header|Wren}}: Added an embedded version.) |
||
Line 1,861: | Line 1,861: | ||
=={{header|Wren}}== |
=={{header|Wren}}== |
||
{{trans|Go}} |
{{trans|Go}} |
||
===CLI (BigInt)=== |
|||
{{libheader|Wren-big}} |
{{libheader|Wren-big}} |
||
{{libheader|Wren-fmt}} |
{{libheader|Wren-fmt}} |
||
Line 1,917: | Line 1,918: | ||
185423 641519 1551728 1854230 6415190 12043464 12147605 15517280 16561735 18542300 |
185423 641519 1551728 1854230 6415190 12043464 12147605 15517280 16561735 18542300 |
||
found in 434.536825 seconds |
found in 434.536825 seconds |
||
</pre> |
|||
===Embedded (GMP)=== |
|||
{{libheader|Wren-gmp}} |
|||
Much sprightlier with 8 now being reached in 11.7 seconds and 9 in 126.5 seconds. |
|||
<lang ecmascript>/* super-d_numbers_gmp.wren */ |
|||
import "./gmp" for Mpz |
|||
import "./fmt" for Fmt |
|||
var start = System.clock |
|||
var rd = ["22", "333", "4444", "55555", "666666", "7777777", "88888888", "999999999"] |
|||
for (i in 2..9) { |
|||
Fmt.print("First 10 super-$d numbers:", i) |
|||
var count = 0 |
|||
var j = Mpz.three |
|||
var k = Mpz.new() |
|||
while (true) { |
|||
k.pow(j, i).mul(i) |
|||
var ix = k.toString.indexOf(rd[i-2]) |
|||
if (ix >= 0) { |
|||
count = count + 1 |
|||
Fmt.write("$i ", j) |
|||
if (count == 10) { |
|||
Fmt.print("\nfound in $f seconds\n", System.clock - start) |
|||
break |
|||
} |
|||
} |
|||
j.inc |
|||
} |
|||
}</lang> |
|||
{{out}} |
|||
<pre> |
|||
First 10 super-2 numbers: |
|||
19 31 69 81 105 106 107 119 127 131 |
|||
found in 0.000222 seconds |
|||
First 10 super-3 numbers: |
|||
261 462 471 481 558 753 1036 1046 1471 1645 |
|||
found in 0.001222 seconds |
|||
First 10 super-4 numbers: |
|||
1168 4972 7423 7752 8431 10267 11317 11487 11549 11680 |
|||
found in 0.007386 seconds |
|||
First 10 super-5 numbers: |
|||
4602 5517 7539 12955 14555 20137 20379 26629 32767 35689 |
|||
found in 0.024863 seconds |
|||
First 10 super-6 numbers: |
|||
27257 272570 302693 323576 364509 502785 513675 537771 676657 678146 |
|||
found in 0.339837 seconds |
|||
First 10 super-7 numbers: |
|||
140997 490996 1184321 1259609 1409970 1783166 1886654 1977538 2457756 2714763 |
|||
found in 1.684412 seconds |
|||
First 10 super-8 numbers: |
|||
185423 641519 1551728 1854230 6415190 12043464 12147605 15517280 16561735 18542300 |
|||
found in 11.695570 seconds |
|||
First 10 super-9 numbers: |
|||
17546133 32613656 93568867 107225764 109255734 113315082 121251742 175461330 180917907 182557181 |
|||
found in 126.454911 seconds |
|||
</pre> |
</pre> |
||