Triangular numbers: Difference between revisions

Added Wren
(Added Wren)
Line 240:
tetrahedral-root: 44355.777384073256052620916903
pentatopic-root: 4321</pre>
 
=={{header|Wren}}==
{{libheader|Wren-fmt}}
{{libheader|Wren-big}}
<syntaxhighlight lang="ecmascript">import "./fmt" for Fmt
import "./big" for BigRat
 
var t = List.filled(30, 0)
for (n in 1..29) t[n] = t[n-1] + n
System.print("The first 30 triangular numbers are:")
Fmt.tprint("$3d", t, 6)
 
for (n in 1..29) t[n] = t[n] + t[n-1]
System.print("\nThe first 30 tetrahedral numbers are:")
Fmt.tprint("$4d", t, 6)
 
for (n in 1..29) t[n] = t[n] + t[n-1]
System.print("\nThe first 30 pentatopic numbers are:")
Fmt.tprint("$5d", t, 6)
 
for (r in 5..12) {
for (n in 1..29) t[n] = t[n] + t[n-1]
}
System.print("\nThe first 30 12-simplex numbers are:")
Fmt.tprint("$10d", t, 6)
 
var xs = [7140, 21408696, 26728085384, 14545501785001]
var digs = 16
for (x in xs) {
var bx = BigRat.new(x)
System.print("\nRoots of %(x):")
var root = ((bx*8 + 1).sqrt(digs) - 1)/2
Fmt.print("$14s: $s", "triangular", root.toDecimal(digs-5))
 
var temp = (bx*bx*9 - BigRat.new(1, 27)).sqrt(digs)
root = (bx*3 + temp).cbrt(digs) + (bx*3 - temp).cbrt(digs) - 1
Fmt.print("$14s: $s", "tetrahedral", root.toDecimal(digs-5))
 
root = (((bx*24 + 1).sqrt(digs)*4 + 5).sqrt(digs) - 3) / 2
Fmt.print("$14s: $s", "pentatopic", root.toDecimal(digs-5))
}</syntaxhighlight>
 
{{out}}
<pre>
The first 30 triangular numbers are:
0 1 3 6 10 15
21 28 36 45 55 66
78 91 105 120 136 153
171 190 210 231 253 276
300 325 351 378 406 435
 
The first 30 tetrahedral numbers are:
0 1 4 10 20 35
56 84 120 165 220 286
364 455 560 680 816 969
1140 1330 1540 1771 2024 2300
2600 2925 3276 3654 4060 4495
 
The first 30 pentatopic numbers are:
0 1 5 15 35 70
126 210 330 495 715 1001
1365 1820 2380 3060 3876 4845
5985 7315 8855 10626 12650 14950
17550 20475 23751 27405 31465 35960
 
The first 30 12-simplex numbers are:
0 1 13 91 455 1820
6188 18564 50388 125970 293930 646646
1352078 2704156 5200300 9657700 17383860 30421755
51895935 86493225 141120525 225792840 354817320 548354040
834451800 1251677700 1852482996 2707475148 3910797436 5586853480
 
Roots of 7140:
triangular: 119
tetrahedral: 34.00000000000
pentatopic: 18.87664661593
 
Roots of 21408696:
triangular: 6543
tetrahedral: 503.56182697464
pentatopic: 149.06094737527
 
Roots of 26728085384:
triangular: 231205.40556525584
tetrahedral: 5432.00000000000
pentatopic: 893.44245675168
 
Roots of 14545501785001:
triangular: 5393607.15814517232
tetrahedral: 44355.77738407326
pentatopic: 4321
</pre>
9,476

edits