ファイルから読み取った後、2 つの 10 進数を追加することはできません。ファイル内では、数値は 1234.10 として定義されています。プログラムでループしてこれらの数値を追加していますが、3 番目の変数を使用して追加しているときに SOC7 を取得しています。ファイルからの詳細、私はすべての数値変数を 9(4)v99 として定義し、s9(4)v99 comp-3 を使用しようとしましたが、まだ追加していません。
プログラムは、ファイル内の小数がファイル内で 1234.10 ではなく 123410 として定義されている場合にのみ機能します。
これが私がコーディングした方法です、
READ-PARA1.
READ FILEX
AT END
MOVE 'Y' TO WS-EOF-IND.
READ FILEY
AT END
MOVE 'Y' TO WS-EOF-IND.
DISPLAY SPACE
DISPLAY OCODE1,' 'ACODE1,' 'POLNO1,' 'EDATE1,
' 'PHOLD1,' 'LOCATION1,' ',LICNO1,' 'VMAKE1,
' 'VMODEL,' 'YEAR,' 'PREM' '.
ADD 1 TO R1.
MOVE PREM TO PRESUM1.
ADD PRESUM1 TO PRESUM.
その上のファイル記述子を含む作業領域セクションで、
05 PREM PIC S9(4)V99 COMP-3.
05 FILLER PIC X(34).
WORKING-STORAGE SECTION.
77 R1 PIC 9(2) VALUE 0.
77 PRESUM PIC S9(4)V99 COMP-3 VALUE 0.
77 PRESUM1 PIC S9(4)V99 COMP-3 VALUE 0.
77 PRESUM2 PIC S9(4)V99 COMP-3 VALUE 0.