deploy: ebd4cc0010
This commit is contained in:
94
node_modules/shiki/samples/cobol.sample
generated
vendored
94
node_modules/shiki/samples/cobol.sample
generated
vendored
@@ -1,94 +0,0 @@
|
||||
******************************************************************
|
||||
* Author: Bryan Flood
|
||||
* Date: 25/10/2018
|
||||
* Purpose: Compute Fibonacci Numbers
|
||||
* Tectonics: cobc
|
||||
******************************************************************
|
||||
IDENTIFICATION DIVISION.
|
||||
PROGRAM-ID. FIB.
|
||||
DATA DIVISION.
|
||||
FILE SECTION.
|
||||
WORKING-STORAGE SECTION.
|
||||
01 N0 BINARY-C-LONG VALUE 0.
|
||||
01 N1 BINARY-C-LONG VALUE 1.
|
||||
01 SWAP BINARY-C-LONG VALUE 1.
|
||||
01 RESULT PIC Z(20)9.
|
||||
01 I BINARY-C-LONG VALUE 0.
|
||||
01 I-MAX BINARY-C-LONG VALUE 0.
|
||||
01 LARGEST-N BINARY-C-LONG VALUE 92.
|
||||
|
||||
PROCEDURE DIVISION.
|
||||
*> THIS IS WHERE THE LABELS GET CALLED
|
||||
PERFORM MAIN
|
||||
PERFORM ENDFIB
|
||||
GOBACK.
|
||||
|
||||
*> THIS ACCEPTS INPUT AND DETERMINES THE OUTPUT USING A EVAL STMT
|
||||
MAIN.
|
||||
DISPLAY "ENTER N TO GENERATE THE FIBONACCI SEQUENCE"
|
||||
ACCEPT I-MAX.
|
||||
|
||||
EVALUATE TRUE
|
||||
WHEN I-MAX > LARGEST-N
|
||||
PERFORM INVALIDN
|
||||
|
||||
WHEN I-MAX > 2
|
||||
PERFORM CASEGREATERTHAN2
|
||||
|
||||
WHEN I-MAX = 2
|
||||
PERFORM CASE2
|
||||
|
||||
WHEN I-MAX = 1
|
||||
PERFORM CASE1
|
||||
|
||||
WHEN I-MAX = 0
|
||||
PERFORM CASE0
|
||||
|
||||
WHEN OTHER
|
||||
PERFORM INVALIDN
|
||||
|
||||
END-EVALUATE.
|
||||
|
||||
STOP RUN.
|
||||
|
||||
|
||||
|
||||
*> THE CASE FOR WHEN N = 0
|
||||
CASE0.
|
||||
MOVE N0 TO RESULT.
|
||||
DISPLAY RESULT.
|
||||
|
||||
*> THE CASE FOR WHEN N = 1
|
||||
CASE1.
|
||||
PERFORM CASE0
|
||||
MOVE N1 TO RESULT.
|
||||
DISPLAY RESULT.
|
||||
|
||||
*> THE CASE FOR WHEN N = 2
|
||||
CASE2.
|
||||
PERFORM CASE1
|
||||
MOVE N1 TO RESULT.
|
||||
DISPLAY RESULT.
|
||||
|
||||
*> THE CASE FOR WHEN N > 2
|
||||
CASEGREATERTHAN2.
|
||||
PERFORM CASE1
|
||||
PERFORM VARYING I FROM 1 BY 1 UNTIL I = I-MAX
|
||||
ADD N0 TO N1 GIVING SWAP
|
||||
MOVE N1 TO N0
|
||||
MOVE SWAP TO N1
|
||||
MOVE SWAP TO RESULT
|
||||
DISPLAY RESULT
|
||||
END-PERFORM.
|
||||
|
||||
*> PROVIDE ERROR FOR INVALID INPUT
|
||||
INVALIDN.
|
||||
DISPLAY 'INVALID N VALUE. THE PROGRAM WILL NOW END'.
|
||||
|
||||
*> END THE PROGRAM WITH A MESSAGE
|
||||
ENDFIB.
|
||||
DISPLAY "THE PROGRAM HAS COMPLETED AND WILL NOW END".
|
||||
|
||||
END PROGRAM FIB.
|
||||
|
||||
*> From https://github.com/KnowledgePending/COBOL-Fibonacci-Sequence/blob/master/fib.cbl
|
||||
Reference in New Issue
Block a user