我刚刚开始使用 COBOL,我正在测试在屏幕上存储和显示值。当用户在终端中输入值 10.5 时,程序将其存储为 10.0。我正在使用 GnuCOBOL 编译器。 为什么它不保存值 10.5?谢谢。 代码是这样的:
IDENTIFICATION DIVISION.
PROGRAM-ID. CALC1000.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
DATA DIVISION.
FILE SECTION.
WORKING-STORAGE SECTION.
77 INTEREST-RATE PIC 9(2)V9.
PROCEDURE DIVISION.
DISPLAY "INTEREST-RATE? "
ACCEPT INTEREST-RATE.
DISPLAY "INTEREST-RATE : " INTEREST-RATE.
STOP RUN.
此链接中有一个完整的线程(有人编写了一个“NUMCHECK.cbl”例程来制作复杂的验证数字): https://sourceforge.net/p/gnucobol/discussion/help/thread/9deac5a3/?limit=50
从这个线程的最后一个评论中有一个非常简单的方法:
工作存储部分。 01 金额图片 x(9)。 01 编辑量图片-99999.99。 程序部门。 显示“金额?” --> ' 接受金额。 将金额移动到编辑金额。 显示'编辑量='编辑量。