Модульні уроки (1/2)
Абзаци і ВИКОНУВАТИ
У COBOL модульність і логічне структурування коду всередині PROCEDURE DIVISION відбувається не через функції чи методи, а через Абзаци та оператор PERFORM.
Визначення абзаців
Абзац — це позначений розділ коду, який починається з назви в стовпці 8 (область A), закінчується крапкою ., за якою йде послідовність інструкцій у стовпці 12 (область B).
DISPLAY-MESSAGE.
DISPLAY "This is a paragraph!".Абзаци дозволяють розділити потенційно дуже довгі програми на багаторазові та самодокументовані блоки.
Виконання абзаців за допомогою PERFORM
Інструкція PERFORM викликає та виконує абзац, а потім повертає керування інструкції, що йде одразу після інструкції PERFORM.
PROCEDURE DIVISION.
MAIN-PROCEDURE.
DISPLAY "Starting program...".
PERFORM PROCESS-DATA.
DISPLAY "Ending program.".
STOP RUN.
PROCESS-DATA.
DISPLAY "Processing data in memory...".У наведеному вище списку:
DISPLAYвсерединіMAIN-PROCEDUREвиконується.PERFORM PROCESS-DATAрозгалужує виконання до абзацуPROCESS-DATA.- Після завершення абзацу
PROCESS-DATAвиконання повертається доMAIN-PROCEDUREдля друку «Завершення програми». і зупиніть використанняSTOP RUN..
Спробуйте самі
Визначте абзац під назвою DISPLAY-TOTAL, який друкує «TOTAL IS DONE» за допомогою DISPLAY, і викличте його в MAIN-PROCEDURE за допомогою PERFORM перед зупинкою програми.
Показати підказку
Напишіть PERFORM DISPLAY-TOTAL. у стовпці 12, а під блоком MAIN-PROCEDURE оголосити DISPLAY-TOTAL. абзац у колонці 8.
Рішення доступне після 3 спроб
Викличте два абзаци послідовно, спочатку INITIALIZE-DATA, а потім PROCESS-DATA, у блоці MAIN-PROCEDURE.
Показати підказку
Вставте два оператори PERFORM у послідовному порядку в стовпець 12.
Рішення доступне після 3 спроб