Data update
This commit is contained in:
parent
5150844a7d
commit
4bb20c9b71
7735 changed files with 38060 additions and 199180 deletions
|
|
@ -1,98 +0,0 @@
|
|||
IDENTIFICATION DIVISION.
|
||||
PROGRAM-ID. test-balanced-brackets.
|
||||
|
||||
DATA DIVISION.
|
||||
WORKING-STORAGE SECTION.
|
||||
01 True-Val CONSTANT 0.
|
||||
01 False-Val CONSTANT 1.
|
||||
|
||||
LOCAL-STORAGE SECTION.
|
||||
01 current-time PIC 9(10).
|
||||
|
||||
01 bracket-type PIC 9.
|
||||
88 add-open-bracket VALUE 1.
|
||||
|
||||
01 bracket-string-area.
|
||||
03 bracket-string PIC X(10) OCCURS 10 TIMES.
|
||||
|
||||
01 i PIC 999.
|
||||
01 j PIC 999.
|
||||
|
||||
PROCEDURE DIVISION.
|
||||
*> Seed RANDOM().
|
||||
MOVE FUNCTION CURRENT-DATE (7:10) TO current-time
|
||||
MOVE FUNCTION RANDOM(current-time) TO current-time
|
||||
|
||||
|
||||
*> Generate random strings of brackets.
|
||||
PERFORM VARYING i FROM 1 BY 1 UNTIL 10 < i
|
||||
PERFORM VARYING j FROM 1 BY 1 UNTIL i < j
|
||||
COMPUTE bracket-type =
|
||||
FUNCTION REM(FUNCTION RANDOM * 1000, 2)
|
||||
|
||||
IF add-open-bracket
|
||||
MOVE "[" TO bracket-string (i) (j:1)
|
||||
ELSE
|
||||
MOVE "]" TO bracket-string (i) (j:1)
|
||||
END-IF
|
||||
END-PERFORM
|
||||
END-PERFORM
|
||||
|
||||
*> Display if the strings are balanced or not.
|
||||
PERFORM VARYING i FROM 1 BY 1 UNTIL 10 < i
|
||||
CALL "check-if-balanced" USING bracket-string (i)
|
||||
IF RETURN-CODE = True-Val
|
||||
DISPLAY FUNCTION TRIM(bracket-string (i))
|
||||
" is balanced."
|
||||
ELSE
|
||||
DISPLAY FUNCTION TRIM(bracket-string (i))
|
||||
" is not balanced."
|
||||
END-IF
|
||||
END-PERFORM
|
||||
|
||||
GOBACK
|
||||
.
|
||||
|
||||
END PROGRAM test-balanced-brackets.
|
||||
|
||||
IDENTIFICATION DIVISION.
|
||||
PROGRAM-ID. check-if-balanced.
|
||||
|
||||
DATA DIVISION.
|
||||
WORKING-STORAGE SECTION.
|
||||
01 True-Val CONSTANT 0.
|
||||
01 False-Val CONSTANT 1.
|
||||
|
||||
LOCAL-STORAGE SECTION.
|
||||
01 nesting-level PIC S999.
|
||||
01 i PIC 999.
|
||||
|
||||
LINKAGE SECTION.
|
||||
01 bracket-string PIC X(100).
|
||||
|
||||
PROCEDURE DIVISION USING bracket-string.
|
||||
PERFORM VARYING i FROM 1 BY 1
|
||||
UNTIL (100 < i)
|
||||
OR (bracket-string (i:1) = SPACE)
|
||||
OR (nesting-level < 0)
|
||||
IF bracket-string (i:1) = "["
|
||||
ADD 1 TO nesting-level
|
||||
ELSE
|
||||
SUBTRACT 1 FROM nesting-level
|
||||
IF nesting-level < 0
|
||||
MOVE False-Val TO RETURN-CODE
|
||||
GOBACK
|
||||
END-IF
|
||||
END-IF
|
||||
END-PERFORM
|
||||
|
||||
IF nesting-level = 0
|
||||
MOVE True-Val TO RETURN-CODE
|
||||
ELSE
|
||||
MOVE False-Val TO RETURN-CODE
|
||||
END-IF
|
||||
|
||||
GOBACK
|
||||
.
|
||||
|
||||
END PROGRAM check-if-balanced.
|
||||
Loading…
Add table
Add a link
Reference in a new issue