1d5280259a1ad3763675b2cc7621fca4.ppt
- Количество слайдов: 34
CPSC 3111/CISM 3111 COBOL Structured COBOL Programming Text: murach’s structured COBOL Authors: Murach, Prince, Menendez
What is a Computer? Components of a Computer n n n Input Unit(s); Keyboard, tape, disks Output Unit(s); CRT, tape, disks Memory (Storage) units [Addresses] Control Unit (Executes Instructions) Arithmetic/Logic Unit (Math and Logic) Only ‘understands’ machine language
Hardware / Software Hardware: Physical equipment Software: Programs, commands, etc. n n System: O/S, compilers, utilities, etc. Application: User or third party supplied. Languages: Assembler, Basic(VB), Fortran, RPG, Easytrieve, C, C++, C#, Ada, Java, … Compiler’s job - translate ‘source’ language to machine language (or ‘byte’ code)
Online vs Interactive Off-line = batch n n Local Batch Remote Batch Online = Interactive n n Many users with terminals (PC’s) Can be either local or remote Single/Multiple User - Timesharing
Data Organization Bit - Binary dig. IT - [on/off] or [1/0] Character - byte (8 Bits) Field - One or more Bytes (Characters) Record - One or more Fields File - One or more Records Database - One or more Files n Usually contains ‘metadata’
Report Components Page Heading Column Headings Report Body n Possibly with subtotals, etc. Summary n Final totals, summary totals, etc.
Program Design Program n Sequence of instructions describing actions to be taken by the computer Flowchart n n Graphical description of program logic Uses rectangles, diamonds, ovals, etc Pseudocode n n Symbolic representation of program logic More ENGLISH-like
Data Information Needed Type and Size Types n n n Alphabetic (Seldom used = A) Alphanumeric (X) Numeric (Sign and Decimal) w Binary w Numeric w Packed Numeric w Floating Point, etc. (Compatibility)
Program Development Define problem Design test data Design program Code program Compile program Test program Document Program
Identifier Rules 30 Character Maximum A-Z, a-z, 0 -9, ‘-’ Characters ‘-’ not first or last character Usually at least 1 alphabetic
‘CARD’ FORMAT 01 07 08 12 73 - 06 Line Numbers (XNU) Comment / Debug - 11 Margin ‘A’ - 72 Margin ‘B’ - 80 Identification (XNU)
COBOL Divisions IDENTIFICATION DIVISION. ENVIRONMENT DIVISION. DATA DIVISION. PROCEDURE DIVISION. Divisions can be divided into SECTIONS Sections can be divided into PARAGRAPHS Paragraphs are composed of SENTENCES
IDENTIFICATION DIVISION. PROGRAM-ID. PROG 1. All other entries are obsolete An ‘*’ in cc 07 can be used (Comment)
ENVIRONMENT DIVISION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT INPUT-FILE ASSIGN TO MYINFILE. SELECT PRINT-FILE ASSIGN TO MYREPORT.
ENVIRONMENT (SELECTS) SELECT PRINT-FILE ASSIGN TO “RMCDATAINPUT. DAT”. (For PC Files) SELECT PRINT-FILE ASSIGN TO PRINTER-QPRINT. (For AS 400 Files)
DATA DIVISION. FILE SECTION. FD INPUT-FILE. 01 INPUT-REC. 10 FILLER FD PRINT-FILE. 01 PRINT-REC. 10 FILLER PIC X(80). PIC X(132).
WORKING-STORAGE SECTION. n n Program’s ‘scratchpad’ LEVEL NUMBERS 01 -49 01 STARTS IN COLUMN 8 02 -49 COLUMN 12 AND UP w Usually use 05, 10, 15, 20, … n n EACH 01 IS A NEW RECORD All fields must be specified
PROCEDURE DIVISION. 010 -START-HERE. (INITIALIZATION) (PROCESS CONTROL LOOP) (TERMINATION)
OPEN INPUT file-name OPEN OUTPUT file-name (Gets files ready for processing)
ACCEPT identifier FROM DATE identifier will contain YYMMDD ACCEPT identifier FROM TIME identifier will contain HHMMSSMS (Used to get date and time) ACCEPT identifier [options] n Gets data from keyboard
MOVE identifier-1 TO identifier-2 (Alpha - Left Just. - Space Filled) (Numeric - decimal aligned) (Edited - follows edit characters)
READ file-name [into WS-name] AT END ANY IMPERATIVE STATEMENT(S) END-READ INPUT-FILE INTO WS-IN-REC AT END MOVE “YES” TO EOF-FLAG END-READ
WRITE (Generic) WRITE record-name [FROM ws-name] AFTER ADVANCING identifier LINES END-WRITE PRINT-REC FROM WS-PRINT-REC AFTER ADVANCING WS-SPACING END-WRITE
WRITE (New-Page) MOVE SPACES TO PRINT-REC WRITE PRINT-REC AFTER ADVANCING PAGE END-WRITE (Used to start new page for heading. )
PERFORM Paragraph-name UNTIL Condition PERFORM 100 -READ-INPUT PERFORM 300 -PROCESS-DATA UNTIL EOF-FLAG = “YES”
ADD literal ADD 1 TO identifier-1 TO REC-COUNT ADD identifier-1 TO identifier-2 ADD WS-SPACING TO WS-LINES
Decisions - Simple IF Condition-1 True Statements END-IF
Relational Conditions > GREATER THAN < LESS THAN = EQUAL TO >= GREATER OR EQUAL <= LESS OR EQUAL NOT can be used with all of the above
Decisions - ELSE IF condition-1 True Statements ELSE False Statements END-IF
Decisions - Examples IF HOURS-WORKED > 40 PERFORM 350 -CALC-OVERTIME ELSE PERFORM 360 -CALC-REGTIME END-IF
Decisions - complex IF complex-condition True statements ELSE False statements END-IF
Complex - conditions Two or more simple conditions connected with ‘AND’ or ‘OR’. IF (DEPARTMENT = 234 AND HIRE-DATE < “ 96 -06 -01”) ADD 1 TO OVER-5 -YEARS END-IF
CLOSE file-name CLOSE INPUT-FILE (Terminate file processing. )
GOBACK / STOP RUN GOBACK. (Returns to ‘calling’ entity. ) STOP RUN. (Returns to Operating System)
1d5280259a1ad3763675b2cc7621fca4.ppt