这些截图中,then附近的意外符号是什么?
2021-12-19 2:37:57
收藏:0
阅读:269
评论:2
我正在使用一个 Android Lua IDE 程序,但我似乎找不到为什么在第27行上它会给我“unexpected symbol near then”的错误。请帮忙,非常感谢[1]: https://i.stack.imgur.com/lcIsM.png
原文链接 https://stackoverflow.com/questions/70408638
点赞
stackoverflow用户2858170
根据你的截图:
如果v等于6或7或8或9或10
那么bal = 减去(bal,1000)
然后print("你输掉了赌局!你的新余额为", bal")
如果v 等于1或2或3或4或5
那么bal = 增加(bal,2000)
然后print("你赢了赌局!你的新余额为", bal)
end
问题1:每个数字都是一个真值,因此无论v
的值如何,v == 6 or 7 or 8 or 9 or 10
总是会解析为true。
你需要编写 v == 6或v == 7或v == 8或v == 9或v == 10
或简单地使用v> = 6 and v <= 10
。
对于v == 1或2或3或4或5
也是一样的问题。
问题2:条件语句的语法是if condition then body end
。 你不能有额外的then
。
修正后的代码:
如果v == 6或v == 7或v == 8或v == 9或v == 10 then
bal = 减去(bal,1000)
print("你输掉了赌局!你的新余额为", bal")
elseif v == 1或v == 2或v == 3或v == 4或v == 5 then
bal = 增加(bal,2000)
print("你赢了赌局!你的新余额为", bal)
end
其他问题:
为什么你要用减法和加法函数呢?用函数替换基本算术运算符是没有什么意义的。只需使用bal = bal - 1000
。
既然v似乎是一个介于1和10之间的整数,为什么不简单地使用v <6
作为你的获胜条件? 其余步骤可以通过else完成。 你不需要显式检查每种情况。
而且你的赌局没有太多意义。 假设你在随机数生成器中使用均匀分布,你会赢一半的游戏并输掉一半的游戏。 因此,在多次赌局中,你保证会赢得比输得多。
2021-12-19 17:47:31
评论区的留言会收到邮件通知哦~
推荐文章
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?
- addEventListener 返回 nil Lua
- Lua中获取用户配置主目录的跨平台方法
- 如何编写 Lua 模式将字符串(嵌套数组)转换为真正的数组?
在 Lua 参考中查看(我不懂这种语言):
if ... then do bal = subtract(bal, 1000) print("You lost") end elseif ... then bal = add(bal, 2000) print("You won") do end end
(缩进可能完全错误。)