Циклы позволяют выполнить определенное действие множество раз, в зависимости от условия.
Цикл Для
1 2 3 4 |
а = 0; Для Сч = 1 По 9 Цикл а = а + 1; КонецЦикла; |
После ключевого слова Для идет объявление переменной Сч. Данная переменная всегда имеет тип Число. Имя переменной может быть любым, удовлетворяющим правилам названия переменных в 1С.
После ключевого слова По идет ограничение для переменной Сч. Как только Сч станет больше данного значения — цикл прекратит свое выполнение.
В данном примере цикл выполнится 9 раз.
Цикл Пока
1 2 3 4 |
а = 0; Пока а < 9 Цикл а = а + 1; КонецЦикла; |
Цикл будет выполняться пока истинно условие после ключевого слова Пока. Если условие изначально ложно, то цикл не выполнится ни разу.
Операторы Продолжить и Прервать
Оператор Прервать используется, если нужно прекратить выполнение цикла, не дожидаясь его завершения.
1 2 3 4 5 6 7 |
а = 0; Для Сч = 1 По 9 Цикл а = а + 1; Если а = 5 Тогда Прервать; КонецЕсли; КонецЦикла; |
В данном примере цикл выполнится только 5 раз, а не 9.
Если нужно пропустить одну итерацию, то можно использовать оператор Продолжить
1 2 3 4 5 6 7 8 9 10 |
а = 0; б = 0; Для Сч = 1 По 9 Цикл а = а + 1; Если а = 5 Тогда Продолжить; Иначе б = б + 1; КонецЕсли; КонецЦикла; |
В данном примере после выполнения цикла переменная «а» будет равно 9, а переменная «б» 8, так как одна итерация была пропущена. Как только было встречено ключевое слово Продолжить выполнение цикла перешло в его начало.
Цикл Для Каждого
С помощью данного цикла перебираются коллекции значений, например массив. С массивом мы познакомимся позднее, пока можно сказать, что это некий контейнер, в котором последовательно хранятся значения.
1 2 3 4 5 6 7 8 |
Массив = Новый Массив; //методом Добавить добавляем в массив несколько значений Массив.Добавить(1); Массив.Добавить(2); Массив.Добавить(3); Для Каждого ЭлементМассива Из ПеременнаяМассив Цикл Сообщить(ЭлементМассива); КонецЦикла; |
После ключевого слова Каждого указывается имя переменной, в которую на каждой итерации цикла будет помещен очередной элемент коллекции, указанной после ключевого слова Из. Переменная доступна как для чтения, так и для изменения, но при этом нужно учитывать, что изменяться будет не элемент массива, а переменная.