0

ユーザーが入力した入力が Y、y、N、または n のみであることを確認する方法を知りたいだけです。

私はこのコードを使用しました:

01 ANSWER                PIC X.
    88 VALID-ANSWER      VALUE "Y" "y" "N" "n".

しかし、それでもうまくいきません。ユーザーは引き続き他の文字を入力できます。どんな助けでも大歓迎です。前もって感謝します。

4

2 に答える 2

0

実行ループを使用してこれを解決します。

WORKING-STORAGE:
    01 ANSWER PIC X.

手順:
    回答 = "y" または = "Y" または = "n" または = "N" になるまで実行する
       DISPLAY "質問 (y/Y/n/N) :"
       スペースを移動して答える
       回答を受け入れる
    END-PERFORM。
    IF ANSWER = "y" または "Y"
       何かをする
    そうしないと
       何か他のことをする
    END-IF

これが役立つことを願っています。

于 2019-01-07T16:21:27.717 に答える
-1

大文字を除いて、ユーザー入力を制限することはできません。あなたができることはこれです:

ワーキングストレージで:

01 ANSWER           PIC X.

手続き時:

ACCEPT ANSWER CONTROL "UPPER".

これにより、ユーザーが入力したものはすべて大文字になります。次に、「Y」のみをチェックします。

IF ANSWER = "Y"
  (do something)
ELSE
  (do something)
END-IF

お役に立てば幸いです。

于 2014-01-29T02:59:39.950 に答える