PROGRAMA DE NÚMEROS LUA MAX
Pregunta
Aquí hay un programa corto que toma en una tabla y devuelve el índice del mayor valor numérico en la tabla.
Mi pregunta es: ¿puede alguien explicarme la "palabra, contar" en el bucle en la línea 5?El programa funciona, pero no entiendo cómo la palabra, cuenta en el bucle para el bucle hace nada.
numbers = {10, 5, 1}
function largest(t)
local maxcount = 0
local maxindex
for word, count in pairs(t) do
if count > maxcount then
maxcount = count
maxindex = word
end
end
return maxindex, maxcount
end
print(largest(numbers))
Solución
Ejecutar el siguiente código debe hacerlo más claro:
tbl = { a = "one", b = "two", c = "two and half" }
for key, val in pairs(tbl) do print(key, val) end
Cuando ejecuta pairs
en un bucle para el bucle, ejecuta el código entre do
y end
una vez para cada par de teclas / valor en la tabla;for x, y in
Establece los nombres de la llave y el valor para el código dentro del bucle.pairs
es el ejemplo visto más comúnmente de una ITERATOR .
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow