Bell numbers: Difference between revisions

Added Arturo implementation
(Added Arturo implementation)
Line 31:
:* '''[[oeis:A000110|OEIS:A000110 Bell or exponential numbers]]'''
:* '''[[oeis:A011971|OEIS:A011971 Aitken's array]]'''
 
=={{header|Arturo}}==
 
{{trans|D}}
 
<lang rebol>bellTriangle: function[n][
tri: map 0..n-1 'x [ map 0..n 'y -> 0 ]
set tri \ 1 0 1
loop 2..n-1 'i [
set tri \ i 0 (tri \ i-1) \ i-2
loop 1..i-1 'j [
set tri \ i j ((tri \ i)\j-1) + ((tri \ i-1)\j-1)
]
]
return tri
]
bt: bellTriangle 51
 
loop 1..15 'x ->
print [x "=>" first bt \ x]
print ["50 =>" first last bt]
print ""
print "The first ten rows of Bell's triangle:"
 
loop 1..10 'i ->
print filter bt \ i => zero?</lang>
 
{{out}}
 
<pre>1 => 1
2 => 1
3 => 2
4 => 5
5 => 15
6 => 52
7 => 203
8 => 877
9 => 4140
10 => 21147
11 => 115975
12 => 678570
13 => 4213597
14 => 27644437
15 => 190899322
50 => 10726137154573358400342215518590002633917247281
 
The first ten rows of Bell's triangle:
1
1 2
2 3 5
5 7 10 15
15 20 27 37 52
52 67 87 114 151 203
203 255 322 409 523 674 877
877 1080 1335 1657 2066 2589 3263 4140
4140 5017 6097 7432 9089 11155 13744 17007 21147
21147 25287 30304 36401 43833 52922 64077 77821 94828 115975 </pre>
 
=={{header|AutoHotkey}}==
1,532

edits