I';我在使用Cobol时遇到了一些问题 识别部门。 程序编号MP4-5。 环境司。 数据司。 工作和储存科。 01座位说明。 03填充图片X(50)值“01驱动程序”。 03填料图片X(50)值“02驾驶员助理”。 03填料图片X(50)值“03”。 03填料图片X(50)值“04”。 03填料图片X(50)值“05”。 03填料图片X(50)值“06”。 03填料图片X(50)值“07”。 03填料图片X(50)值“08”。 03填料图片X(50)值“09”。 03填料图片X(50)值“10”。 03填料图片X(50)值“11”。 03填料图片X(50)值“12”。 03填料图片X(50)值“13”。 03填料图片X(50)值“14”。 03填料图片X(50)值“15”。 01主菜单图X。 88保留值“R”。 88查看保留值“V”。 88取消预订值“D”。 88退出程序值“E”。 01决定图十。 88是值“Y”。 88否值“N”。 01座位数量图9(2)。 01客户名称图X(18)。 01 CUST-CNTCT图9(11)。 01选择图X。 程序司。 主程序。 显示“ABC运输公司”。 显示“\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu”。 显示“[R]添加预订”。 显示“[V]查看预订”。 显示“[D]取消预订”。 显示“[E]退出”。 显示“输入选项:”不前进。 接受主菜单。 执行I-CHAIN。 I-CHAIN。 如果预订 转到RESERVE-PROC 如果要查看预订,请选择其他选项 转到VRESERVE-PROC 否则取消预订 转到CRESERVE-PROC 如果退出程序,则返回 转到END-PGM 其他的 显示“无效选项” 进入主程序。 储备-PROC。 显示“预订座位:”,不前进。 接受SEAT-NUM。 如果SEAT-NUM是数字 如果SEAT-NUM>2且SEAT-NUM

I';我在使用Cobol时遇到了一些问题 识别部门。 程序编号MP4-5。 环境司。 数据司。 工作和储存科。 01座位说明。 03填充图片X(50)值“01驱动程序”。 03填料图片X(50)值“02驾驶员助理”。 03填料图片X(50)值“03”。 03填料图片X(50)值“04”。 03填料图片X(50)值“05”。 03填料图片X(50)值“06”。 03填料图片X(50)值“07”。 03填料图片X(50)值“08”。 03填料图片X(50)值“09”。 03填料图片X(50)值“10”。 03填料图片X(50)值“11”。 03填料图片X(50)值“12”。 03填料图片X(50)值“13”。 03填料图片X(50)值“14”。 03填料图片X(50)值“15”。 01主菜单图X。 88保留值“R”。 88查看保留值“V”。 88取消预订值“D”。 88退出程序值“E”。 01决定图十。 88是值“Y”。 88否值“N”。 01座位数量图9(2)。 01客户名称图X(18)。 01 CUST-CNTCT图9(11)。 01选择图X。 程序司。 主程序。 显示“ABC运输公司”。 显示“\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu”。 显示“[R]添加预订”。 显示“[V]查看预订”。 显示“[D]取消预订”。 显示“[E]退出”。 显示“输入选项:”不前进。 接受主菜单。 执行I-CHAIN。 I-CHAIN。 如果预订 转到RESERVE-PROC 如果要查看预订,请选择其他选项 转到VRESERVE-PROC 否则取消预订 转到CRESERVE-PROC 如果退出程序,则返回 转到END-PGM 其他的 显示“无效选项” 进入主程序。 储备-PROC。 显示“预订座位:”,不前进。 接受SEAT-NUM。 如果SEAT-NUM是数字 如果SEAT-NUM>2且SEAT-NUM,cobol,cobol85,cobol.net,Cobol,Cobol85,Cobol.net,要开始,您需要以下内容 01座椅描述-REDEF重新定义座椅描述。 03座椅编号数据出现15。 05座位号-文本图X(02)。 05填料图X(04)。 05座位由PIC X(44)填充。 现在,您可以为SEAT-FILLED-BY(SEAT-NUM)指定一个值,为座位指定一个名称 不清楚您使用CUST-CNTCT做了什么,但有一个小小的调整: 01座椅描述-REDEF重新定义座椅描述。 03座椅编号数据出现15。 05座位号-文本图X(02)。 05填料图X(04)。 05座位由PIC X(3

