qb45advr.hlp (
Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software,
purely for historical purposes.
If you're looking for up-to-date documentation, particularly for programming,
you should not rely on the information found here, as it will be woefully
out of date.
SELECT Statement Programming Examples
◄QuickSCREEN► ◄Details► ◄Example► ◄Contents► ◄Index►
──────────────────────────────────────────────────────────────────────────────
SELECT Statement Programming Examples
There are two SELECT CASE programming examples.
Example 1
In the following program, the SELECT CASE statement is used to take
different actions based on the input value:
' Program demonstrates various forms of CASE items
INPUT "Enter acceptable level of risk (1-10): ", Total
SELECT CASE Total
CASE IS >= 10
PRINT "Maximum risk and potential return"
PRINT "Choose stock investment plan"
CASE 6 TO 9
PRINT "High risk and potential return"
PRINT "Choose corporate bonds"
CASE 2 TO 5
PRINT "Moderate risk and return"
PRINT "Choose mutual fund"
CASE 1
PRINT "No risk, low return"
PRINT "Choose IRA"
CASE ELSE
PRINT "RESPONSE OUT OF RANGE"
END SELECT
Sample Output
Enter acceptable level of risk (1-10): 10
Maximum risk and potential return
Choose stock investment plan
Enter acceptable level of risk (1-10): 0
RESPONSE OUT OF RANGE
Example 2
In the following program, the SELECT CASE statement is used to take
different actions based on the ASCII value of a character.
' Function and control key constants
CONST ESC = 27, DOWN = 80, UP = 72, LEFT = 75, RIGHT = 77
CONST HOME = 71, ENDKEY = 79, PGDN = 81, PGUP = 73
DO
' Get a function or ASCII key
DO
Choice$ = INKEY$
LOOP WHILE Choice$ = ""
IF LEN(Choice$) = 1 THEN
' Handle ASCII keys
SELECT CASE ASC(Choice$)
CASE ESC
PRINT "Escape key"
END
CASE IS < 32, 127
PRINT "Control code"
CASE 30 TO 29
PRINT "Digit: "; Choice$
CASE 65 TO 90
PRINT "Uppercase letter: "; Choice$
CASE 97 TO 122
PRINT "Lowercase letter: "; Choice$
CASE ELSE
PRINT "Punctuation: "; Choice$
END SELECT
ELSE
' Convert 2-byte extended code to 1-byte ASCII code and handle
Choice$ = RIGHT$(Choice$, 1)
SELECT CASE Choice$
CASE CHR$(DOWN)
PRINT "DOWN arrow key"
CASE CHR$(UP)
PRINT "UP arrow key"
CASE CHR$(PGDN)
PRINT "PGDN key"
CASE CHR$(PGUP)
PRINT "PGUP key"
CASE CHR$(HOME)
PRINT "HOME key"
CASE CHR$(ENDKEY)
PRINT "END key"
CASE CHR$(RIGHT)
PRINT "RIGHT arrow key"
CASE CHR$(LEFT)
PRINT "LEFT arrow key"
CASE ELSE
BEEP
END SELECT
END IF
LOOP