如何让一条消息重复?

我制作了一段代码只是为了测试一些东西

print('Hello! What is your name?')
name = io.read()
print('Hello '..name..'!')

repeat
    print('What does a mute person say?')
    say = io.read()
    x = 'Nothing'
    z = 'nothing'
    if say == x then
        print('Correct!')
    elseif say == z then
        print('Correct!')
    else
        print('Incorrect! Guess Again!')
    end
until say = x or z

当我测试时一切正常,但是如果答案不正确,您无法再次尝试回答。可能是个愚蠢的问题,但是,有没有办法使问题在答案不正确时重复呢?

点赞
用户1009479
用户1009479

循环条件 say = x or z 不应该编译通过,应该使用 == 来测试相等性,而不是 =

但这还不够,say == x or z 等同于 say == x 因为当 x 不为 nil 或者 false 时,x or z 的值就是 x

repeat
    -- 读取 say
until say == x or say == z
2014-06-16 03:19:59