Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы на вопросы1.docx
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
476.99 Кб
Скачать

40. Выражения

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

Порядок вычисления выражения:

  • по первому операнду определяется тип выражения;

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

Например, переменная з в операторе

з = "Результат = " + 4 / "2-я строка";

получит символьный тип и значение, равное "Результат = 2". Действительно, операция / имеет более высокий приоритет, чем операция +, поэтому прежде будет вычислено подвыражение 4/"2-я строка", которое, судя по его первому операнду, является числовым и поэтому вернет число 2. Далее это число будет преобразовано в строку "2", которая объединится со строкой "Результат = ".

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

перем а; // Объявляем скалярную переменную а

б = 2 + а; // Вернет 2

в = а + 2; //Вернет пустое значение

Переменная агрегатного типа данных воспринимается в выражениях, имеющих более одного операнда, как пустое значение. Например:

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

а = табл + 2; // Вернет пустое значение

б = табл; // Типы переменных б и табл совпадают

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

2.5 /1.33 > 0 // Вернет 1

(а = 5) и (б = 2) //Вернет 0, если, например, а = 1

Логические выражения употребляются в управляющих конструкциях языка, например

если 2.5 /1.33 > 0 тогда

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

иначе

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

конецЕсли;

41. Операции

Арифметические операции для числового типа данных

С каждым типом данных связан набор операций. С числовыми данными используются арифметические операции *, /, +, - и операция %, возвращающая остаток от деления операндов, например:

5 % 2 // Вернет 1

5.2 % 2 // Вернет 1

5.8 % 2 // Вернет 0

5.8 % "2-я строка" // Также вернет 0

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

Операции для строк и дат

В символьных выражениях допустима только операция +, называемая операцией конкатенации. Например:

"1-я строка и " + "строка 2" // Вернет строку "1-я строка и строка 2"

В выражениях типа Дата можно употреблять операции + и -, например

'21.12.01'+11; // Выражение типа Дата, возвращающее дату 01.01.02

'21.12.01' -11; // Выражение типа Дата, возвращающее дату 10.12.01

Следующее выражение ошибочно:

'21.12.01' * 11 // Ошибка! Операция * недопустима в выражениях типа Дата

"Истина" и "ложь" в 1с

Констант со значениями истина и ложь во встроенном языке 1С нет. В то же вре­мя понятия истина и ложь используются в 1С при оценке логических выражений, появляющихся в управляющих конструкциях языка.

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

В логических выражениях используются приведенные в табл. 1 операции отношения.

Таблица 1 Операции отношения

Операция

Описание

<

Меньше

<=

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

>

Больше

>=

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

=

Равно

<>

Не равно

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

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

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

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

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

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

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

перем а[5];

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

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

1) цикл

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

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

конецЦикла;

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

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

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