我是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
答案 0 :(得分:5)
COBOL中没有(标准)else-if
语句。
在大多数情况下,如果您有多个分支EVALUATE TRUE
并且WHEN condition-1 <statements> WHEN condition-2 <statements> [...] END-EVALUATE
是您想要使用的内容 - 在您的示例中,您可以执行EVALUATE pet WHEN 'dog' ... WHEN 'cat' ... END-EVALUATE
。
你为ELSE
收到语法错误的原因很简单:用句点结束它们 - 摆脱它们(PROCEDURE DIVISION
中唯一需要它们的部分是在www.mydomain1.com/somepath?somequery
之前和之后段落/部分/条目定义。