Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Операторы Visual Basic.NET



1. Арифметические операторы:

а) Применение оператора Not

Оператор Not меняет одно логическое значение на противоположное, т.е. вместо значе-

ния False присваивает значение True и наоборот:

Правильное_Решение - True

Not Правильное_Решение - False

b) Применение оператора And

Оператор And сравнивает логические значения двух переменных и на основании результатов

такого сравнения возвращает новое значение False или True. Рассмотрим следующий пример.

Поездка = Машина And Бензин.

В каком случае переменная Поездка будет иметь значение True, а в каком False? Воз-

можны четыре варианта.

3. Операторы сравнения:

Операторы сравнения сопоставляют два числовых значения и определяют, равны они или не равны, какое из них больше, а какое меньше. Эти же операторы могут использоваться для

определения равенства или неравенства текстовых значений.

= Равенство

<> Неравенство

< Меньше чем

<= Меньше или равно

> Больше чем

>= Больше или равно

Операторы сравнения сравнивают между собой два значения и в зависимости от результа-

тов сравнения возвращают логическое значение False или True. Проиллюстрируем сказан-

ное следующим примером:

Dim Доход, Расход Аз Integer

Dim Рентабельность As Boolean

Доход =120

Расход = 140

Рентабельность = (Доход >= Расход)

Комментарий:

1. Первая строка: "Создем переменные Доход и Расход типа I n t e g e r ".

2. Вторая строка: "Создем переменную Рентабельность типа Boolean".

3. Третья строка: "Присваиваем переменной Доход значение 120".

4. Четвертая строка: "Присваиваем переменной Расход значение 140".

5. А пятая строка: "Сравниваем значение переменной Доход со значением

переменной Расход. Если значение переменное Доход будет больше или

равным значению переменной Расход, присваиваем переменной Рентабель-

ность значение True (Истина); в противном случае присваиваем переменной

Рентабельность значение F a l s e (Ложь)." В нашем примере значение пе-

ременной Доход (12 0) меньше значения переменной Расход (14 0), поэтому

переменной Рентабельность будет присвоено значение False.

4. Условные операторы

a) If-Then:

В Visual Basic.NET самым простым средством, с помощью которого программа может

сделать какой-то выбор, является условный оператор If-Then. Он проверяет, соответствует

ли значению или выражению логическое значение True. Если соответствует, программа вы-

полняет определенную инструкцию, а если нет — эта инструкция игнорируется.

Вот как условный оператор If-Then выглядит в терминологии кодов BASIC:

If ЛоптческоеЗначение Then Инструкция

Продемонстрируем это на примере:

If Коллчество > 25 Then txtNote.Text = "Заполнен!"

Visual Basic.NET интерпретирует данный код следующим образом.

1. Проверяем значение переменной Количество и, если оно больше числа 25, присваиваем свойству Text текстового поля

txtNcte значение Заполнен

2. Потом команда добавляет: "Если значение переменной Количество

меньше или равно числу 25, пропускаем эту инструкцию и переходим к выполнению кодов следующей строки программы."

Рассмотрим другой пример:

If Красный Or Желтый Then Сообщение = "Стоп"

Вот как это воспримет Visual Basic.NET.

1. Эта команда: "Проверяем значения переменных Красный и Желтый.

Если хотя бы одно из них равно значению True, присваиваем переменной Сообщение значение Стоп".

2. Затем она сообщает: "Если значения переменных Красный и Желтый совпадают со значением False, пропускаем эту инструкцию и переходим к выполнению кодов следующей строки программы."

Условный оператор If-Then проверяет истинность или ложность условия, а затем выполняет или не выполняет какую-то одну инструкцию. Но что делать, если в зависимости от условия должно быть выполнено или не выполнено сразу несколько инструкций? В таком случае нужно воспользоваться разновидностью оператора If-Then, а именно оператором

If-Then-End If

b) If-Then-End If:

Этот оператор проверяет, соответствует ли выражению или переменной логическое зна-

чение True, и если это так, программа выполняет заданный набор инструкций. Синтаксис

оператора If-Then-End If выглядит следующим образом:

If Условие Then

Инструкция!

Инструкцкя2

End If

If-Then и If-Then-End If выполняют какие-либо инструкции

только в том случае, если переменной или выражению соответствует логическое значение

True (т.е. проверяемое условие выполняется). А как быть, если нужно, чтобы при невыпол-

нении условия также происходили определенные действия?

В этом случае вам нужно воспользоваться оператором If-Then-Else. Выглядит он сле-

дующим образом:

If Условие Then

Инструкции1

Else

Икструкции2

End If

Оператор говорит компьютеру: "Если переменной или выражению Условие соответству-

ет значение True, выполни набор команд Инструкции1. В противном случае, если пере-

менной или выражению Условие соответствует значение False, выполни набор команд

Инструкций".

Вообще говоря, можно ограничиться использованием обычного оператора If-Then и

набрать примерно такой код:

If Курс > 15 Then txt3oxl.Text = "Проливайте акции!"

If Курс <= 15 Then txtBoxl.Text = "Подождите еще."

Данный код работает корректно, но все же выглядит несколько "топорно" и непрофес-

сионально. Чтобы поправить такое положение, воспользуйтесь оператором If-Then-Else:

If Курс > 15 Then

txtBoxl.Text = "Продавайте акции!"

d) I f - T h e n - E l s e

Синтаксис этого оператора таков:

If Услсвие1 Then

Инструкции!

