我最近被朋友要求帮助在lua写一个程序找到完美的正方形,所以我拟定了这个:
print ("Select your maximum number")
x = io.read()
y=1
z={}
a=1
while y * y ~= x and y < x / 2
then do
y = y + 1
end
if y * y = x
then do
z[a] = x
a = a + 1
end
x = x - 1
Run Code Online (Sandbox Code Playgroud)
为了测试这个程序,我补充道
print z[1]
Run Code Online (Sandbox Code Playgroud)
到最后.当我去测试这个程序时,我在第8行得到了以下错误:
预计在那附近
就在那附近.有人能告诉我哪里出错了吗?谢谢.
小智 5
您在该代码中有几个语法错误.第一个是while写成while foo > bar do,而if使用的语法if foo > bar then.
另一个错误是,在你的if陈述中,你有if y * y = x then.逻辑等于运算符==,所以它应该是if y * y == x.