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

Использование условных инструкций

Читайте также:
  1. B) 18,476 млн. условных тонн
  2. II. Структура и использование земель сельскохозяйственного назначения
  3. II.2.3. Получение информации в работе психолога и ее использование
  4. III. Разведение спирта с использованием таблиц ГФ XI.
  5. III. Создание и обработка комплексного информационного объекта в виде презентации с использованием шаблонов.
  6. А) ИСПОЛЬЗОВАНИЕ КАТЕГОРИИ ВИДА В РУССКОМ ЯЗЫКЕ
  7. Административная ответственность за нарушения прав на использование информацией
  8. АНАЛИЗ И ИСПОЛЬЗОВАНИЕ РЕЗУЛЬТАТОВ КСИ.
  9. Анализ прибыли с использованием международных стандартов
  10. Анализ прибыли с использованием международных стандартов
  11. Анализ степени влияния на объем продаж факторов, связанных с использованием материалов
  12. Анализ степени влияния на объем продаж факторов, связанных с использованием основных средств

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

Варианты условной инструкции:

· If...Then...Else: ветвление программы в зависимости от значения условия True или False;

· Select Case: выбор ветви из набора условий.

 

3.3.1 Инструкция If...Then...Else

 

Инструкция If...Then...Else выполняет определенные инструкции или наборы инструкций в зависимости от значения условия. Допускаются многократно вложенные инструкции If...Then...Else. Однако для облегчения чтения программы вместо многократно вложенных инструкций If...Then...Else иногда предпочтительнее использовать инструкцию Select Case.

Для выполнения только одной инструкции, когда условие имеет значение True, используется однострочный синтаксис инструкции If...Then...Else. Вид однострочного синтаксиса без ключевого слова Else:

If <условие> Then инструкция

Пример однострочного синтаксиса:

If sValue = "" Then Exit Sub

Для выполнения нескольких строк программы, либо когда надо выполнять одни инструкции, когда условие истинно, и другие, когда ложно, используется многострочный синтаксис. Этот синтаксис обязательно содержит инструкцию End If и может содержать Else:

If <условие> Then

[инструкции]

[Else]

[инструкции]

End if

 

Примеры многострочного синтаксиса:

 

If Y(i, j) > maxim Then

maxim = Y(i, j): imax = i

End If

 

If Svalue = 0 Then

MsgBox "Ошибка - Svalue=0"

Else

MsgBox "Посчитаем для “ & Svalue

MsgBox "Расчет куба =“ & Svalue^3

End If

 

Если первое условие имеет значение False, для проверки второго условия к If...Then...Else добавляется инструкция ElseIf. Например, в следующей процедуре Function вычисляется премия на основе оценки проделанной работы. Инструкция, следующая за Else, выполняется, если условия во всех инструкциях If и ElseIf имеют значения False.

Function Premiy(koef_uchast, zarplata)

If koef_uchast = 1 Then

Premiy = zarplata * 0.3

ElseIf koef_uchast = 2 Then

Premiy = zarplata * 0.2

ElseIf (koef_uchast = 3 Or koef_uchast = 4) Then

Premiy = zarplata * 0.1

ElseIf (koef_uchast >= 5 And koef_uchast <= 7) Then

Premiy = zarplata * 0.05

ElseIf koef_uchast > 9 Then

Premiy = -10

Else

Premiy = 0

End If

End Function

3.3.2 Инструкция Select Case

Инструкция Select Case может служить альтернативой инструкции ElseIf в If...Then...Else при оценке одного выражения, которое имеет несколько возможных значений. В то время как If...Then...Else для каждой инструкции ElseIf оценивает разные выражения, инструкция Select Case оценивает выражение только один раз, в начале управляющей структуры. Приведем пример функции Premiy, выполненной с помощью Select Case.

Function Premiy(koef_uchast, zarplata)

Select Case koef_uchast

Case 1

Premiy = zarplata * 0.3

Case 2

Premiy = zarplata * 0.2

Case 3, 4

Premiy = zarplata * 0.1

Case 5 To 7

Premiy = zarplata * 0.05

Case Is > 9

Bonus = -10

Else

Premiy = 0

End Select

End Function

 

3.4 Вывод отладочной информации

Для быстрого просмотра результатов вычислений в окне отладки можно использовать метод Print вместе с объектом Debug. Для этого необходимо включить окно вывода отладочной информации командой меню View\ Immediate Window либо <Ctrl>+<G>.

Синтаксис:

Debug.Print [списокПечати]

СписокПечати– необязательный аргумент. Выражение или список печатающихся выражений. Если этот аргумент опущен, выводится пустая строка. Для списокПечати используются следующие синтаксис и элементы:

{Spc(n) | Tab(n)} выражение позиция

Spc(n)– указывает количество пробелов n, вставляемых в выводящийся текст.

Tab(n)– помещает курсор в экранный столбец с номером n. Элемент Tab без аргумента помещает курсор в первый столбец следующей зоны печати.

Выражение числовое выражение или строковое выражение, определяющее выводящийся текст.

Позиция– указывает позицию, в которой выводится следующий символ. Двоеточие (:) помещает курсор непосредственно за последним выведенным символом. Tab(n) помещает курсор в экранный столбец с номером n. Элемент Tab без аргумента помещает курсор в первый столбец следующей зоны печати. Если аргумент Позицияопущен, следующий символ выводится в начале новой строки.

Для печати нескольких выражений следует разделять их точкой с запятой или пробелом. Если выражения разделены запятой, то каждое следующее начинается с новой зоны печати. Все данные отображаются в окне отладки с учетом национальной настройки. Используется соответствующее форматирование (с указанным символом десятичного разделителя), а ключевые слова выводятся на языке, используемом в главном приложении. Логические (тип Boolean) значения печатаются как True или False. Ключевые слова True и False отображаются в соответствии с языком головного приложения.

Пример использования метода Print

Метод Print выводит значение переменной Z в окне отладки.

Dim X As Single, Y As Single, Z As Single

X = 23: Y = 0.15

Z = X * Y

Debug.Print X; Y; Z


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.)