|
Философский вопрос об оформлении кода - 3 |
☑ |
0
quest
03.06.12
✎
23:49
|
Всего мнений: 17
Трава стала еще забористее.
уже 3 эквивалентных варианта кода (здесь ТЗ это таблица значений)
1.
для каждого СтрокаТЗ из ТЗ цикл
что-то делаем со СтрокаТЗ;
КонецЦикла;
2.
всего = ТЗ.Количество()-1;
для ИндексСтроки = 0 по всего цикл
СтрокаТЗ = ТЗ[ИндексСтроки];
что-то делаем со СтрокаТЗ;
КонецЦикла;
3.
всего = ТЗ.Количество()-1;
ИндексСтроки = 0;
пока ИндексСтроки < всего цикл
СтрокаТЗ = ТЗ[ИндексСтроки];
что-то делаем со СтрокаТЗ;
ИндексСтроки = ИндексСтроки + 1;
КонецЦикла;
Какой из вариантов вам ближе? в каких случаях? почему?
|
|
1
0_Serg_0
03.06.12
✎
23:51
|
2 вариант
но вместо
всего = ТЗ.Количество()-1;
для ИндексСтроки = 0 по всего цикл
написал бы
всего = ТЗ.Количество();
для ИндексСтроки = 0 по всего-1 цикл
или
для ИндексСтроки = 0 по ТЗ.Количество()-1 цикл
Вариант 2 |
|
44
dva1c
04.06.12
✎
06:40
|
Можно использовать и...
Вариант 2 |
|
48
shamannk
04.06.12
✎
08:24
|
А если в первом варианте из этого же тз удалять строку то обходить тз цикл будет меньше раз на кол-во удаленных. Пример тз из 2строк 1ую удаляем и цикл завершается.
Вариант 2 |
|
57
Ахиллес
04.06.12
✎
10:05
|
Удобнее, когда точка выхода из функции 1, поэтому
Вариант 2 |
|