End Select

Управляющая алгоритмическая конструкция Select Case

Управляющая алгоритмическая конструкция Select Case позволяет задать альтернативный набор выполняемых алгоритмов в зависимости от значения управляющей переменной и имеет следующий вид:

Select Caseуправляющая переменная

Case список значений 1

[операторы 1]

[Case список значений 2

[операторы 2]]

.

.

[Case Else[операторы n]]

 

Логика работы управляющей конструкции следующая: если управляющая переменная принимает значения из списка 1, то выполняются операторы 1, если управляющая переменная принимает значения из списка 2, то выполняются операторы 2 и т.д. Если управляющая переменная не принимает значения не из одного из списков, то выполняются операторы n.

 

Элемент RADIO

 

<INPUT ACCESSKEY = key

ALIGN = LEFT | CENTER | RIGHT

ALT = text

CHECKED

CLASS = classname

DISABLED

ID = value

LANG = language

LANGUAGE = JAVASCRIPT | JSCRIPT | VBSCRIPT | VBS

LOWSRC = url

MAXLENGTH = n

NAME = name

READONLY

SIZE = n

STYLE = css1-properties

TABINDEX =n

TITLE =text

TYPE = RADIO

VALUE = value

event = script

>

Простой пример иллюстрирует логику работы управляющей конструкции:

Vozrast = InputBox("Введите ваш возраст в виде цифры от 1 до 100")

Select Case Vozrast

Case 1, 21, 31, 41, 51, 61, 71, 81, 91

MsgBox "Вам" & Str(Vozrast) & " год"

Case 2 To 4, 22 To 24, 32 To 34, 42 To 44, 52 To 54, 62 To 64, 72 To 74, 82 To 84, 92 To 94

MsgBox "Вам " & Str(Vozrast) & " года"

Case 5 To 20, 25 To 30, 35 To 40, 45 To 50, 55 To 60, 65 To 70, 75 To 80, 85 To 90, 95 To 100

MsgBox "Вам " & Str(Vozrast) & " лет"

Case Else

MsgBox "Вы ввели неправильное число"

End Select

Пример проекта:

Исходная форма проекта показана на рисунке 16.

Рис. 16.

По выбранному в списке названию страны в текстовое окно выводится название столицы этой страны. В какое из окон выводится название столицы, управляется флажком.

Описание элементов на форме.

<form name="Form1">

<p><input type="text" size="25" maxlength="25" name="Text1"></p>

<p>

<select NAME="CaseSelect" size="1">

<option VALUE="1">Франция </option>

<option VALUE="2">Англия</option>

<option VALUE="3">Германия </option>

</select>&nbsp;&nbsp;&nbsp;&nbsp; <input type="button" value="Выбор" name="btnOne">

</p>

<p><input type="checkbox" checked name="chkOne" value="ON"> Верхнее окно </p>

<p><input type="text" size="25" maxlength="25" name="Text2"></p>

</form>

Процедура обработки события «Щелчок мышью по кнопке»:

Sub btnOne_onClick

Dim TheForm

Set TheForm = Document.Form1

Select Case TheForm.CaseSelect.Selectedindex

‘TheForm.CaseSelect.Selectedindex - выбранный элемент списка

Case 0

If TheForm.chkOne.checked Then

TheForm.Text1.Value = "Париж"

TheForm.Text2.Value = " "

else

TheForm.Text2.Value = "Париж"

TheForm.Text1.Value = ""

End If

Case 1

……………………………………

…………………………………………

………………………………………….

Case 2

………………………………………

…………………………………………….

…………………………………………….

End Select

End Sub

Свойство Selectedindex списка содержит значение индекса выбранного элемента.

Задание 7 для самостоятельного выполнения

1. Создать два списка соответствующих друг другу элементов (например, «Страна» -> «Столица» и «Столица» -> «Страна») соответственно варианту задания.

2. Создать следующую форму проекта (рис. 17):

 

Рис. 17.

3. Написать процедуру обработки события «Щелчок мышью по элементу списка» (вместо использования кнопки «Выбор» в исходной форме) для вывода в текстовое окно соответствующего для выбираемого в списке элемента.

Элементы в правой части формы должны выполняют аналогичные действия, но используют обратное соответствие элементов (в примере «Столица» -> «Страна»)

 

Варианты задания для самостоятельного выполнения:

 

Вариант Задания
По введенному названию страны определить и вывести ее континент, список стран должен быть следующим: Германия. Куба. Бразилия. Китай. Индия, Австралия, Канада. Алжир.
Введенное значение, означающее длину в введенной единице измерения, заменить на величину этой же длины в метрах. Единицы измерения: дециметр, километр, метр, миллиметр, сантиметр.
Вывести значение введенного целого числа (от 1 до 10) римскими цифрами
Вывести название сезона года, на который приходится введенный месяц
По введенному названию страны вывести название столицы этой страны. Список стран: Австрия, Болгария, Греция, Италия, Норвегия, Франция, Англия. Список столиц: Вена, София, Афины, Рим, Осло, Париж, Лондон.
По введенному русскому названию языка программирования вывести английское название того же языка. Русские названия: Ада. Бейсик, Модула2, Лисп. Паскаль, Пл/1, Фортран. Английские названия: Ada, Basic, Modula2, Lisp, Pascal, PL/I, Fortran.
По введенной цифре от 0 до 9 вывести название этой цифры.
По введенному русскому слову вывести соответствующее английское слово. Русские слова: Лыжи, Ботинки, Начинать, Читать, Программа. Английские слова: Ski, Boots, Begin, Read, Program.
Вывести название цвета брюк, гармонирующий с введенным цветом пиджака. Цвета: серый, черный, белый, коричневый, синий, красный, зеленый, кремовый.
По введенному названию товара вывести название фирмы -производителя. Названия товара: Лыжи, Ботинки, Очки, Палки, Крепления, Комбинизоны. Английские названия фирмы - производителя: Rossingol, Salomon, Uvex, Kerma, Marker, Dubin.
Вывести значение направления движения по введенным приказу (направления движения имеют значения; Север, Юг, Запад, Восток; приказ - вперед, вправо, назад, влево).
По введенной цифре от 10 до 15 вывести название этой цифры.
Вывести количество дней введенного названия месяца (год считать невысокостный).
По вводимым латинским буквам из заданного набора (А, В, С, D, Е) вывести соответствующие по расположению в алфавите русские буквы.
По вводимым русским буквам из заданного набора (А, Б, В, Г, Д) вывести соответствующие по расположению в алфавите латинские буквы.
По введенной цифре от 10 до 19 вывести название этой цифры.
Вывести значение введенного целого числа (от 1 до 10) римскими цифрами
Вывести значение направления движения по введенным приказу (направления движения имеют значения; Север, Юг, Запад, Восток; приказ - вперед, вправо, назад, влево).
По введенному названию страны определить и вывести ее континент, список стран должен быть следующим: Германия. Куба. Бразилия. Китай. Индия, Австралия, Канада. Алжир.
Введенное значение, означающее длину в введенной единице измерения, заменить на величину этой же длины в метрах. Единицы измерения: дециметр, километр, метр, миллиметр, сантиметр.