ПравообладателямКак улучшить работу ума, Паронджанов Владимир
Книжная полка
перейти на полку → Хочу прочитатьЧитаюПрочитана
ИзбранноеВладею
Чтобы воспользоваться книжной полкой выполните вход либо зарегистрируйтесь
← Назад
Скачать: , Паронджанов Владимир Даниелович pdf   Читать
Купить →
Купить →

Ожидайте...

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

Дается общедоступный практический курс, помогающий увеличить силу ума, ускорить разработку алгоритмов и программ, упростить формализацию профессиональных знаний, облегчить проектирование сложной деятельности и бизнес-процессов. Курс основан на `дружелюбных` графических языках, обладающих удивительной наглядностью, `заставляющих` мозг мыслить отчетливо, глубоко и продуктивно.

PDF. Как улучшить работу ума. Паронджанов В. Д.
Страница 246. Читать онлайн

ИСТОРИЧЕСКАЯ СПРАВКА

Согласно классической теореме Бома и Джакопини, всякая реальная программа может быть построена из функциональных блоков (действий) и двух конструкций: цикла и дихотомического выбора (развилки) [1]. Эдсгер Дейкстра обогатил и усилил эту идею, предложив отказаться от оператора безусловного перехода goto и ограничиться тремя управляющими конструкциями: последовательность, цикл, выбор [2].

Дональд Кнут подверг критике тезис Дейкстры о полном исключении goto, продемонстрировав случаи, где goto полезен. В итоге возникла плодотворная дискуссия, строго говоря, не завершенная до сих пор, в ходе которой выявились четыре варианта мнений (табл. 4).

Та?ыиаа 4

Позиция

участников

дискуссии

Используются

заменители

gntn?

Используются

три структурные

конструкции?

Используются

gntn?

Вариант 1 Вариант 2 Вариант 3 Вариант 4

Да

Нет

Нет

Да Да

Нет

Да

Да Да

Да

Да

Нет

246

Вариант 1 описывает ортодоксальную позицию Дейкстры, согласно которой оператор goto имеет "гибельные последствия" и поэтому "должен быть исключен из всех языков программирования высокого уровня". Исходя из этого были разработаны языки без goto: PDL [3], BLISS и др.

Вариант 2 отражает мнение ранних критиков Дейкстры, позиция которых выражается словами: "использование оператора goto может оказаться уместным в лучших структурированных программах"; "всегда были примеры программ, которые не содержат goto и аккуратно расположены лесенкой в соответствии с уровнем вложенности операторов, но совершенно непонятны, и были другие программы, содержащие goto u все же совершенно понятные". Поэтому нужно "избегать использования goto всюду, где это возможно, но не ценой ясности программы" [4].

Как известно, полемика по goto "растревожила осиное гнездо" и всколыхнула "весь программистский мир". Варианты 1 и 2 выражают крайние позиции участников дискуссии, между которыми, как казалось вначале, компромисс невозможен. Однако ситуация изменилась с изобретением и широким распространением заменителей goto, примерами которых являются: в языке СИ — операторы break, continue, return u функция exit ( ), в языке МОДУЛА-2 — операторы RETURN, EXIT, процедура HALT и т. д.

Заменители — особый инструмент, который существенно отличается как от трех структурных управляющих конструкций, так и от goto. Они обладают двумя важными преимуществами по сравнению с goto:

1) не требуя меток, заменители исключают ошибки, вызванные путаницей с метками;

Обложка.
PDF. Как улучшить работу ума. Паронджанов В. Д. Страница 246. Читать онлайн