

Task

Obtain a valid   Y   or   N   response from the keyboard.

The keyboard should be flushed, so that any outstanding key-presses are removed, preventing any existing   Y   or   N   key-press from being evaluated.

The response should be obtained as soon as   Y   or   N   are pressed, and there should be no need to press an   enter   key.




DEF VAR lanswer AS LOGICAL INITIAL ?.
 
DO WHILE lanswer = ?:
   READKEY.
   IF CHR( LASTKEY ) = "n" OR CHR( LASTKEY ) = "y" THEN
      lanswer = CHR( LASTKEY ) = "y".
END.
 
MESSAGE lanswer VIEW-AS ALERT-BOX.