end perfrom 需要但也不需要? Cobol程序

问题描述 投票:0回答:0

cobol code with terminal errors

这个程序出现编译错误,因为它说 perform 语句需要一个 end perform,但它也说 end perform 是意外的?我很困惑为什么它似乎没有编译,这里的错误是什么?

000100 IDENTIFICATION DIVISION.
000110 AUTHOR. AMBER.
000200 PROGRAM-ID. FIZZBUZZ.
000300 ENVIRONMENT DIVISION.
000400 DATA DIVISION.
000500 FILE SECTION.
000600 WORKING-STORAGE SECTION.
000700 01 WS-I PIC 99 VALUE 1.
000800 01 WS-R PIC 99.
000810 01 WS-NO PIC 99.
000900 PROCEDURE DIVISION.
001000         PERFORM UNTIL WS-I = 99
001100         DIVIDE WS-I BY 3 GIVING WS-NO REMAINDER WS-R
001200             IF WS-R = 0 DISPLAY "FIZZ"
001210             ELSE DISPLAY WS-I
001220             END-IF
001230         ADD 1 TO WS-I IF WS-I < 99
001240 END-PERFORM.
001300 STOP RUN.
001400 END PROGRAM FIZZBUZZ.

目的是必须编写 fizzbuzz 程序的前半部分,只需将所有可被 3 整除的数字替换为字符串“buzz”

我正在使用Gnucobol编译,系统运行Pop_os! Linux

我尝试在程序中的几个点放置句号/句号,实际上第一个编译错误来自于第 16 行末尾的句号。我怀疑它是格式错误?

formatting cobol fizzbuzz gnucobol
© www.soinside.com 2019 - 2024. All rights reserved.