Мы обсуждаем сферического коня в вакууме. Приведите пожалуйста пример, когда выход из тела внутреннего цикла не обусловлен тем, что получен некий результат.
Дело не в коне, а в том, что "программирование без goto" - это одна из составляющих подхода под названием "структурное программирование", который подразумевает примерно следующее
1. Вся программа строится из ограниченного набора элементарных управляющих конструкций (модуль (подпрограмма), условный оператор, цикл типа for, цикл типа while/until).
2. Каждая управляющая конструкция содержит один вход и один выход (например, вход в цикл осуществляется только через его заголовок, выход - по оператору конца цикла, работа подпрограммы завершается оператором return, находящимся в конце и т.п.).
3. Порядок управляющих конструкций в модуле соответствует порядку выполнения этого модуля (т.е., нет переходов назад).
4. Вводятся определенные правила форматирования кода программы и наименования переменных.
Весь подход был предложен для улучшения читаемости и "отлаживаемости" программ.
Так вот программирование без goto, рассматриваемое как часть структурного программирования, выглядит абсолютно естественным ограничением, но таким же ограничением является правило одного return'а в конце продпрограммы.
Сейчас термин "структурное программирование" практически не используется, и многие знают только, что Пророк (Кнут) когда-то назвал goto неприличным словом из четырех букв, и поэтому избегают его прямо-таки с религиозным фанатизмом (выступления типа "убил бы" как раз из этой серии
)
Ничего личного.
-- Пт ноя 06, 2009 20:56:39 --Есть предложение, уж если развязалась такая драка, попросить модераторов выделить всю эту беседу в отдельную тему.