在 Scheme 中接受和处理用户输入

Accepting and processing user input in Scheme

我正在使用英文版 DrRacket 6.4 在 Scheme 中创建一个小应用程序。

在我的应用程序中,我想对一个简单的再次滚动对话框进行操作。

这就是我目前所拥有的。 [仅供参考-当我设置 roll-number = 0 时,我的程序稍后将在代码中退出。]

(begin
    (display "Would you like to roll again?(Y/N)\n")
    (if(not (equal? (read) "Y"))
        (begin
            (set! roll-number 0)
        )
        (display "")
        )
)

现在;无论我如何回答 "Would you like to roll again?(Y/N)" 问题,roll-number 变量都设置为 0。

读取的 return 到底是什么?我如何将 return 值与某些值进行比较,以便我的程序做出正确的决定?

提前致谢。

试试这个:

(equal? (read) 'Y)

读取返回的是 符号,而不是字符串。