Extraño para el problema del bucle
No estoy seguro de si esto es un error o no, así que pensé que quizás ustedes querrían echar un vistazo.
El problema radica en este código:
for i=0,1,.05 do
print(i)
end
La salida debe ser:
0
.05
.1
--snip--
.95
1
En cambio, el resultado es:
0
.05
.1
--snip--
.95
Este mismo problema ocurrió con un ciclo while:
w = 0
while w <= 1 do
print(w)
w = w + .05
end
--output:
0
.05
.1
--snip--
.95
El valor de w es 1, que puede verificarse mediante una declaración de impresión después del ciclo.
He verificado tanto como sea posible que cualquier paso que sea menor o igual a .05 producirá este error. Cualquier paso por encima de .05 debería estar bien. Verifiqué que 1/19 (0.052631579) imprime un 1. (Obviamente, un denominador decimal como 19.9 o 10.5 no producirá resultados de [0,1] inclusive). ¿Existe la posibilidad de que esto no sea un error del lenguaje? ? Tanto el intérprete como un archivo Lua normal producen este error.