Elself УслоЕие2 Then

Кнстр]укции2

End If

Этот код дает компьютеру такие указания: "Если выражению или переменной Условие 1

соответствует значение True, выполни набор команд Инструкции!. Если выражению или

переменной Условие1 соответствует значение F a l s e, проверь, какое значение соответству-

ет переменной или выражению Условие2. Если True — выполни набор команд Инструк-

ции2, если F a l s e — не делай ничего, т.е. заканчивай выполнение данного оператора".

При использовании оператора I f - T h e n - E l s e в любом случае будет выполнен

какой-то набор команд. Если же вы используете оператор I f - T h e n - E l s e l f и ни

одному из проверяемых условий не соответствует значение True, никакие коман-

ды выполняться не будут.

Рассмотрим такой пример:

If Курс > 15 Then

txtBcxl.Text = "Продавайте акции!"

Elself Курс > 10 Then

txtBoxl.Text = "Подождите еще."

End If

5. Использование вложенных операторов If-Then

Если какой-либо действия должны быть предприняты только в случае выполнения сразу

нескольких условий, можно вложить несколько операторов If-Then один в другой и после-

довательно проверить каждое из условий. Например:

If Возраст > 15 Then

If ID > 120 Then

txtMessage.Text = "Вы нам подходите"

End If

Else

txtMen.sage.Text = "Извини, малыш, эта работа пока не для тебя"

End If

Посмотрим, что произойдет, если переменная Возраст будет иметь значение 18, а пере-

менная ID—значение 147.

1. Visual Basic.NET проверит условие первой строки, определит, что оно выполняется (18 > 15), и перейдет ко второй строке.

2. Второе условие также будет выполняться (147 > 120), поэтому свойству Text объекта txtMessage будет присвоено текстовое значение Вы нам подходите.

Теперь рассмотрим ситуацию, когда значению переменной Возраст будет соответствовать число 18, а переменной ID — число 110.

1. Visual Basic.NET проверит условие первой строки, определит, что оно выполняется (18 > 15), и перейдет ко второй строке.

2. Второе условие выполняться не будет (выражению 110 > 120 соответствует логическое значение F a l s e), поэтому ничего не произойдет и свойству Text объекта txtMessage никакое новое значение присвоено не будет.

И наконец, рассмотрим ситуацию, когда переменная Возраст будет иметь значение 14, а переменная ID — значение 125-

1. Visual Basic.NET проверит условие первой строки, определит, что оно не выполняется (13 меньше 15) и перейдет к строке с ключевым словом Else.

2. Свойству Text объекта txtMessage будет присвоено текстовое значение

Извини, малыш, эта работа пока не для тебя, и выполнение условного оператора на этом будет закончено. Обратите внимание, что в случае невыполнения первого условия, второе условие даже на проверяется.

Очень внимательно относитесь к вложенным друг в друга условным операторам, поскольку набранный код может работать не совсем так, как вы себе это представляете. Например, вы наверняка могли бы упустить из виду второй рассмотренный

вариант, при котором свойству Text объекта txtMessage не присваивается никакое значение.

6. Оператор выбора Select Case

Основным недостатком рассмотренных в предыдущей главе условных операторов I f -T h e n - E l s e - l f является их громоздкая структура и сложность для написания, чтения и понимания. Попробуйте понять смысл, скажем, этих инструкций:

If Оценка = 5 Then

TxtReply.Text = "Отлично"

Elself Оценка = 4 Then

TxtReply.Text = "Хорошо, но можно лучше"

Elself Оценка = 3 Then

TxtReply.Text = "Вы способны на большее,_попроОуйте еще раз"

Elself Оценка = 2 Then

TxtRep]у.Text = "Нет, сегодня не Ваш день"

End If

Вы спросите, есть ли какая-то альтернатива этой конструкции и можно ли вместо опера-

тора I f - T h e n - E l s e- l f использовать нечто более понятное и наглядное?

Конечно, альтернатива есть, и не одна. Можно, в частности забросить Visual Basic.NET и

попробовать изучить какой-нибудь другой язык программирования. Но разумней будет про-

сто воспользоваться оператором выбора S e l e c t Case.

Оператор S e l e c t Case выглядит следующим образом:

Select Case ИмяПеременной

Case X

Инструкции!

Case Y

Инструкций

Case Z

КнструкцииЗ

End Select

Данный оператор говорит Visual Basic.NET: "Проверь значение переменной ИмяПеременной. Ехли оно совпадает со значением X, выполни набор команд Инструкции!, если созначением Y — набор команд Инструкции2, если со значением Z — набор команд ИнструкцииЗ".

Если в рассмотренном в начале главы примере заменить условный оператор If-Then-

E i s e l f оператором выбора S e l e c t Case, код программы будет выглядеть намного проще:

Select Case Оценка

Case 5

TxtReply.Text = "Отлично"

Case 4

TxtReply.Text = "Хорошо, но можно лучше"

Case 3

TxtReply.Text = "Вы способны на большее,_

попробуйте еще раз"

Case 2

TxtReply.Text = "Нет, сегодня не Ваш день"

End Select

Обратите внимание, что здесь уже не нужно каждый раз повторять такие слова, как

E l s e l f и Then.

В операторе S e l e c t Case нет ограничения на количество строк Case, поэтому вы мо-

жете создать их столько, сколько нужно для учета всех возможных вариантов.





Дата публикования: 2015-02-03; Прочитано: 542 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.014 с)...