Алгоритмы
Т. Н. Горностаева
http://izd-mn.com/
30
2.4.1 Дублирование отдельных блоков схемы
Рис. 22. Неструктурная блок-схема Рис. 23. Структурная блок-схемы
На Рис.22 приведен алгоритм решения некоторой задачи, в данном случае,
неважно какой. Очевидно, что блок-схема не является структурной, так как Развилка с
условием Q не вложена целиком в Развилку с условием Р, а «вклинивается» в ее
функциональный блок S
1
.
Изменим эту блок- схему, продублировав блок S
1
.
Измененная блок-схема приведена на Рис.23. Этот алгоритм полностью
эквивалентен первому в том смысле, что предписывает исполнителю выполнить те же
действия, но является уже структурным. В нем структура Полная Развилка с
условием Q полностью вложена в Полную Развилку с условием Р.
Прием дублирования отдельных блоков схемы является самым простым при
преобразовании неструктурной блок – схемы в структурную. Рассмотрим этот прием
на конкретном примере.
Пример 1. Составить блок – схему решения задачи: заданы три переменные
а, b, c. Определить, какая из них имеет максимальное значение.
Блок-схема, решающая эту задачу, приведена на Рис.24, в логическом смысле
она является правильной и действительно определяет максимальное значение
заданных переменных, которое присваивается переменной max, но схема не является
структурной, так как в ней все три Развилки «переплелись» между собой.
Изменим структуру блок-схемы, продублировав функциональные блоки, в
которых переменной max присваивается значение а и с и получим структурную схему –
Рис.25.
Алгоритмы
Do'stlaringiz bilan baham: |