albobin писал(а):
Конечно речь шла об этой конструкции с самого начала (не примите это как ответ за И.Ермакова), вот поэтому и возникло замечание...
исходная конструкция с AND THEN не сводима к последовательности IFов, которую я привёл, хотя наличие AND провоцирует на это.
А не сводима по очевидной причине - значения одних и тех лог.выражений могут не совпадать при переходе на следующий IF.
Видимо, поэтому в выделенной отсюда ветке и обсуждаются подходящие ключевые слова и другой синтаксис - чтобы явно читалось...
albobin писал(а):
И ещё. Лично я не сторонник использование только одного подхода (шаблона). Нет одного наилучшего решения. Всё зависит от конкретной задачи.Выбор того или иного способа определяется эстетичностью, наглядностью и т.п. конечного результата.
Ага. Вот я тут набросал "графитно" - возможны ещё как минимум два варианта (правда, в языках без БП можно реализовать, конечно, только ЦД):
Вложение:
Рисунки А3LS - Конструкция AND-THEN (примитив, силуэт и ЦД).png [ 198.13 КБ | Просмотров: 5104 ]
Минус ЦД-варианта, каков он здесь - при выходе всё равно надо проходить по ЦД-шапке (сравнивая с нулевым номером этапа). Плюс - мы видим, чего делаем для выбора маршрута (как в автоматном программировании - напр.
здесь). И, если я правильно понимаю - конструкция с явным использованием номера этапа будет делать то же самое - какими ключевыми словами её не представляй...
Кстати, ЦД-вариант, наверное, можно оптимизировать - перенося как-то содержательные условия из "подвала" в "шапку" (считая, что на входе в конструкцию у нас "всё удалось")... подумать надо...
Ещё один плюс ЦД-записи - уже технологический - при создании ЦД можно обойтись вложениями атомарных блоков (см. в этом подпункте).