要开始,您需要以下内容

01座椅描述-REDEF重新定义座椅描述。
03座椅编号数据出现15。
05座位号-文本图X(02)。
05填料图X(04)。
05座位由PIC X(44)填充。
现在,您可以为
SEAT-FILLED-BY(SEAT-NUM)
指定一个值,为座位指定一个名称

不清楚您使用CUST-CNTCT做了什么,但有一个小小的调整:

01座椅描述-REDEF重新定义座椅描述。
03座椅编号数据出现15。
05座位号-文本图X(02)。
05填料图X(04)。
05座位由PIC X(32)填充。
05填料图X(01)。
05座椅触点图X(11)。
现在您可以
将CUST-CNTCT移动到SEAT-CONTACT(SEAT-NUM)。
这可能接近您想要做的事情

现在有一则关于结构的小广告

避免前往。

无需使用转到。总是

执行段落名称[直到条件]。
这不是一个容易的纪律,直到你习惯它-你会习惯它,当你做噩梦与意大利面条代码转到s,然后调用递归代码执行我的操作


如果有人提到请通过执行简单地微笑和点头,忽略他们所说的一切。他们是邪恶的缩影,因为他们提倡依赖布局的代码。

我们在我们的商店中通过使用
,但目的只有一个。我们给每一段都标上一个名字,并在结尾用“-”退出“结束该段

然后,当我们调用该段落时,我们使用语法调用它

执行L2小节
通过L2-SUB-EXIT。

这使代码看起来更面向对象,并使段落更模块化

或者,如果要循环浏览某个段落,则可以将其编码如下:

`PERFORM -L2-LOOPING-PARA' 
     'THROUGH L2-LOOPING-PARA-EXIT'
         'VARYING INDEX1 FROM 1 BY 1.... `

@nano.galvao非常感谢我非常需要的人,现在一切都有意义了,这就是我现在的输出,我不断得到不必要的行,谢谢againI,我将+1备份Magoo关于
的危险转到
,但也有点不同意。A+0.999。这里列出的示例值得大胆回避,因为它不是跳跃的实际用途。但是,在用COBOL编写状态机或单字符协议解释器时,
转到dependent
可能非常实用。当范围有限且干净时,甚至是可以防御的。包括每个工作段所需的下一步标签的分段负担。所以,是的,永远不会,除了一年中的一个星期二,准备好保护大门不受棍棒、石头和语言的伤害。@KarllaurenzBagasan,Magoo完成了这项工作,nano.galvao只对其进行了格式化。想想看,执行L2-SUB-paration和执行-L2-LOOPING-paravariating INDEX1从1到1将是多么容易和更加面向对象。不需要所有那些吸引博士生输入一点定稿代码的单行段落。干净多了。这是执行部分的结构兼容性遗留问题。保留了冗长的内容,并为植根于过去的管理者提供了一个安全毯。这种结构的唯一可能借口是
如果条件转到PARA-EXIT
,但如果遵循Jacksonesque结构,那么
如果NOITINOC执行PARA-SUB
规则!这是一个问答网站<代码>答案
用于回答已提出的问题。我建议你删除你的
答案
,然后再有人对其进行否决或标记,以引起版主的注意。和你的另一个一样。如果您对某个问题或答案有意见,请将其作为
意见进行评论。至于你上面提出的建议,我不鼓励,这对COBOL来说是一件非常过时的事情。然而,是的,总有现场标准。这并不意味着一般地推荐是件好事。