Реклама:

Показанная на рис. 3.7 структура данных ВЫХОД-2 представляет этот второй вариант выходных данных.

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

Эти соответствия идентифицированы на рис. 3.7.

К этому времени все соответствия должны быть очевидными для читателя, но появляются два новых типа, которые до сих пор не демонстрировались. Эти особые соответствия показаны на рис 3.7 штриховыми линиями.

ТЕЛО ШТАТА в структуре данных ВЫХОД-1 соответствует компоненту ТЕЛО ШТАТА в структуре ВЫХОД-2; аналогично ЗАВЕРШИТЕЛЬ ШТАТА в структуре ВЫХОД-1 соответствует компоненту СУММА ШТАТА в структуре ВЫХОД-2. Эти соответствия имеют место только между двумя выходами, а не между входом и каким-то из выходов. Это просто означает, что каждая из двух соответствующих пар компонентов вывода будет обрабатываться совместно, т.е. вместе будут обрабатываться два компонента ТЕЛО ШТАТА, и компоненты ЗАВЕРШИТЕЛЬ ШТАТА и СУММА ШТАТА («вместе» или «совместно» означает «в одно и то же время»).

Слияние трех структур данных описанным выше способом приводит к структуре программы, показанной на рис. 3.10.

На этом этапе не нужно добавлять никаких дополнительных компонентов. Особый компонент 06РА60ТКА ТЕЛА ГОРОДА, изображенный на рис. 3.10, становится необходимым только при распределении списка операций. Если временно пренебречь компонентом ОБРАБОТКА ТЕЛА ГОРОДА, то структура программы будет почти идентична структуре отчета ВЫХОД-1, исключение составляют только имена компонентов. Эта идентичность становится очевидной при изучении соответствий, показанных на рис. 3.7. Все компоненты структур данных ВХОД и ВЫХОД-2, за исключением компонента ЗАПИСЬ ЧИСЛЕННОСТИ УЧАСТКА, соответствуют компонентам структуры ВЫХОД-1. Ясно, что слияние этих структур приведет к структуре, идентичной структуре ВЫХОД-1, за исключением подлежащего обработке компонента ЗАПИСЬ ЧИСЛЕННОСТИ УЧАСТКА. Именно это показано на рис. 3.10.

В этом частном результате проявляется общее правило:

Если все соответствия между N структурами данных идентифицированы (здесь N - любое целое положи-тельное число, большее чем единица) и оказалось, что все компоненты данных из N - 1 структур соответствуют компонентам из оставшейся одной структуры данных, то полученная в результате программа будет структурно идентична этой оставшейся структуре данных.

Далее требуется список операций. Вот он:

1. СТОП

2. Открыть входной

3. Открыть выход-1

4. Открыть выход-2

5. Закрыть входной

6. Закрыть выход-1%

7. Закрыть выход-2

8. Писать заголовок отчета

9. Писать заголовок штата

10. Писать заголовок округа

11. Писать строку города в отчет

12. Писать завершитель округа

13. Писать завершитель штата

14. Писать завершитель отчета


⇐ Предыдущая страница| |Следующая страница ⇒