小数不存储在数值变量中

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

我刚刚开始使用 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.

Output

cobol gnucobol
1个回答
0
投票

此链接中有一个完整的线程(有人编写了一个“NUMCHECK.cbl”例程来制作复杂的验证数字): https://sourceforge.net/p/gnucobol/discussion/help/thread/9deac5a3/?limit=50

从这个线程的最后一个评论中有一个非常简单的方法:

工作存储部分。 01 金额图片 x(9)。 01 编辑量图片-99999.99。 程序部门。 显示“金额?” --> ' 接受金额。 将金额移动到编辑金额。 显示'编辑量='编辑量。

© www.soinside.com 2019 - 2024. All rights reserved.