Учись писать, читать и понимать алгоритмы. Алгоритмы для правильного мышления. Основы алгоритмизации
Покупка
Тематика:
Программирование и алгоритмизация
Издательство:
ДМК Пресс
Год издания: 2023
Кол-во страниц: 521
Дополнительно
Вид издания:
Учебно-методическая литература
Уровень образования:
Дополнительное образование
ISBN: 978-5-89818-636-4
Артикул: 460564.02.99
Излагаются новые полезные для практики идеи и достижения, помогающие легко и быстро освоить алгоритмы. Дается систематизированное изложение основных понятий и методов алгоритмизации. Книга содержит общедоступный практический курс, позволяющий существенно ускорить разработку, анализ и проверку алгоритмов, облегчить проектирование сложной деятельности. Ведется наглядное обучение на примерах. Читатель быстро привыкает к самостоятельному осмысленному составлению алгоритмов.
Использованы доходчивые и привлекательные чертежи алгоритмов (дракон-схемы), значительно облегчающие усвоение материала. Книга богато иллюстрирована. Почти триста наглядных схем и рисунков, выполненных по принципу «Посмотрел — и сразу понял!», окажут читателю неоценимую помощь.
Книга предназначена для начинающих и профессионалов, а также для самостоятельного изучения.
- Полная коллекция по информатике и вычислительной технике
- ДМК Пресс. Информационные системы и технологии
- ДМК Пресс. ИТ-технологии для обучающихся
- Интермедиатор. Информационные системы и технологии (сводная)
- Интермедиатор. ИТ-технологии для обучающихся (сводная)
- Программирование
- Программирование и алгоритмизация
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.01: Информатика и вычислительная техника
- 09.03.02: Информационные системы и технологии
- 09.03.03: Прикладная информатика
- 09.03.04: Программная инженерия
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Владимир ПАРОНДЖАНОВ УЧИСЬ ПИСАТЬ, ЧИТАТЬ И ПОНИМАТЬ АЛГОРИТМЫ Москва, 2023 АЛГОРИТМЫ ДЛЯ ПРАВИЛЬНОГО МЫШЛЕНИЯ Основы алгоритмизации 2-е издание, электронное
УДК 004.438ДРАКОН:004.021 ББК 32.973.26-018.2 П18 П18 Паронджанов, Владимир Данилович. Учись писать, читать и понимать алгоритмы. Алгоритмы для правильного мышления. Основы алгоритмизации / В. Д. Паронджанов. — 2-е изд., эл. — 1 файл pdf : 521 с. — Москва : ДМК Пресс, 2023. — Систем. требования: Adobe Reader XI либо Adobe Digital Editions 4.5 ; экран 10". — Текст : электронный. ISBN 978-5-89818-636-4 Излагаются новые полезные для практики идеи и достижения, помогающие легко и быстро освоить алгоритмы. Дается систематизированное изложение основных понятий и методов алгоритмизации. Книга содержит общедоступный практический курс, позволяющий существенно ускорить разработку, анализ и проверку алгоритмов, облегчить проектирование сложной деятельности. Ведется наглядное обучение на примерах. Читатель быстро привыкает к самостоятельному осмысленному составлению алгоритмов. Использованы доходчивые и привлекательные чертежи алгоритмов (дракон-схемы), значительно облегчающие усвоение материала. Книга богато иллюстрирована. Почти триста наглядных схем и рисунков, выполненных по принципу «Посмотрел — и сразу понял!», окажут читателю неоценимую помощь. Книга предназначена для начинающих и профессионалов, а также для самостоятельного изучения. УДК 004.438ДРАКОН:004.021 ББК 32.973.26-018.2 Электронное издание на основе печатного издания: Учись писать, читать и понимать алгоритмы. Алгоритмы для правильного мышления. Основы алгоритмизации / В. Д. Паронджанов. — Москва : ДМК Пресс, 2016. — 520 с. — ISBN 978-5-97060-404-5. — Текст : непосредственный. Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. В соответствии со ст. 1299 и 1301 ГК РФ при устранении ограничений, установленных техническими средствами защиты авторских прав, правообладатель вправе требовать от нарушителя возмещения убытков или выплаты компенсации. ISBN 978-5-89818-636-4 © Паронджанов В. Д., 2012 © Оформление, издание ДМКПресс, 2016
Введение ........................................................................6 Часть I. Алгоритмы (облегченный материал для первого знакомства) ......................................................13 Глава 1. Алгоритмы – это очень просто! .......................................................15 Глава 2. Алгоритмы и процедурные знания ................................................23 Часть II. Алгоритмический язык ДРАКОН и удобные чертежи алгоритмов (дракон-схемы) ................35 Глава 3. Иконы и макроиконы языка ДРАКОН ........................................37 Глава 4. Алгоритмическая структура «силуэт» .........................................41 Глава 5. Алгоритмическая структура «примитив» ...................................56 Глава 6. Сравним силуэт и примитив ............................................................67 Глава 7. Как улучшить понятность алгоритмов? .......................................78 Глава 8. Простые цикличные алгоритмы ...................................................113 Глава 9. Особенности цикличных алгоритмов ........................................124 Глава 10. Сложные цикличные алгоритмы. Структура «цикл в цикле» ..................................................................................140 Глава 11. Логические формулы, используемые в алгоритмах ............153 Глава 12. Что такое эргономичный текст? ..................................................184 Глава 13. Алгоритмы реального времени ...................................................205 Глава 14. Параллельные алгоритмы .............................................................222 Глава 15. Дракон-схемы и блок-схемы ........................................................242 Глава 16. Коротко о программировании .....................................................255 Часть III. Алгоритмы практической жизни (примеры) ...267 Глава 17. Алгоритмы в медицине ..................................................................269 Глава 18. Алгоритмы в промышленности ..................................................277 Глава 19. Алгоритмы в торговле ....................................................................286 СОДЕРЖАНИЕ
СОДЕРЖАНИЕ Глава 20. Алгоритмы бухгалтерского учета ...............................................293 Глава 21. Алгоритмы в атомной энергетике ..............................................301 Глава 22. Алгоритмы в биологии ...................................................................312 Глава 23. Алгоритмы в сельском хозяйстве ...............................................325 Глава 24. Алгоритмы в средней школе .........................................................331 Глава 25. Алгоритмы государственного и муниципального управления ........................................................................................344 Часть IV. Математические алгоритмы (примеры) ..........349 Глава 26. Простые математические алгоритмы .......................................351 Глава 27. Алгоритмы с массивами ................................................................356 Глава 28. Алгоритмы поиска данных ...........................................................360 Глава 29. Рекурсивные алгоритмы ...............................................................365 Часть V. Заключительные рекомендации по созданию дракон-схем................................369 Глава 30. Рекомендации по использованию алгоритмических структур «силуэт» и «примитив» ..............................................371 Глава 31. Как улучшить понятность веток? ...............................................377 Часть VI. Конструктор алгоритмов и формальное описание языка .............................................393 Глава 32. Конструктор алгоритмов (помощник человека) ...................395 Глава 33. Графический синтаксис языка ДРАКОН ................................416 Часть VII. Теоретические основы языка ДРАКОН ............425 Глава 34. Исчисление икон ..............................................................................427 Глава 35. Метод Ашкрофта-Манны и алгоритмическая структура «силуэт» ..........................................................................436 Глава 36. Визуальный структурный подход к алгоритмам и программам (шампур-метод) ...................................................449 Часть VIII. Какую роль играют алгоритмы в человеческой культуре? ............................473 Глава 37. Алгоритмическое мышление .......................................................475 Глава 38. Алгоритмы и улучшение работы ума .......................................480 Глава 39. Алгоритмическое мышление и две группы людей ...............488 Глава 40. Как ликвидировать алгоритмическую неграмотность? ......493 Глава 41. Необходимость культурных изменений ..................................497 СОДЕРЖАНИЕ
СОДЕРЖАНИЕ Алгоритмы должны быть понятными (вместо заключения) ..................................504 Литература ..................................................................508 Основная литература по языку ДРАКОН .........................514 Применение языка ДРАКОН в ракетно-космической отрасли ......................................................515 Предметный указатель.................................................516
ЧТО МЫ ЗНАЕМ ОБ АЛГОРИТМАХ? Почему? Потому что мы живем в мире алгоритмов, хотя зачастую не догадываемся об этом. Современная цивилизация – это цивилизация алгоритмов. Они окружают нас повсюду. К сожалению, большинство людей не умеют читать, писать и понимать алгоритмы. Впрочем, это дело поправимое. Прочитав книгу, вы быстро получите нужные знания. Как известно, один рисунок стоит тысячи слов. К вашим услугам – четкие, кристально ясные и забавные рисунки. Сделанные так, чтобы читатель «посмотрел – и сразу понял!». Они помогут легко открыть заветную дверь в увлекательное царство алгоритмов. В ЧЕМ ПРОБЛЕМА? Трудность в том, что алгоритмы, как правило, очень сложны. Понять их непросто. Нужно изрядно попотеть, затратить много труда и времени. А нельзя ли найти обходную дорогу и сэкономить время? Конечно, можно! Секрет в том, что алгоритмы надо сделать дружелюбными. Это позволит превратить головоломки в наглядные алгоритмы-картинки, обеспечивающие быстрое и глубокое понимание. Глубина понимания сложных проблем – как раз то, чего всем нам (от студента до министра) ой как не хватает! Почему алгоритмы трудны для понимания? Потому, что существующий способ записи алгоритмов (принятый во всем мире) выбран неудачно. Он устарел и превратился в досадное препятствие. Он удовлетворяет требованиям математической строгости, но не учитывает требования науки о человеческих факторах – эргономики. Этот устаревший способ упускает из виду психофизиологические характеристики человека-алгоритмиста. И тем самым затрудняет и замедляет работу с алгоритмами. Многие думают, что алгоритмы нужны только программистам и математикам. Это не так. Алгоритмы могут пригодиться всем или почти всем. Начиная от врача и агронома и кончая топ-менеджером. Многие думают, что алгоритмы нужны только программистам и математикам. Это не так. Алгоритмы могут пригодиться всем или почти всем. Начиная от врача и агронома и кончая топ-менеджером. ВВЕДЕНИЕ
ВВЕДЕНИЕ ЛЕГКИЕ ДЛЯ ПОНИМАНИЯ И УДОБНЫЕ ДЛЯ РАБОТЫ Этой благородной цели служат эргономичные алгоритмические языки. Они создают повышенный интеллектуальный комфорт, увеличивают продуктивность труда. С их помощью вы научитесь легко и быстро, затратив минимум усилий, решать сложнейшие проблемы. Вы сможете проектировать сложную деятельность и бизнес-процессы. Формализовать свои профессиональные знания. И составлять алгоритмы самостоятельно, без помощи программистов. БЛОК-СХЕМЫ АЛГОРИТМОВ Существует несколько способов для записи алгоритмов. Широкую известность получили блок-схемы алгоритмов. Они используются в системе образования для первоначального ознакомления с алгоритмами (см. например, [1–3]). Международная организация стандартизации ISO выпустила стандарт на блок-схемы ISO 5807–85 [4]. Ему соответствует отечественный стандарт ГОСТ 19.701–90 [5]. Тем не менее, многие специалисты убеждены, что блок-схемы – это вчерашний день. Можно сказать, что блок-схемы постигла печальная участь. Истина в том, что они обладают поистине удивительными достоинствами, которые остаются нераскрытыми. Без преувеличения можно сказать, что блок-схемы алгоритмов – это бесценный бриллиант, который по воле мачехи-судьбы до сих пор не огранен и не вставлен в золотую оправу. Хотя имеются отдельные попытки приспособить блок-схемы к современным нуждам (язык UML и др.), однако в целом блок-схемы явно оказались на обочине бурно развивающегося процесса визуализации алгоритмов. А их громадные потенциальные возможности фактически не используются. Данная книга посвящена блок-схемам. В ней изложен новый подход к решению проблемы блок-схем. Наш труд можно рассматривать как дальнейшее развитие плодотворной идеи изобретателя блок-схем Джона фон Неймана. В книге излагается новый взгляд на алгоритмы. Мы покажем, что алгоритмы должны быть не только правильными, но и дружелюбными. То есть легкими для понимания и удобными для работы. В книге излагается новый взгляд на алгоритмы. Мы покажем, что алгоритмы должны быть не только правильными, но и дружелюбными. То есть легкими для понимания и удобными для работы. Алгоритмы – важная часть человеческой культуры. Умение составлять алгоритмы позволяет улучшить работу ума. Несколько преувеличивая, можно сказать: «Алгоритмы – вторая грамотность!». Алгоритмы – важная часть человеческой культуры. Умение составлять алгоритмы позволяет улучшить работу ума. Несколько преувеличивая, можно сказать: «Алгоритмы – вторая грамотность!».
ВВЕДЕНИЕ Мы покажем, что именно блок-схемы могут придать алгоритмам новую чарующую силу, небывалую наглядность и другие полезные свойства. ДРАКОН-СХЕМЫ И ЯЗЫК «ДРАКОН» Дракон-схемы отличаются от традиционных блок-схем, как небо от земли. Они позволяют построить семейство дружелюбных алгоритмических языков под общим названием ДРАКОН (Дружелюбный Русский Алгоритмический язык, Который Обеспечивает Наглядность) [6, 7]. Визуальный язык ДРАКОН обладает уникальными эргономическими характеристиками. Он позволяет легко и быстро создавать дружелюбные и наглядные алгоритмы. ДРАКОН – оружие интеллекта. Он помогает ясно и четко мыслить. И значительно облегчает творческий процесс создания алгоритмов, делая его доступным для широкого круга работников. КТО РАЗРАБОТАЛ ЯЗЫК ДРАКОН? Язык ДРАКОН разработан совместными усилиями Федерального космического агентства России (Научно-производственный центр автоматики и приборостроения им. академика Н. А. Пилюгина, г. Москва) и Российской академии наук (Институт прикладной математики им. академика М. В. Келдыша, г. Москва). ДРАКОН РОДИЛСЯ В КОСМИЧЕСКОЙ КОЛЫБЕЛИ ДРАКОН возник как обобщение опыта работ по созданию космического корабля «Буран». На базе ДРАКОНа построена автоматизированная Технология проектирования алгоритмов и программ под названием «ГРАФИТ-ФЛОКС». Она успешно используется во многих крупных ракетно-космических проектах: «Морской старт», «Фрегат», «Протон-М» и др. ДРАКОН В СИСТЕМЕ ОБРАЗОВАНИЯ В 1996 году Государственный комитет по высшему образованию Российской Федерации включил изучение языка ДРАКОН в программу курса информатики высшей школы. Этот факт нашел отражение в официальном документе Госкомвуза под названием: Блок-схемы нужно значительно улучшить, сделать математически строгими и эргономически привлекательными. Во избежание путаницы мы присвоили новым блок-схемам название «дракон-схемы». Блок-схемы нужно значительно улучшить, сделать математически строгими и эргономически привлекательными. Во избежание путаницы мы присвоили новым блок-схемам название «дракон-схемы».
ВВЕДЕНИЕ «Примерная программа дисциплины «Информатика» для направлений: 510000 – Естественные науки и математика 540000 – Образование 550000 – Технические науки 560000 – Сельскохозяйственные науки Издание официальное. М.: Госкомвуз, 1996. – 21 с. Авторы программы: Кузнецов В. С., Падалко С. Н., Паронджанов В. Д., Ульянов С. А. Научные редакторы: Падалко С. Н., Паронджанов В. Д.» [8]. Примечание. Этот документ официально узаконил изучение языка ДРАКОН в системе образования. ЧТО ТАКОЕ ЭРГОНОМИЧНЫЙ? В этой книге важную роль играет слово «эргономичный». Что оно означает? Чтобы не тратить лишних слов, мы сочиним краткий словарик, который, хотя и нарушает все каноны научной строгости, зато вполне понятен новичкам. Словарик Эргономика – наука о том, как превратить сложную и трудную работу в простую, легкую и приятную. Когнитивная эргономика – наука о том, как облегчить и улучшить умственную работу. Эргономичный – дружелюбный, легкий для понимания, удобный для работы. Эргономичный алгоритм – дружелюбный, легкий для понимания алгоритм. Эргономичный алгоритмический язык – дружелюбный, легкий для понимания и удобный в работе алгоритмический язык. Эргономизация алгоритма – превращение недружелюбного алгоритма в дружелюбный. Эргономизация алгоритмического языка – превращение недружелюбного алгоритмического языка в дружелюбный. Словарик Эргономика – наука о том, как превратить сложную и трудную работу в простую, легкую и приятную. Когнитивная эргономика – наука о том, как облегчить и улучшить умственную работу. Эргономичный – дружелюбный, легкий для понимания, удобный для работы. Эргономичный алгоритм – дружелюбный, легкий для понимания алгоритм. Эргономичный алгоритмический язык – дружелюбный, легкий для понимания и удобный в работе алгоритмический язык. Эргономизация алгоритма – превращение недружелюбного алгоритма в дружелюбный. Эргономизация алгоритмического языка – превращение недружелюбного алгоритмического языка в дружелюбный.
ВВЕДЕНИЕ ЦЕЛЬ КНИГИ Чем понятнее алгоритм, тем легче уяснить его смысл. Чем прозрачнее смысл, тем лучше взаимопонимание между людьми. Чем меньше ошибок, тем выше производительность труда при разработке алгоритмов. Чем меньше усилий затрачивают алгоритмисты, тем быстрее они выполняют свою работу. АЛГОРИТМИЗАЦИЯ И ПРОГРАММИРОВАНИЕ В этой книге мы не будем касаться вопросов программирования. И сосредоточим внимание исключительно на алгоритмах. Алгоритмизация и программирование – разные вещи. Подчеркнем главное. Разумеется, современное общество нуждается в программистах. Но обучение программистов должно быть не массовым, а экономически обоснованным. И наоборот, обучение алгоритмизации должно быть очень широким или даже массовым. Потому что алгоритмы нужны не только программистам, но и многим другим людям. В обществе знаний во многих случаях возникает необходимость формализовать собственные процедурные профессиональные знания специалистов. Отсюда проистекает СОДЕРЖАНИЕ КНИГИ Книга состоит из восьми частей. Часть I (главы 1, 2) носит вводный характер. Приводятся забавные примеры алгоритмов, описывающих бытовую человеческую деятельность. Наша цель – научить читателя самостоятельно создавать дружелюбные, то есть легкие для понимания алгоритмы. И показать, что это простое и даже приятное дело. На многочисленных примерах читатель убедится, что дружелюбные алгоритмы имеют огромные преимущества. Наша цель – научить читателя самостоятельно создавать дружелюбные, то есть легкие для понимания алгоритмы. И показать, что это простое и даже приятное дело. На многочисленных примерах читатель убедится, что дружелюбные алгоритмы имеют огромные преимущества. Число людей, которым необходимо знать алгоритмы, во много раз превышает число людей, которым надо знать программирование. Число людей, которым необходимо знать алгоритмы, во много раз превышает число людей, которым надо знать программирование. Вывод. Умение читать, писать и понимать алгоритмы – настоятельная необходимость. Такое умение должно стать частью профессиональной культуры специалистов почти всех специальностей. Эта мысль проходит красной нитью через всю книгу. Вывод. Умение читать, писать и понимать алгоритмы – настоятельная необходимость. Такое умение должно стать частью профессиональной культуры специалистов почти всех специальностей. Эта мысль проходит красной нитью через всю книгу.