This content originally appeared on DEV Community and was authored by Duc Nguyen Thanh
Hello, I'm Duke
In the previous 3 sessions, I have guided you on how to develop, compile, and create a simple calculation program with condition statements using COBOL.
Today, I will be giving a tutorial on loops in COBOL.
1. In-line Perform
The statements inside PERFORM will be executed until END-PERFORM is reached.
2. Perform Varying
In perform varying, a paragraph will be executed till the condition in Until phrase becomes true.
IDENTIFICATION DIVISION.
PROGRAM-ID. ProductList.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-PRODUCT-NAME PIC X(30).
01 WS-PRODUCT-PRICE PIC 9(5)V99.
01 WS-TOTAL-PRICE PIC 9(7)V99 VALUE 0.
01 WS-COUNTER PIC 9(2) VALUE 1.
01 WS-NUMBER-OF-PRODUCTS PIC 9(2) VALUE 0.
PROCEDURE DIVISION.
MAIN-PROCESS.
DISPLAY "How many products?".
ACCEPT WS-NUMBER-OF-PRODUCTS.
PERFORM VARYING WS-COUNTER FROM 1 BY 1
UNTIL WS-COUNTER > WS-NUMBER-OF-PRODUCTS
DISPLAY "Name of product no. " WS-COUNTER ": "
ACCEPT WS-PRODUCT-NAME
DISPLAY "Price of " WS-PRODUCT-NAME ": "
ACCEPT WS-PRODUCT-PRICE
COMPUTE WS-TOTAL-PRICE = WS-TOTAL-PRICE + WS-PRODUCT-PRICE
END-PERFORM.
DISPLAY "Total price: " WS-TOTAL-PRICE.
STOP RUN.
-
WS-PRODUCT-NAME: This variable is used to store the product name, with a maximum of 30 characters (PIC X(30)). -
WS-PRODUCT-PRICE: This variable is used to store the product price in a 5-digit and 2-decimal number format (PIC 9(5)V99). -
WS-TOTAL-PRICE: This variable stores the total price of all products, initialized with the value 0. It has a 7-digit and 2-decimal format (PIC 9(7)V99). -
WS-COUNTER: This variable is a counter, starting from 1 and has a 2-digit format (PIC 9(2)). -
WS-NUMBER-OF-PRODUCTS: This variable stores the number of products entered by the user, initialized with the value0 -
PERFORM VARYING: Starts a loop. This loop will continue untilWS-COUNTERis greater thanWS-NUMBER-OF-PRODUCTS. -
FROM 1 BY 1: Sets the starting value ofWS-COUNTERto1and increments it by1after each iteration.
and here is the result
Repository here
This content originally appeared on DEV Community and was authored by Duc Nguyen Thanh
Duc Nguyen Thanh | Sciencx (2024-10-19T12:54:43+00:00) COBOL Tutorial Series: Loop statements – Session 4. Retrieved from https://www.scien.cx/2024/10/19/cobol-tutorial-series-loop-statements-session-4/
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.
