我只想知道如何确保用户输入的输入仅为Y,Y,N或n。
我使用了这段代码:
01 ANSWER PIC X.
88 VALID-ANSWER VALUE "Y" "y" "N" "n".
但它仍然不起作用。用户仍然可以键入其他字符。 任何帮助将不胜感激。提前谢谢。
答案 0 :(得分:0)
我通过执行执行循环来解决此问题:
at WORKING-STORAGE: 01 ANSWER PIC X. at PROCEDURE: PERFORM UNTIL ANSWER = "y" OR = "Y" OR = "n" OR = "N" DISPLAY "Question (y/Y/n/N) :" MOVE SPACE TO ANSWER ACCEPT ANSWER END-PERFORM. IF ANSWER = "y" OR "Y" do-something ELSE do-something-else END-IF
我希望这会有所帮助。
答案 1 :(得分:-1)
除了大写之外,您无法限制用户输入。 你能做的是:
在工作 - 存储:
01 ANSWER PIC X.
程序:
ACCEPT ANSWER CONTROL "UPPER".
这将确保无论用户输入什么,它都是完整的大写。然后你只检查“Y”:
IF ANSWER = "Y"
(do something)
ELSE
(do something)
END-IF
我希望它有所帮助。