====== Условные операторы ====== ===== Описание. ===== Условные операторы используются для реализации ветления веток алгоритмов. Обычно конструкция с условными оператором выглядит следующим образом: Если а = 1 Тогда //Операции которые будут выполнены если условие истинно ИначеЕсли а = 2 Тогда//этой ветки может и не быть, если она нам не нужна //Операции которые будут выполнены если второе условие истинно Иначе //этой ветки может и не быть, если она нам не нужна //Операции которые будут выполнены если все условия ложны КонецЕсли; В условных конструкциях между операторами ''Если'',''Иначе'' и ''Тогда'' интерпретатор ожидает увидеть булевскую константу ''Истина'' или ''Ложь''. Это может быть результат сравнения условного выражения или просто переменная с типом [[1c:база:булевскаялогика|булево]]. Если вы уверены что у вас в переменной булево или вы делаете сравнение, не имеет смысла писать условия типа ''Если РеализацияПроведена = Истина Тогда'' интерпретатор выполнит плюс одно ненужное сравнение, гораздо логичнее и проще писать: ''Если РеализацияПроведена Тогда''. ===== Сокращенная форма записи. ===== Условный оператор имеет сокращенную форму, которую логично использовать для коротких условий, которые можно поместить в одну строку. В этом случае сокращенная форма записи делает код более компактным. Вот как это выглядит: А = ?( А = 1, Б, В); Здесь в случае если ''А = 1'' ей будет присвоено значение переменной Б иначе она получит значение переменной В. ===== Проверка на выполнение условия только когда это имеет смысл. ===== В случаях когда выполнение второго и последующих условных выражений не имеет смысла, оператор его не производит. Например: Если ТипЗнч(А) = "Структура" И А.КакоеТоСвойство = 1 Тогда Здесь проверка свойства 'КакоеТоСвойство' будет выполнена только в том случае если тип переменной А является структурой. Иногда это бывает очень удобным, например в том случае, если бы в переменной А у нас оказалось ''Неопределенно'' попытка найти у нее какой либо свойство, привело бы к ошибке и остановило выполнение программы.