Студопедия — Операции отношения
Студопедия Главная Случайная страница Обратная связь

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

Операции отношения






Операция Описание
< Меньше
<= Меньше или равно
> Больше
>= Больше или равно
= Равно
<> Не равно

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

2 = 5 // Вернет ложь

"Строка 2">"Строка 1" // Вернет истина

2<'23.12.01'> // Это неверное выражение отношения, так как его операнды имеют разный тип

Также операндами операций = и <> могут быть переменные агрегатного типа. Например:

тЗнач1 = СоздатьОбъект("ТаблицаЗначений");

сСотр = СоздатьОбъект("Справочник.Сотрудники");

тЗнач2 =тЗнач1;

// Круглые скобки в ниже записанном логическом выражении обязательны

если (тЗнач1 = тЗнач2) и (тЗнач1 = сСотр) тогда

Сообщить("Да");

иначе

Сообщить("Нет");

конецЕсли;

Если операция отношения выполняется над строками, то они сравниваются по­символьно до тех пор, пока не будут обнаружены несовпадающие символы.

Символ сим_1 больше сим_2, если код символа сим_1 больше кода символа сим_2.

Если строки-операнды операции отношения имеют разную длину и если есть необходимость продолжить сравнение символов строк-операндов (все предыдущие сравниваемые символы оказались равными), то в качестве недостающего символа более короткой строки используется символ с нулевым кодом. Например:

" Строка" > "Строка 1" // Вернет ложь

Логические операции

Применяются следующие логические операции:

НЕ - логическое НЕ (отрицание);

И - логическое И;

ИЛИ - логическое ИЛИ.

Операндами логических операций должны быть логические выражения. В табл. 2 приведены результаты логических операций над логическими выражениями ЛВ1 и ЛВ2, принимающими значения истина (И) или ложь (Л).

Таблица 2

Таблица истинности

 

ЛВ1 ЛВ2 ЛВ1 И ЛВ2 ЛВ1 ИЛИ ЛВ2 НЕ ЛВ1
И И И И Л
И Л Л И Л
Л И Л И И
Л Л Л Л И

Приоритет выполнения операций

Все операции 1С выполняются в выражении слева направо в соответствии с их приоритетом (старшинством), то есть, если две последовательные операции имеют равный приоритет, первоначально выполняется левая операция. Подвыражения, заключенные в круглые скобки, вычисляются в первую очередь. В табл. 3 операции 1С расположены в порядке убывания их приоритета. Приоритет выполнения операций

 

% *,/ +, - НЕ И ИЛИ <, <=, >, >=, =, <>

Пример. Вычислить результат логического выражения (х / а = 1) или (б / (а + б) < 1) и не (б = а) или (х <> 6) при х = 6.0, а = 2.0 и б=3.0.

Вычислив результат операций подвыражений, заключенных в круглые скобки, получим:

ложь или истина и не ложь или ложь.

Далее выполняем пошагово логические операции с учетом их приоритета. После выполнения не ложь: ложь или истина и истина или ложь.

После выполнения истина и истина: ложь или истина или ложь.

Окончательный результат: истина.

42 Работа с массивами. Примеры.

Массив - это объект данных, содержащий несколько значений, доступ к которым осуществляется по их номеру (индексу).

Число элементов массива называется его размером. Размером массива может быть только целочисленная буквальная константа.

§ Объявляем одномерный массив (вектор) а из пяти элементов.

перем а[5];

Элементы массива имеют следующие имена: а[1], а[2], а[3], а[4] и а[5]. В этих именах величины 1 - 5 - индексы элементов массива.

§ Массив считается определенным, если заданы значения всех его элементов. Для задания начальных значений элементов массива (инициализации массива) можно использовать:

1) цикл

для ин = 1 по 5 цикл

а[ин] = 1; // Теперь все элементы массива равны единице

конецЦикла;

2) присваивание

а[2] = 3; // изменят значение 2-го элемента массива а

а[5] = -4.7; // изменят значение 5-го элемента массива а

§ В качестве индексов массива могут использоваться числовые выражения, называемые индексными выражениями. Например:

а[6 / 2] = 9.1; // Меняем значение 3 - г о элемента массива а

§ Если индексное выражение массива вычисляется с нецелым значением, то в качестве индекса берется целая часть этого значения. Например:

а[6/5] = 9.1; // Меняем значение 1 -го элемента массива а

§ Значение индекса не должно выходить за границы массива. Так, при работе с ранее объявленным массивом а из пяти элементов ошибочны операторы

а[0] = 5; // Индекс не может быть меньше числа 1

а[6] = 9; // Индекс не может быть больше числа 5

§ Элементы одного и того же массива могут быть разного типа. Например:

а[1] = 5; // Элемент числового типа

а[3] = "Строка"; // Элемент символьного типа

а[5] ='25.11.01'; // Элемент типа Дата

§ Элементы массива могут быть агрегатного типа. Например:

сСотр= СоздатьОбъект("Справочник.Сотрудники");

табл = СоздатьОбъект("Таблица");

а[1] = 5; // Элемент числового типа

а[3] = сСотр; // Элемент агрегатного типа

а[5] = табл; // Элемент другого агрегатного типа

 

§ Массив не может в качестве элементов содержать другие массивы.

§ Массив может быть формальным параметром программного компонента (процедуры или функции). При этом размер массива не указывается, а квадратные скобки сохраняются. Для определения размера переданного процедуре (функции) массива используется встроенная функция Разм. Например:

// раздел переменных

перем ин, а[16], размА;

// раздел процедур и функций

процедура ИнициализацияМассива(а[])

для ин = 1 по размА цикл

а[ин] = ин; // Теперь все элементы массива проинициализированы

конецЦикла;

а[8/3] = -5;

а[3]="Строка";

а[4]='20.12.07';

конецПроцедуры // ИнициализацияМассива

процедура Выполнить()

// Вызов процедуры, устанавливающей начальные значения элементов массива

// Ее фактическим параметром является имя массива

ОчиститьОкноСообщений();

ИнициализацияМассива(а);

для ин=1 по размА цикл

Сообщить(а[ин]);

конецЦикла;

конецПроцедуры // Выполнить

 

// раздел основной программы

размА = Разм(а); // Встроенная функция Разм вернет размер массива а

 

43 Встроенные функции для разных типов данных. Математические функции. Функции для строк

математические функции применяются с числовыми типами данных. Они имеют в качестве аргументов числовые выражения и возвращают (если при их исполнении не возникло ошибки) некоторое число.







Дата добавления: 2015-10-12; просмотров: 405. Нарушение авторских прав; Мы поможем в написании вашей работы!



Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...

Картограммы и картодиаграммы Картограммы и картодиаграммы применяются для изображения географической характеристики изучаемых явлений...

Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Анализ микросреды предприятия Анализ микросреды направлен на анализ состояния тех со­ставляющих внешней среды, с которыми предприятие нахо­дится в непосредственном взаимодействии...

Типы конфликтных личностей (Дж. Скотт) Дж. Г. Скотт опирается на типологию Р. М. Брансом, но дополняет её. Они убеждены в своей абсолютной правоте и хотят, чтобы...

Гносеологический оптимизм, скептицизм, агностицизм.разновидности агностицизма Позицию Агностицизм защищает и критический реализм. Один из главных представителей этого направления...

Билиодигестивные анастомозы Показания для наложения билиодигестивных анастомозов: 1. нарушения проходимости терминального отдела холедоха при доброкачественной патологии (стенозы и стриктуры холедоха) 2. опухоли большого дуоденального сосочка...

Сосудистый шов (ручной Карреля, механический шов). Операции при ранениях крупных сосудов 1912 г., Каррель – впервые предложил методику сосудистого шва. Сосудистый шов применяется для восстановления магистрального кровотока при лечении...

Трамадол (Маброн, Плазадол, Трамал, Трамалин) Групповая принадлежность · Наркотический анальгетик со смешанным механизмом действия, агонист опиоидных рецепторов...

Studopedia.info - Студопедия - 2014-2024 год . (0.011 сек.) русская версия | украинская версия