COBOL if else-if语句,使用它们的正确方法

Bob*_*Bob 0 cobol if-statement

我是COBOL的新手,想写一个嵌套的if语句.我在ELSE-IF和ELSE上遇到错误.我确定这是一个简单的修复,但我无法弄清楚我哪里出错了.

reading-procedure.
       display "Enter Type of Pet: " with no advancing.
       accept pet.
       display "Enter Appointment Fee: " with no advancing.
       accept fee.
       IF pet = 'dog' 
       add fee total giving dogTotal.
       add 1 to dogCount.
       ELSE-IF pet = 'cat' 
       add fee total giving catTotal.
       add 1 to catCount.
       ELSE
       add fee total giving otherTotal.
       add 1 to otherCount.
       END-IF
Run Code Online (Sandbox Code Playgroud)

Sim*_*sch 5

else-ifCOBOL中没有(标准)语句.在你有多个分支大多数情况下,EVALUATE TRUEWHEN condition-1 <statements> WHEN condition-2 <statements> [...] END-EVALUATE的是你要使用的东西-和喜欢你的样品,你可以做的情况EVALUATE pet WHEN 'dog' ... WHEN 'cat' ... END-EVALUATE.

你得到语法错误的原因ELSE很简单:用句点结束它们 - 除去它们(你需要它们的唯一部分PROCEDURE DIVISION是段落/段/条目定义之前和之后).