function formatarNumero(valor)
local formatado = valor
while true do
formatado, n = string.gsub(formatado, "^(-?%d+)(%d%d%d)", '%1.%2')
if ( n ==0 ) then
break
end
end
return formatado
end
print(formatarNumero(1))
print(formatarNumero(10))
print(formatarNumero(100))
print(formatarNumero(1000))
print(formatarNumero(10000))
print(formatarNumero(100000))
print(formatarNumero(1000000))
print(formatarNumero(10000000))
print(formatarNumero(100000000))
print(formatarNumero(1000000000))
print(formatarNumero(-123))
ZnVuY3Rpb24gZm9ybWF0YXJOdW1lcm8odmFsb3IpCiAgbG9jYWwgZm9ybWF0YWRvID0gdmFsb3IKICB3aGlsZSB0cnVlIGRvICAKICAgIGZvcm1hdGFkbywgbiA9IHN0cmluZy5nc3ViKGZvcm1hdGFkbywgIl4oLT8lZCspKCVkJWQlZCkiLCAnJTEuJTInKQogICAgaWYgKCBuID09MCApIHRoZW4KICAgICAgYnJlYWsKICAgIGVuZAogIGVuZAogIHJldHVybiBmb3JtYXRhZG8KZW5kCgpwcmludChmb3JtYXRhck51bWVybygxKSkKcHJpbnQoZm9ybWF0YXJOdW1lcm8oMTApKQpwcmludChmb3JtYXRhck51bWVybygxMDApKQpwcmludChmb3JtYXRhck51bWVybygxMDAwKSkKcHJpbnQoZm9ybWF0YXJOdW1lcm8oMTAwMDApKQpwcmludChmb3JtYXRhck51bWVybygxMDAwMDApKQpwcmludChmb3JtYXRhck51bWVybygxMDAwMDAwKSkKcHJpbnQoZm9ybWF0YXJOdW1lcm8oMTAwMDAwMDApKQpwcmludChmb3JtYXRhck51bWVybygxMDAwMDAwMDApKQpwcmludChmb3JtYXRhck51bWVybygxMDAwMDAwMDAwKSkKcHJpbnQoZm9ybWF0YXJOdW1lcm8oLTEyMykp