puffy310 commited on
Commit
5866e22
·
verified ·
1 Parent(s): e8e0706

Update cobol/account.cbl

Browse files
Files changed (1) hide show
  1. cobol/account.cbl +22 -11
cobol/account.cbl CHANGED
@@ -1,16 +1,17 @@
1
  IDENTIFICATION DIVISION.
2
  PROGRAM-ID. ACCOUNT-MGMT.
3
- DATA DIVISION.
4
- WORKING-STORAGE SECTION.
5
- 01 ACCOUNT-NUMBER PIC 9(4).
6
- 01 CUSTOMER-NAME PIC X(20).
7
- 01 BALANCE PIC 9(6)V99.
8
- 01 EOF PIC X VALUE 'N'.
9
 
 
 
 
 
 
 
 
10
  FILE SECTION.
11
  FD ACCOUNT-FILE
12
- LABEL RECORDS ARE STANDARD
13
- VALUE OF FILE-ID IS "data/accounts.dat".
14
  01 ACCOUNT-RECORD.
15
  02 ACCT-NUM PIC 9(4).
16
  02 FILLER PIC X(4).
@@ -18,20 +19,30 @@
18
  02 FILLER PIC X(6).
19
  02 AMOUNT PIC 9(6)V99.
20
 
 
 
 
 
 
 
21
  PROCEDURE DIVISION.
22
  MAIN-LOGIC.
23
  OPEN INPUT ACCOUNT-FILE
 
24
  ACCEPT ACCOUNT-NUMBER
 
25
  PERFORM UNTIL EOF = 'Y'
26
  READ ACCOUNT-FILE INTO ACCOUNT-RECORD
27
  AT END MOVE 'Y' TO EOF
28
  NOT AT END
29
  IF ACCT-NUM = ACCOUNT-NUMBER
30
- DISPLAY "Account Number: ", ACCT-NUM
31
- DISPLAY "Name: ", NAME
32
- DISPLAY "Balance: $", AMOUNT
 
33
  END-IF
34
  END-READ
35
  END-PERFORM
 
36
  CLOSE ACCOUNT-FILE
37
  STOP RUN.
 
1
  IDENTIFICATION DIVISION.
2
  PROGRAM-ID. ACCOUNT-MGMT.
 
 
 
 
 
 
3
 
4
+ ENVIRONMENT DIVISION.
5
+ INPUT-OUTPUT SECTION.
6
+ FILE-CONTROL.
7
+ SELECT ACCOUNT-FILE ASSIGN TO "data/accounts.dat"
8
+ ORGANIZATION IS LINE SEQUENTIAL.
9
+
10
+ DATA DIVISION.
11
  FILE SECTION.
12
  FD ACCOUNT-FILE
13
+ RECORDING MODE F
14
+ LABEL RECORDS ARE STANDARD.
15
  01 ACCOUNT-RECORD.
16
  02 ACCT-NUM PIC 9(4).
17
  02 FILLER PIC X(4).
 
19
  02 FILLER PIC X(6).
20
  02 AMOUNT PIC 9(6)V99.
21
 
22
+ WORKING-STORAGE SECTION.
23
+ 01 EOF PIC X VALUE 'N'.
24
+ 01 ACCOUNT-NUMBER PIC 9(4).
25
+ 01 CUSTOMER-NAME PIC X(20) VALUE SPACES.
26
+ 01 BALANCE PIC 9(6)V99 VALUE ZERO.
27
+
28
  PROCEDURE DIVISION.
29
  MAIN-LOGIC.
30
  OPEN INPUT ACCOUNT-FILE
31
+ DISPLAY "Enter Account Number:"
32
  ACCEPT ACCOUNT-NUMBER
33
+
34
  PERFORM UNTIL EOF = 'Y'
35
  READ ACCOUNT-FILE INTO ACCOUNT-RECORD
36
  AT END MOVE 'Y' TO EOF
37
  NOT AT END
38
  IF ACCT-NUM = ACCOUNT-NUMBER
39
+ MOVE NAME TO CUSTOMER-NAME
40
+ MOVE AMOUNT TO BALANCE
41
+ DISPLAY "Customer: ", CUSTOMER-NAME
42
+ DISPLAY "Balance: $", BALANCE
43
  END-IF
44
  END-READ
45
  END-PERFORM
46
+
47
  CLOSE ACCOUNT-FILE
48
  STOP RUN.