Keyboard input/Obtain a Y or N response: Difference between revisions

From Rosetta Code
Content added Content deleted
m (→‎{{header|PureBasic}}: added wanted buffer cleaning)
m (→‎{{header|ZX Spectrum BASIC}}: corrected language name)
Line 4: Line 4:
=={{header|BASIC}}==
=={{header|BASIC}}==


==={{header|ZX Spectrum BASIC}}===
==={{header|ZX Spectrum Basic}}===


10 IF INKEY$<>"" THEN GOTO 10
10 IF INKEY$<>"" THEN GOTO 10

Revision as of 10:58, 9 October 2010

Keyboard input/Obtain a Y or N response is a draft programming task. It is not yet considered ready to be promoted as a complete task, for reasons that should be found in its talk page.

Obtain a valid Y or N response from the keyboard. The keyboard should be flushed, so that any outstanding keypresses are removed, preventing any exiting Y or N keypress from being evaluated

BASIC

ZX Spectrum Basic

10 IF INKEY$<>"" THEN GOTO 10
20 PRINT "Press Y or N to continue"
30 LET k$ = INKEY$
40 IF k$ = "y" OR k$ = "Y" OR k$ = "n" OR k$ = "N" THEN GOTO 60
50 GOTO 30
60 PRINT "The response was "; k$

PureBasic

<lang PureBasic>While Inkey():Wend  ; Flush the buffer

PrintN("Press Y or N to continue") Repeat: Key$=UCase(Inkey()) Until Key$="Y" Or Key$="N" PrintN("The response was "+Key$)</lang>