/ / मेरा ऐड कमांड काम नहीं कर रहा है - लुआ

मेरा ऐड कमांड काम नहीं कर रहा है - लुआ

function read_file(file)
local data = io.open(file, "r")
for char in data:lines() do
local num1 = 0
local num2 = 0
--Print statement
if char:sub(1, 6) == "print>" then
print(char:sub(7))
end
--Setting numbers command
if char:sub(1, 5) == "num1>" then
num1 = char:sub(6)
end
if char:sub(1, 5) == "num2>" then
num2 = char:sub(6)
end
--The add command
if char:sub(1, 5) == "add()" then
print(num1 + num2)
end
end
data:close()
end

function run()
while true do
print("Open a file")
file = io.read()
print("")
print("Opening file: "..file)
print("")
read_file(file)
print("")
print("Successfully compiledn")
end
end

run()

मेरी "सेटिंग कमांड कमांड" isn "t वर्किंग, दचर संख्या 1 और संख्या 2 को 0 के रूप में सेट किया गया है और वे बदल नहीं सकते हैं इसलिए मैं लगभग 30 मिनट के लिए अटक गया हूं कि इसे कैसे ठीक किया जाए और मैं सोचता हूं कि इसे कैसे ठीक किया जाए।

उत्तर:

जवाब के लिए 2 № 1

चर संख्या 1 और संख्या 2 को 0 के रूप में सेट किया जाता है और वे बदल नहीं सकते हैं

क्योंकि आप उन्हें लूप की शुरुआत में 0 पर रीसेट करते हैं।

इसे बदलो:

for char in data:lines() do
local num1 = 0
local num2 = 0
...

इसके लिए:

local num1 = 0
local num2 = 0
for char in data:lines() do
...

वैसे, आप इसे बदल सकते हैं:

local data = io.open(file, "r")
for char in data:lines() do
...
end
data:close()

इसके साथ, जो एक ही काम करता है:

for lines in io.lines(file) do
...
end