2013-07-15 7 views
2

я столкнулся вопрос с получением максимального количества атрибутов массиваLua получить Максимальное количество

-- Getting Maximum number of full grids inside Row 
maxRow = math.max(checkerRow[1],checkerRow[2],checkerRow[3],checkerRow[4],checkerRow[5], 
        checkerRow[6],checkerRow[7],checkerRow[8],checkerRow[9],checkerRow[10], 
        checkerRow[11],checkerRow[12],checkerRow[13],checkerRow[14],checkerRow[15], 
        checkerRow[16],checkerRow[17],checkerRow[18],checkerRow[19],checkerRow[20]) 

print("Max Row : "..maxRow) 

так выводит значение внутри MAXROW, мне нужно что-то, что на самом деле может дать мне номер строки, например, если checkerRow [6] является максимальным числом, то мне нужно, чтобы maxRow был равен 6.

Прошу прощения, если вы нашли этот вопрос для глупых, я новичок в Lua.

ответ

4

Это простая реализация. Вы можете обернуть его в функцию.

local mi, mv = 1, checkerRow[1] 
for i = 2, 20 do 
    if checkerRow[i] > mv then 
     mi, mv = i, checkerRow[i] 
    end 
end 
+0

Что это? Я совсем этого не понимаю. – victory

+3

math.max не возвращает позицию. поэтому вам нужно написать свою собственную реализацию. mi = max index, mv = максимальное значение. – moteus

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