2016-08-22 2 views
1

Это упрощенная версия моего фактического кода и показывает проблему, с которой я сталкиваюсь. Я очень новичок в Lua и программировании в целом и хотел бы понять, как Lua обрабатывает матрицы.Попытка указать поле '1' (значение nil) - Понимание матриц в Lua

grid={} 
for i=1,4 do 
    grid[i]={} 
end 
grid["1"]["1"]=0 
n1=io.read() 
n2=io.read() 
print(grid[n1][n2]) 
+0

Не могли бы вы описать «проблему»? – Cagy79

ответ

2

Проблема заключается в том, что 1 является числом и "1" является строкой. Вместо этого используйте grid[1][1] и преобразуйте свой ввод в число с помощью tonumber().

grid={} 
for i=1,4 do 
    grid[i]={} 
end 
grid[1][1]=0 
n1=tonumber(io.read()) 
n2=tonumber(io.read()) 
print(grid[n1][n2]) 
+0

работал отлично, спасибо! – Ente

Смежные вопросы