Циклы в 1С

Циклы позволяют выполнить определенное действие множество раз, в зависимости от условия.

Цикл Для

а = 0;
Для Сч = 1 По 9 Цикл
	а = а + 1;	
КонецЦикла;

После ключевого слова Для идет объявление переменной Сч. Данная переменная всегда имеет тип Число. Имя переменной может быть любым, удовлетворяющим правилам названия переменных в 1С.

После ключевого слова По идет ограничение для переменной Сч. Как только Сч станет больше данного значения — цикл прекратит свое выполнение.

В данном примере цикл выполнится 9 раз.

Цикл Пока

а = 0;
Пока а < 9 Цикл
	а = а + 1;	
КонецЦикла;

Цикл будет выполняться пока истинно условие после ключевого слова Пока. Если условие изначально ложно, то цикл не выполнится ни разу.

Операторы Продолжить и Прервать

Оператор Прервать используется, если нужно прекратить выполнение цикла, не дожидаясь его завершения.

а = 0;
Для Сч = 1 По 9 Цикл
	а = а + 1;	
	Если а = 5 Тогда
		Прервать;
	КонецЕсли;	
КонецЦикла;

В данном примере цикл выполнится только 5 раз, а не 9.

Если нужно пропустить одну итерацию, то можно использовать оператор Продолжить

а = 0;
б = 0;
Для Сч = 1 По 9 Цикл
	а = а + 1;
	Если а = 5 Тогда
		Продолжить;
	Иначе
		б = б + 1;	
	КонецЕсли;	
КонецЦикла;

В данном примере после выполнения цикла переменная «а» будет равно 9, а переменная «б» 8, так как одна итерация была пропущена. Как только было встречено ключевое слово Продолжить выполнение цикла перешло в его начало.

Цикл Для Каждого

С помощью данного цикла перебираются коллекции значений, например массив:

Массив = Новый Массив;
Массив.Добавить(1);
Массив.Добавить(2);
Массив.Добавить(3);
Для Каждого ЭлементМассива Из ПеременнаяМассив Цикл
	Сообщить(ЭлементМассива);	
КонецЦикла;

После ключевого слова Каждого указывается имя переменной, в которую на каждой итерации цикла будет помещен очередной элемент коллекции, указанной после ключевого слова Из. Переменная доступна как для чтения, так и для изменения, но при этом нужно учитывать, что изменяться будет не элемент массива, а переменная.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями: