5.5 过程部(Procedure Division)

过程部(Procedure Division)描述数据部里的数据是如何处理和加工的,也正是在这里,程序员描述他的算法。过程部是一种层次结构,自上而下分别是节(Section)、段(Paragraph)、句子(Sentence)和语句(Statement)。

只有节(Section)不是必需的,在过程部中最少要由一个段、一个句子和一条语句组成。过程部的段名和节名由程序员选定,一般说来,节名和段名最好能反映它们的处理内容。

5.5.1 节(Section)

节是由一个或几个段组成的程序代码块。每一个节由节名开始,碰到下一个节名或程序结尾时结束。有的节名是由程序员选定的,有的则是由COBOL语言定义好的,每个节名由保留字SECTION和句号(.)结束。下面是节名的例子。

● 由程序员选择的节名的例子:ReadTranRecords SECTION。

● 由COBOL语言定义的节名的例子:FILE SECTION。

5.5.2 段(Paragraph)

每节可以包含几个段。而每段则由一条或多条语句组成。每个段由段名开始,碰到下一个段名、节名或程序结尾时结束。

像节名一样,段名既可以由程序员指定,也可以由COBOL语言定义好,段名以句号(.)结束。下面是段名的例子。

● 由程序员定义的段名:ComputeTranTotals。

● 由COBOL语句定义的段名:PROGRAM-ID。

5.5.3 语句和句子

每段由一条或多条句子(Sentence)组成,每条句子由一条或多条语句组成,以句号(.)结束。下面是两个句子的例子。

● 句子1:

          MOVE .21 TO Ws-IntRate
          COMPUTE Ws-Int-Amt = Cust-AccuAmt * Ws-IntRate.

● 句子2:

          DISPLAY "Enter name: "
          ACCEPT  CustName
          DISPLAY "Name was " CustName.

语句(Statement)由COBOL动词(Verb)及相关的操作数组成。下面是COBOL语句的例子。

● 语句1:

        ADD TranAmt TO WS-TranTotal

● 语句2:

          COMPUTE Final-Val ROUNDED = Basic-Val * 1.5
          END-COMPUTE