Лабораторная работа №10 Инструкция «Если» Инструкция «Если» существует для того, чтобы направить исполнение программы по одному или по другому пути. Выглядит она следующим образом (Рис.1): Рис.1. Инструкция «Если» Она позволяет выделить несколько инструкций, которые будут выполняться не всегда, а только тогда. Когда в результате вычисления логического выражения получается Истина. Слова Если, Тогда и КонецЕсли являются обязательными в этой инструкции. Логическое выражение пишется между словами Если и Тогда. А КонецЕсли показывает, где заканчиваются инструкции, выполнение которых зависит от условия Задание 1. Создайте переменную и запишите в нее свой возраст - МойВозраст. А затем создайте другую переменную, ЯИдуВДетскийСад, и присвойте ей значение Истина. Установите точку останова на строке Если …, запустите «1С: Предприятие» в режиме отладки и посмотрите значение выражения МойВозраст < 7. (Shift + F9) (Рис.2). Рис.2. Создание двух переменных Рис. 3. Значение выражения «МойВозраст < 7» Вы увидите, что оно равно Ложь. Раз выражение ложно, значит, платформа должна пропустить все инструкции, которые написаны внутри инструкции Если. Проверьте это с помощью пошагового исполнения (F11) Сделайте один шаг (Рис.4). Рис.4. Один шаг исполнения Платформа пере дет на строку КонецЕсли. А если вы шагнете еще раз, то она остановится на строке КонецПроцедуры. При этом значение переменной ЯИдуВДетскийСад будет Неопределенно, потому что эта инструкция не выполнялась, и такая переменная даже не создавалась. А теперь познакомимся с тем, как поведет себя платформа в том случае, когда выражение истинно. Воспользуйтесь возможностью изменения значений переменных. Чтобы это сделать, вам потребуется сначала перезапустить отладку. Для этого выполните команду Отладка – Перезапустить (Рис. 5). Рис.5. Перезапустить отладку После того как отладка перезапустится, исполнение снова остановится на строке Если… Откройте локальные переменные. Дважды щелкните мышью по ячейке со Значением или через контекстное меню – Установить новое значение в виде выражения. Введите значение – 6. Рис. 6. Изменение значения переменной После отладки значение выражения МойВозраст < 7 будет равно Истина (Рис.7). Рис. 7. Значение выражения «МойВозраст < 7» Задание 2. Доработайте пример так, чтобы в результате его работы у вас создавались две переменные: ЯИдуВДетскийСад и ЯИдуВШколу. И чтобы они принимали правильные значения (Истина или Ложь) в зависимости от возраста, указанного в переменной МойВозраст (Рис. 8). Рис. 8. Доработанный пример Запустите «1С:Предприятие» в режиме отладки и проверьте по шагам правильность работы примера для разных значений возраста. Очень часто в инструкции Если анализируется не одно, а несколько условий. Запишите следующий алгоритм «До 7 лет нужно идти в детский сад, после детского сада нужно идти в школу, учится в школе заканчивают в 18 лет, а в 19 лет поступают в институт». Чтобы записать этот алгоритм на встроенном языке, вам понадобится еще одно ключевое слово – ИначеЕсли. В вашем примере его нужно будет написать вместо ключевого слова Иначе. А затем написать условие, при котором вам нужно идти в школу. А в конце примера вы снова добавите слово Иначе и укажите, что во всех остальных случаях вы идете в институт (Рис.9). Рис. 9. Новое условие В режиме отладки пойдите по разным веткам инструкции Если и посмотрите, как она работает. Рис.10. Не определены переменные «ЯИдуВШколу и ЯИдуВДетскийСад» Рис. 11. Переменная «ЯИдуВИнститут» не определена Другой вариант примера: прямо перед инструкцией Если вы создаете все переменные, которые вам понадобятся и присваиваете им некоторое стандартное значение – значение «по молчанию», например Ложь. А дальше, в ветках инструкии Если, вы меняете значения только тех переменных, которым это действительно нужно (Рис.12). Рис. 12 Другой вариант примера Задание 3 для самостоятельной работы Вы с другом каждый день играете в компьютерные игрыю. В будний день родители разрешают вам играть только одиин час. В выходные дни вы можете играть по 4 часа. Используя переменную НомерДняНедели, вычислите сколько часов вы можете играть с другом в выбранный день. Результат поместите в переменную ВремяДляИгры. Задание 4 для самостоятельной работы Супермаркет работает с 9 часов утра до 8 часов вечера. Вам нужно сходить в супермаркет и купить кефир. Если кефира не будет, то ряженку. Если не будет ни того, ни другого, тогда нужно зайти в круглосуточный магазин и купить молоко, если оно там есть. Используйте переменные ЕстьКефир, ЕстьРяженка, ЕстьМолоко и ТекущийЧас. Название совей покупки в виде строки поместите в переменную МояПокупка.