> -- PSV100 писал(а):
> Если соответствующих инструментов нет, то в рамках Паскале/С-подобных языков имеется лишь одно допустимое стандартами средство -- цикл for, без него не о чем говорить (видимо, в т.ч. и насчёт "принципов Калашникова" тоже). Иными словами, "бяка" по методике "под доказательство" -- for + break/exit -- является единственной допустимой формой в реальных стандартах безопасности.Сумбурно как-то.
1. В рамках многих С-подобных языков нет for такого же, как в Паскале. Есть лишь синтаксическое подобие, само по себе ничего не гарантируещее.
2. Как можно прочесть в цитате и пояснинии Дмитрия Дагаева, в стандарте не указано, как именно реализовывать постоянные границы переменной цикла. Поэтому такой вариант, особенно с учётом п.1 тоже подходит
## Код:
```
i := 300;
WHILE (0 < i) & SomeCondition() DO
    DEC(i);
    SomeDo()
END
```
Поэтому все остальные рассуждения про надёжность и теоретическую(!) неприменимость неверны.