Программа
'Описание параметров меню:
QuantityMenuPoint = 4 ' Количество пунктов меню
ExitPoint = QuantityMenuPoint ' Пункт меню "Выход"
MaxLengthMenuPoint = 17 ' Максимальная длина пункта меню
DIM MenuList$(QuantityMenuPoint) ' Массив для списка пунктов меню
' Список пунктов меню:
DATA "[1] Первый пункт меню","[2] Второй пункт меню","[3] Третий пункт меню","[4] ВЫХОД "
FOR i% = 1 TO QuantityMenuPoint ' Цикл инициализации массива
READ MenuList$(i%) ' Инициализация массива
NEXT i%
DEF FnMenu% ' Функция вывода меню
CLS ' Очистка экрана
ExitMenuFlag$ = "No" ' Сброс флага "Выход"
FOR MenuMeter = 1 TO QuantityMenuPoint ' Цикл вывода пунктов меню
PRINT MenuList$(MenuMeter) ' Вывод пункта меню
NEXT MenuMeter
DO ' Цикл опроса клавиатуры
MenuPoint = ASC(INPUT$(1)) ' Сканинг клавиатуры
IF MenuPoint = 27 THEN MenuPoint = ExitPoint ELSE MenuPoint = MenuPoint - ASC("0")
' Если нажата Esc, то - определение пункта выхода, иначе - определение номера пункта
LOOP UNTIL 0 < MenuPoint AND MenuPoint <= QuantityMenuPoint
' Выход из цикла при получении корректного ответа
IF MenuPoint = ExitPoint THEN FnMenu% = 255 ELSE FnMenu% = MenuPoint
' Определение значения функции
END DEF
ExitFlag$ = "No" ' Сброс флага "Выход"
DO ' Цикл работы программы
SELECT CASE FnMenu% ' Выбор действия по ответу на меню
CASE 1
CASE 2
CASE 3
CASE 255
ExitFlag$ = "Yes" ' Подъем флага "Выход"
END SELECT
LOOP UNTIL ExitFlag$ = "Yes"
END
Бесплатные примеры программ
Примеры написанных программ
Помощь студентам по программированию