编辑一个alpha变量Cobol' 12.3'至' 12,30'

时间:2018-01-10 22:02:37

标签: cobol

Cobol如何将此格式1234,5的变量转换为0000000001234,50

01 VAR1  X(16) '1234,5'

01 VAR2  X(16)
01 VAROUT REDEFINES VAR2
   03 VAROUT-INT X(13)
   03 VAROUT-PNT X(01)
   03 VAROUT-DEC X(02)
STRING VAR1  DELIMITED BY ',' INTO VAR-INT

2 个答案:

答案 0 :(得分:1)

这是我所知道的最简单的方式。

   identification division.
   program-id. dpic.
   environment division.
   configuration section.
   special-names.
       decimal-point is comma.
   data division.
   working-storage section.
   1 var1 pic x(16) value "1234,5".
   1 var2.
    2 var2-num pic 9(13),99.
   procedure division.
   begin.
       display var1
       move function numval (var1) to var2-num
       display var2
       stop run
       .

结果是:

1234,5
0000000001234,50

答案 1 :(得分:1)

我使用了编辑PICTURE子句的一般方法之一 - 简单插入编辑 - 来达到预期效果。

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
DATA DIVISION.
WORKING-STORAGE SECTION. 
01 WS-A   PIC X(16) VALUE '1234,5'.
01 WS-B   PIC 9999999999999,90.
PROCEDURE DIVISION.
MOVE WS-A TO WS-B.
DISPLAY WS-B.
STOP RUN.

结果:     0000000001234,50