11. Т - НАКОП = Т - НАКОП + 1
12. М - НАКОП = М - НАКОП + 1
13. Б - НАКОП = Б - НАКОП + 1
Прием ввода. Существует только один входной «файл», и поэтому единственной операцией ввода будет:
14. Читать входной
Управление внутренними переменными. В этом разделе операций нужно определить, какими переменными мы пользуемся в программе и что следует делать, чтобы устанавливать и изменять их значения на протяжении процесса. Для этого достаточно посмотреть на ранее описанные операции. Как правило, какие-либо переменные обнаруживаются только в вычислениях. Переменные представляют собой части данных, создаваемые и обновляемые в процессе работы программы. В нашем случае переменными являются места хранения Т - НАКОП, М - НАКОП и Б - НАКОП. В начале программы нужно присвоить каждой из этих переменных начальное значение нуль. Итак, следующие три операции имеют вид:
15. Установить Т - НАКОП значение О
16. Установить М - НАКОП значение О
17. Установить Б - НАКОП значение О
Таким образом, мы получили полный набор исполнимых операций:
1. СТОП
2. Открыть входной
3. Открыть выходной
4. Закрыть входной
5. Закрыть выходной
6. Писать тип файла
7. Писать дату создания файла
8. Писать количество Т
9. Писать количество М
10. Писать количество С
11. Т - НАКОП = Т - НАКОП + 1
12. М - НАКОП = М - НАКОП + 1
13. Б - НАКОП = Б - НАКОП + 1
14. Читать входной.
15. Установить Т - НАКОП значение 0
16. Установить М - НАКОП значение 0
17. Установить Б - НАКОП значение 0
Перечислив исполнимые операции, мы должны теперь поместить их в надлежащие места структуры программы с рис. 2.36.
Для этого нужно задаться следующими вопросами о каждой из операций:
1. Какую часть (части) данных обрабатывает эта операция и когда она работает над данными? (Ответ должен иметь вид «по одному разу на запись» или «по одному разу на завершитель» или как-нибудь иначе в том же духе. )
2. Где эта часть или эти части данных обрабатываются в структуре программы? Ответ на этот вопрос идентифицирует некий компонент программы, в который нужно внести эту операцию. Операция станет последовательным подкомпонентом идентифицированного компонента программы.
3. На каком последовательном месте должна появиться операция, помещенная в компонент программы? Следует ли ей находиться в начале (слева) или в конце (справа) уже имеющихся последовательных компонентов? (Теперь вы должны начать понимать полезность наличия компонента структуры программы для КАЖДОГО компонента структуры данных. )
рассмотрим перечисленные исполнимые операции по одной и разместим их в структуре программы. Первая операция с номером 1 - это СТОП.
Для операции СТОП ответом на первый вопрос является «один раз на файл». ФАЙЛ или ОТЧЕТ обрабатывается компонентом программы, именуемым ПРОГРАММА ОТЧЕТА. Поэтому операция СТОП - подкомпонент ПРОГРАММЫ ОТЧЕТА. На какое место в последовательности нужно поместить эту операцию? В начало, в середину или в конец ПРОГРАММЫ ОТЧЕТА? Очевидно, что место для операции СТОП находится в конце, или на правом краю компонента ПРОГРАММА ОТЧЕТА. Это размещение показано на рис. 2.37.