87
4.4.3. Проектирование структур программ
Джексон доказал, что конструкции, используемые для построения
структур данных, могут быть применены и для построения структур программ.
Программы могут быть составлены из последовательностей, выборов и
повторений таким же способом, как и данные.
Наиболее часто используются программы, обрабатывающие некоторые
входные данные и создающие некоторые выходные данные. Структура
выходных данных получается в результате некоторого преобразования
структуры входных данных, то есть в результате процесса, выполняемого
программой.
Таким образом, для проектирования программы необходимо определить
взаимосвязь между входными данными, выходными данными и процессом
преобразования.
Пример 4.3.
Рассмотрим простейший пример. Пусть необходимо найти суммы
элементов строк в таблице, состоящей из 10 строк и 8 столбцов.
Рисунок 4.21 иллюстрирует структуры данных, представляющие входные
и выходные данные процесса. Очевидно, что между обеими структурами
имеется непосредственная взаимосвязь. Компонент «Сумма строки» из
структуры «Выход» появляется столько же раз, сколько раз компонент
«Строка» появляется во входной структуре «Таблица» и в том же порядке.
Рисунок 4.21 – Таблица: структуры входных и выходных данных
(10)
Таблица
*
Строка
*
Элемент
Выход
*
Сумма
строки
(8)
Входная
структура
данных
Выходная
структура
данных