function maxContSum(array)
local len = #array
local maxSum = 0
local runningSum = array[0]
local j = 0
local start, finish = 0,0
for i=0, len-1,1 do
if runningSum > 0 then
runningSum =runningSum + array[i]
else
runningSum = array[i]
j = i
end
if runningSum > maxSum then
maxSum = runningSum
start = j
finish = i
end
print ("maxsum is ", maxSum)
end
end
a = {-2, 2,3,4,5,-7,8,0,-1,1,2,3,4}
maxContSum(a)
This is my code.
But I get this error message:
lua: maxContSum.lua:8: attempt to compare number with nil stack
traceback:
maxContSum.lua:8: in function 'maxContSum'
maxContSum.lua:24: in main chunk
[C]: ?
Need help
Thank you!
edited:
I found my problem.
Lua array index starts from 1 🙂
Arrays in lua are indexed from 1 and not from 0
local runningSum = array[0]should belocal runningSum = array[1]and also
j = 1and the
forloop should begin from 1 to n