RosettaCodeData/Task/Bell-numbers/Julia/bell-numbers.jl
2024-10-16 18:07:41 -07:00

24 lines
431 B
Julia

"""
bellnum(n)
Compute the ``n``th Bell number.
"""
function bellnum(n::Integer)
if n < 0
throw(DomainError(n))
elseif n < 2
return 1
end
list = Vector{BigInt}(undef, n)
list[1] = 1
for i = 2:n
for j = 1:i - 2
list[i - j - 1] += list[i - j]
end
list[i] = list[1] + list[i - 1]
end
return list[n]
end
for i in 1:50
println(bellnum(i))
end