我寫了一個Lua代碼來安排一個列表,但是當我在列表中輸入任意兩位小數的數字爲10,20等時,變量'ordenado'總是取值1,儘管它是否滿足條件與否。Lua變量問題
valor = {}
ordenado = 0
function inicializar()
for i = 1,10 do
print ("Introduzca el valor "..i..":")
valor[i] = io.read()
end
end
function verificar()
for i = 2, #valor do
if valor[i]>valor[i-1] then
ordenado = ordenado + 0
else
ordenado = ordenado + 1
end
print ("actual: "..valor[i].." \nanterior: "..valor[i-1].."\nordenado:"..ordenado.."\n")
end
end
function imprimir()
if ordenado == 0 then
print "La lista esta ordenada"
else
print "La lista no esta ordenada"
end
end
a = inicializar()
a = verificar()
a = imprimir()
該Lua版本是5.2。
你打算用'ordenado = ordenado + 0'這樣的語句做什麼? – 2014-03-12 15:36:15
使用'valor [i] = tonumber(io.read())'得到數字,而不是字符串 –
faranwath:這是因爲下一個函數,如果列表被安排然後ordenado只取值0和程序打印名單是arrenged。對不起,用西班牙語寫代碼 – Dominuskernel