|
|||||||||||||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Операции сравнения
Пусть переменная типа Boolean с именем R должна принимать значение True, если точка с координатами X,Y попадает в прямоугольную область, ограниченную координатами X1,X2 и Y1,Y2. Если точка за пределами прямоугольника, то R=False. Применив логическую операцию AND (И), вычислим значение R: R = (X>=X1) AND (X<=X2) AND (Y>=Y1) AND (Y<=Y2) Смысл этой операции в том, что если и первое выражение (X больше или равно X1) истинно, и второе истинно, и третье истинно, и четвертое истинно, то R=True. Если один из операндов логической операции AND представляет собой ложное выражение (утверждение), то и результатом будет False. Кроме операции AND, к числу часто используемых логических операций относятся OR и NOT. Первая из них дает результат True, если истинно хотя бы одно выражение, являющееся операндом. Операция NOT изменяет результат на противоположный, подобно смене знака в арифметическом выражении. Вычислим R с помощью этих операций: R = NOT ((X<X1) OR (X>X2) OR (Y<Y1) OR (Y>Y2)) Выражение, стоящее в скобках после операции NOT, истинно (True), если точка или левее, или правее, или ниже, или выше воображаемого прямоугольника, т.е. если точка в него не попала. В этом случае R будет иметь значение False благодаря логическому отрицанию NOT. Несколько реже используются логические операции XOR (исключающее ИЛИ), EQV (эквивалентность) и IMP (импликация). Первая из них дает результат True, если только одно из выражений-операндов имеет результат True. Результатом операции EQV будет True, если выражения-операнды дают одинаковый результат. Результатом IMP будет True, если выражения-операнды дают разные результаты. Перейдем теперь ко второй, важнейшей в любом языке программирования, группе инструкций. Это инструкции проверки условий и организации циклов. Все они позволяютуправлять последовательностью исполнения инструкций в программе. Инструкция IF (ЕСЛИ) используется в двух нотациях: в виде простой и блочной структур. Инструкция простой структуры имеет следующую форму записи: If <Выражение> Then <Инструкция, исполняемая, если выражение-условие истинно>. Конструкция блочной структуры может включать один блок инструкций (<Блок 1>), исполняемых, если выражение 1 истинно, или же еще дополнительные условия, сопровождаемые блоками инструкций:
If <Выражение1> Then <Блок 1 – исполняется, если выражение 1 истинно> ElseIf <Выражение2> Then <Блок 2 – исполняется, если выражение 2 истинно > ElseIf <Выражение3> Then <Блок 3 – исполняется, если выражение 3 истинно > ………………….. Else <Блок инструкций, исполняемых, если ложны выражения в инструкциях If и ElseIf> End If Приведем пример простой инструкции If: If R Then MsgBox “Точка попала в прямоугольник”. Теперь пример блочной структуры: R = False If X < X1 Then GoTo 10 ’уже ясно, что точка не попала в прямоугольник ElseIf X > X2 Then GoTo 10 ‘управление передается на метку 10 ElseIf Y < Y1 Then GoTo 10 ElseIf Y > Y2 Then GoTo 10 Else R = True End If 10: MsgBox R ’после метки ставится двоеточие
Блоки ElseIf и (или) Else могут отсутствовать. В любом случае блочная конструкция оканчивается инструкцией End If. Приведенный пример, кроме блочной конструкции IF, поясняет возможность использования в программе меток и передач управления с помощью инструкции GoTo. Метка не обязательно обозначается числом – можно было написать и N10 или MsgR. В ситуациях, когда требуется запрограммировать три и более разветвлений в зависимости от значения одной переменной, удобно использовать структуру Select Case: Select Case <Переменная> Case <Значение 1> либо Case is <Условие 1> <Блок 1 – выполняется, если значение переменной равно значению 1 или соответствует условию 1> Case <Значение 2> либо Case is <Условие 2> <Блок 2 – выполняется, если значение переменной равно значению 2 или соответствует условию 2> …………………. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.) |