aboutsummaryrefslogtreecommitdiff
path: root/challenge-173/deadmarshal/lua/ch-2.lua
diff options
context:
space:
mode:
Diffstat (limited to 'challenge-173/deadmarshal/lua/ch-2.lua')
-rw-r--r--challenge-173/deadmarshal/lua/ch-2.lua24
1 files changed, 24 insertions, 0 deletions
diff --git a/challenge-173/deadmarshal/lua/ch-2.lua b/challenge-173/deadmarshal/lua/ch-2.lua
new file mode 100644
index 0000000000..1cca518763
--- /dev/null
+++ b/challenge-173/deadmarshal/lua/ch-2.lua
@@ -0,0 +1,24 @@
+-- https://github.com/edubart/lua-bint
+-- To install this library: luarocks install bint
+local bint = require 'bint'(1024)
+
+local function product(t, last)
+ assert(type(t) == 'table' and
+ type(last) == 'number',
+ 't, last must be table, number, number respectively!')
+ local prod = bint(1)
+ for i=1, last do prod = prod * t[i] end
+ return prod
+end
+
+local function sylvesters_sequence()
+ local t = {2,3}
+ while(#t ~= 10) do
+ t[#t+1] = bint(product(t, #t) + 1)
+ end
+ return t
+end
+
+local t = sylvesters_sequence()
+for i=1, #t do print(t[i]) end
+