COBOL:从SYSIN读取INPUT并存储到变量

时间:2016-12-27 03:50:27

标签: cobol

我正在尝试从COBOL STDIN读取3行输入并将它们存储到3个不同的变量中。我打算在这些输入上使用COMPUTE来执行计算。

我一直在关注TutorialsPoint(我自己教会如何编写COBOL代码),但无济于事。

以下是我目前的代码:

null

输入的格式为:

12.00
5
20

结果将是一个整数(在其他编程语言的意义上)。

我看到存储变量的唯一方法是,在每次连续迭代时,都有一个计数器并将其存储到每个变量(MEAL-COST,TIP-PERCENT,TAX-PERCENT)。但是,也许有一种更简单的方法可以做到这一点?

这就是我所做的,但我相信还有更好的方法来获取输入并将它们存储到正确的变量中。如果有人有任何建议,那将非常感激。

IDENTIFICATION DIVISION. 
PROGRAM-ID. SOLUTION. 

ENVIRONMENT DIVISION. 
INPUT-OUTPUT SECTION. 
FILE-CONTROL. 
SELECT SYSIN ASSIGN TO KEYBOARD ORGANIZATION LINE SEQUENTIAL. 

DATA DIVISION. 
    FILE SECTION. 
    FD SYSIN. 
    01 INPUT-LINE PIC X(255).
    88 EOF VALUE HIGH-VALUES.

    WORKING-STORAGE SECTION.
    01 MEAL-COST PIC 9(2)V9(2).
    01 TIP-PERCENT PIC 9(3).
    01 TAX-PERCENT PIC 9(3).

PROCEDURE DIVISION. 
    OPEN INPUT SYSIN 
    READ SYSIN
    AT END SET EOF TO TRUE 
    END-READ

    DISPLAY MEAL-COST
    DISPLAY TIP-PERCENT
    DISPLAY TAX-PERCENT

    CLOSE SYSIN.

STOP RUN.

1 个答案:

答案 0 :(得分:1)

您无需打开/关闭您的SYSIN。

只需代码:

ACCEPT MEAL-COST FROM SYSIN