Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Оператор Select Case..End Select






Для ухвалення складніших рішень (особливо за наявності декількох умов) можна скористатися блоком Select Case..End Select. Його синтаксис простий:

Select Case x

Case Is =3

' Виконати деякі дії

Case Is > 17

‘ Виконати інші дії

Case Else.

‘ Дії для випадку, коли не виконано

‘ жодна з попередніх умов

End Select

Для кожного оператора Select Case в програмі має бути відповідний оператор End Select. Кількість секцій Case між Select Case і End Select може бути будь-ким.

Для кожної умови, що перевіряється, створюється окрема секція Case. Якщо ви хочете окремо обробити ситуацію, коли не виконується жодна з умов, створіть секцію Case Else. Вона багато в чому схожа на секцію Else оператора If..Then.

У операторові Select Case можна перевіряти строкові літерали, змінні і діапазони значень. Наприклад, наступний фрагмент перевіряє, що число належить інтервалу від 1 до 10:

 

Select Case guess

Case 1 to 10

Припущення вірне

Case Else

Припущення невірне

End Select

 

Секція Саsе 1 to 10 виконується для змінної guess, яка належить інтервалу від 1 до 10. Секція Case Else обробляє інші ситуації.

Оператор Select Case..End Select застосовується і для рядків. Наприклад, у вашій програмі може бути присутній наступний фрагмент:

 

Select Case x

Case Is = " 3"

Виконати деякі дії

Case Is > " 17"

Виконати інші дії

Case Else

Дії для випадку, коли не виконано

жодна з попередніх умов

End Select

 

Програмний код, що виконується при виконанні умови, знаходиться у відповідній секції Case. Секція Case може містити декілька команд (див. приклад з вгадуванням чисел). Зверніть увагу: для завершення секції Case не використовується оператор End. Стає зрозуміло, чому так важливо структурувати програмний код за допомогою символів табуляції і пропусків - це дозволяє візуально згрупувати взаємозв'язаний код. Такий підхід не лише спрощує читання програми, але і знижує вірогідність помилок.

При перевірці строкових значень слід пам'ятати про те, що користувач може вводити дані у верхньому, нижньому або змішаному регістрах. Отже, ваша програма повинна обробляти можливі ситуації. Для цього необхідно вирішити два завдання. По-перше, ви повинні видалити з рядка усі ведучі і завершуючі пропуски. Іноді користувач випадково вводить пропуски до або після даних. Щоб видалити їх, слід передати рядок функції Trim$(). По-друге, текст необхідно перетворити до одного регістра, верхнього або нижньому. Для цього можна скористатися функцією UCase$() або LCase$(,). Можливі варіанти виглядають так:

If Trim$(UCase$(txtInput.Text)) = " АДМІНІСТРАТОР" Then

‘ Виконати деякі дії

End If

 

If Trim$(LCase$(txtInput.Text)) = " адміністратор" Then

‘ Виконати деякі дії

End If

Обидва оператори If..Then призводять до одного результату. Зверніть увагу: рядок в правій частині умови повинен знаходитися в тому ж регістрі, до якого перетвориться вираження в лівій частині.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.01 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал