初级Cobol经验

合集下载

COBOL培训教程-7

COBOL培训教程-7

PERFORM语句的改进 PERFORM语句的改进
• 将被执行部分变成了可选部分,并增加了可选项“语句序 将被执行部分变成了可选部分,并增加了可选项“ END和内置语句部分。 列END-PERFORM” 和内置语句部分。
例:PERFORM VARYING ITEMC FROM 1 BY 2 UNTIL ITEMC > 7 MOVE A(ITEMC) TO B(ITEMC) ENDEND-PERFORM.
执行语句的多重循环形式
• COBOL允许用到三重循环,其一般格式为: COBOL允许用到三重循环,其一般格式为: 允许用到三重循环
THROUGH 过程名1 PERFORM 过程名1 过程名2 过程名2 THRU 参数1 初值1 步长1 条件1] [VARYING 参数1 FROM 初值1 BY 步长1 UNTIL 条件1] 参数2 初值2 步长2 条件2] [AFTER 参数2 FROM 初值2 BY 步长2 UNTIL 条件2] 参数3 初值3 步长3 条件3] [AFTER 参数3 FROM 初值3 BY 步长3 UNTIL 条件3]
多分支选择语句
• EVALUATE语句的一般格式为: EVALUATE语句的一般格式为: 语句的一般格式为
标识符1 标识符1 常量1 EVALUATE 常量1 … 条件式1 条件式1 ANY TRUE WHEN FALSE 标识符2 标识符2 THROUGH [NOT] 常量2 常量2 THRU 语句序列2 WHEN OTHER 语句序列2 NDEND-EVALUATE.
循环PERFORM语句 循环PERFORM语句 PERFORM
• 循环PERFORM语句的一般格式为: 循环PERFORM语句的一般格式为: PERFORM语句的一般格式为

cobol教程

cobol教程

cobol教程COBOL教程COBOL(Common Business-Oriented Language)是一种面向商业应用的编程语言,它主要用于处理大型企业的数据处理和事务处理。

本教程旨在帮助初学者了解和学习COBOL的基本概念和语法规则,从而能够编写简单的COBOL程序。

1. 基本语法COBOL程序由一系列的“句子”组成,每个句子以句点(.)结束。

句子由一系列的“词”组成,每个词由一个或多个字符组成。

COBOL对大小写敏感,因此要注意单词的大小写。

2. 数据定义在COBOL中,需要先定义要处理的数据。

可以使用“DATA DIVISION”来定义数据项及其属性。

数据项可以是数字、字符或日期等类型。

例如,可以定义一个名为“EMPLOYEE-ID”的变量来存储员工的唯一标识。

3. 过程部分过程部分是COBOL程序的核心,用于执行实际的业务逻辑。

可以使用各种控制结构(如IF语句和PERFORM循环)来实现条件判断和循环操作。

通过使用一系列的“句子”来描述要执行的操作。

4. 文件处理COBOL可以处理各种类型的文件,如顺序文件和索引文件。

可以使用“FILE SECTION”来定义文件及其属性,然后使用相关的文件处理语句来读取和写入文件。

5. 运行和调试COBOL程序可以通过COBOL编译器进行编译,并通过COBOL运行时系统来执行。

可以在运行过程中进行调试,以便找出程序中的错误并进行修复。

总结本教程提供了COBOL的基本概念和语法规则的介绍,以及一些常用的编程技巧和注意事项。

希望通过学习本教程,您能够对COBOL有一个初步的了解,并能够编写简单的COBOL程序。

COBOL简易教程

COBOL简易教程

COBOL简易教程主要内容1.COBOL语言的基本概念及程序的结构•一个例子●COBOL程序的结构●COBOL源程序的书写格式2.COBOL数据表示•常量•层次的概念•PICTURE语句•数据在内存中的各种形式3.算术运算●变量赋值 (MOVE, MOVE CORR)●算术运算(ADD, SUB, MUL, DIV, COMPUTE等)●内部函数4.字符串处理●合并、分离、取子串、替换等5.程序逻辑控制•条件的分类•IF、EVALUATE●PERFORM6.表处理定义、赋值、引用、查询7.读、写多格式记录文件8.常用语句小结9.子程序1.关于COBOL的初步知识◆COBOL是Common Business Oriented Language (通用商业语言,或称管理语言)的缩写◆最适用于数据处理◆比较接近于自然语言(英语)◆COBOL的结构严谨,层次性强◆COBOL的缺点是比较烦琐。

1.1 一个例子:***************************************************************** * * COBOL TRAINING PROGRAM * * VERSION 2.1.0 COPYRIGHT (C) 2004 * * WISTRON DALIAN SOFTWARE CO., LTD. * * ALL RIGHTS RESERVED. * * * **************************************************************** IDENTIFICATION DIVISION.PROGRAM-ID. EXERCIS6.AUTHOR. QXLU (WISTRON DALIAN).DATE-WRITTEN. 04-06-23.DATE-COMPILED. 04-06-23.*----------------------------------------------------------------* * COMMENT : * * * *----------------------------------------------------------------* ENVIRONMENT DIVISION.CONFIGURATION SECTION.SOURCE-COMPUTER. IBM-3084.OBJECT-COMPUTER. IBM-3084.INPUT-OUTPUT SECTION.FILE-CONTROL.SELECT DDI01 ASSIGN TO "DDI01".SELECT DDO01 ASSIGN TO "DDO01".*DATA DIVISION.FILE SECTION.*FD DDI01 LABEL RECORD IS STANDARD DATA RECORD AREIN-AREA0, IN-AREA1.01 IN-AREA0.05 IN-YEAR-NUM PIC 9(2).05 IN-PRINCIPAL PIC 9(4)V99.05 FILLER PIC X(07).05 RMARK PIC X(01) VALUE X"0A".01 IN-AREA1.05 IN-INTEREST-RATE OCCURS 5 TIMES PIC V999.05 RMARK PIC X(01) VALUE X"0A".FD DDO01 BLOCK 0 RECORDS LABEL RECORD STANDARD RECORDING F.01 PRT-REC.05 FILLER PIC X(79).**===============================================================* WORKING-STORAGE SECTION.01 IN-FILE-DATA.05 YEAR-NUM PIC 9(2).05 PRINCIPAL PIC 9(4)V99.05 INTEREST-RATE-TABLE.15 INTEREST-RATE OCCURS 5 TIMES PIC V999.*01 HEADER0 PIC X(79) VALUE' TABLE OF SIMPLE INTEREST'.01 HEADER1 PIC X(79) VALUE' ************************************'.01 HEADER2 PIC X(79) VALUE' PRINCIPAL 4,000.00 FOR 10 PERIODS'.01 HEADER3 PIC X(79) VALUE SPACE.01 HEADER4 PIC X(79) VALUE' PERIOD INTEREST RATE'.01 HEADER5.05 OUT-I-R OCCURS 5 TIMES PIC BBBBBBBBB.999.01 DETAIL0.05 OUT-PERIOD PIC ZZZ.05 OUT-P-I-S-ITEM OCCURS 5 TIMES.10 FOURSPACES PIC X(04) VALUE SPACE.10 OUT-P-I-SUM PIC 9,999.99.01 CNT-YEAR-NUM PIC 9(2).01 I-R-INDEX PIC 9.01 P-I-SUM PIC 9(6)V99.****************************************************************** * P R O C E D U R E D I V I S I O N * ***************************************************************** PROCEDURE DIVISION.*INPUT-DATA SECTION.OPEN INPUT DDI01.OPEN OUTPUT DDO01.READ DDI01.MOVE IN-YEAR-NUM TO YEAR-NUM.MOVE IN-PRINCIPAL TO PRINCIPAL.READ DDI01.MOVE IN-AREA1 TO INTEREST-RATE-TABLE.*PROCESS-OUTPUT-DATA SECTION.*PRINT HEADERWRITE PRT-REC FROM HEADER0 BEFORE 1.WRITE PRT-REC FROM HEADER1 BEFORE 1.WRITE PRT-REC FROM HEADER2 BEFORE 1.WRITE PRT-REC FROM HEADER3 BEFORE 1.WRITE PRT-REC FROM HEADER4 BEFORE 1.* PRINT INTEREST RATEPERFORM TEST BEFORE VARYING I-R-INDEXFROM 1 BY 1 UNTIL I-R-INDEX > 5MOVE INTEREST-RATE( I-R-INDEX ) TO OUT-I-R( I-R-INDEX )END-PERFORM.WRITE PRT-REC FROM HEADER5 BEFORE 1.*PROCESS & PRINT DETAILSPERFORM PRINT-DETAILVARYING CNT-YEAR-NUM FROM 1 BY 1UNTIL CNT-YEAR-NUM > YEAR-NUM.*CLOSE-FILES SECTION.CLOSE DDI01.CLOSE DDO01.*STOP RUN.**---------------------------------------------------------------** PRINT-DETAIL **---------------------------------------------------------------*PRINT-DETAIL SECTION.*MOVE CNT-YEAR-NUM TO OUT-PERIOD.PERFORM PROCESS-DETAILVARYING I-R-INDEX FROM 1 BY 1 UNTIL I-R-INDEX > 5.WRITE PRT-REC FROM DETAIL0 BEFORE 1.*PRINT-DETAIL-RTN.EXIT.**---------------------------------------------------------------** PROCESS-DETAIL **---------------------------------------------------------------*PROCESS-DETAIL SECTION.*COMPUTE P-I-SUM = PRINCIPAL *( INTEREST-RATE( I-R-INDEX ) * CNT-YEAR-NUM + 1 ).MOVE P-I-SUM TO OUT-P-I-SUM( I-R-INDEX ).*PROCESS-DETAIL-RTN.EXIT.** *** END OF CODING EXERCIS6 ***1.2 COBOL 程序的结构(1/p4)部(Division) 一部可包括若干节节(Section) 一节可包含若干段段(Paragraph) 一段可包含若干句子句子(Sentence) 一个句子可包含若干语句语句(Statement) 制定计算机完成一定的操作子句(Clause) 制定完成某一方面的功能每个程序应包含四个部IDENTIFICATION DIVISION (标识部)主要用来指定源程序名字,也可以写入其他用作备忘的某些信息(如日期、作者等)。

COBOL学习基础教程 01

COBOL学习基础教程 01

COBOL 概述1.COBOL语言的发展概述COBOL是Common Business Oriented Language(商业通用语言)的缩写。

实际上,COBOL不仅是商业数据处理的理想语言,而且广泛应用于数据管理领域,如财会工作,统计报表,计划编制,情报搜索,人事管理等。

因此COBOL也被称为“用于管理的语言“。

在计算机的应用领域中,数据处理(data processing)是应用最为广泛的一个领域。

数据处理的日益广泛应用要求人们设计出能满足实际数据处理工作中各种要求的一种计算机语言。

COBOL就是在这种形势下应运而生的。

1959年COBOL-611965年COBOL-651978年COBOL-781985年COBOL-852.COBOL语言的特点①最适于数据处理领域。

所谓数据处理是指对大量数据的收集,统计,分类和加工。

例如企业管理,库存管理,报表统计,账目管理,信息情报检索等方面都属于数据处理。

数据处理的特点是:算术计算量小而逻辑处理多;输入输出多;数据间存在着一定的逻辑关系;大量的分类排序;对打印报表要求比较高,多样化等等。

②COBOL比较接近于自然语言(英语)。

COBOL程序看起来很像一篇用英语写出来的文章。

比如 ADD A TO B 表示 A + B = B 。

COBOL采用大量英文词汇和句型,学过英语的人看COBOL程序感到通俗易懂。

③通用性强,由于COBOL语言的标准化程度较高。

一个计算机上的COBOL程序向另一计算机系统上移植是比较容易实现的。

④COBOL的结构严谨,层次分明。

每个程序分四大部分(称为部 DIVISION),每个部下面分为若干节,每个节下面分为若干段。

每一部分都有固定的程式。

⑤COBOL的缺点是比较繁琐。

无论程序大小简繁,四大部分都要写齐,对每个部进行必要的定义和说明。

因此源程序显得比较冗长。

3.COBOL程序的结构①部IDENTIFICATION DIVISION(标识部) : 主要用来指定源程序的名字,也可以写入其他做备忘的某些信息。

07_第十课_COBOL编程入门

07_第十课_COBOL编程入门

e.g compute A = a * (b + c) – d
一、标识部

北京德派克公司

作用:标识COBOL源程序名及一些备忘信 息,以供系统管理和调用。 格式:
IDENTIFICATION DIVISION. PROGRAM-ID. 程序名. [AUTHOR. 作者姓名] [……]
二、环境部

商业数据处理:银行、证券系统 数据管理领域:人事管理、库存管理、财 会工作、报表统计、情报检索等。
数据处理的特点:算术计算量少而逻辑处理 多;输入输出量大;数据间存在着一定的 逻辑关系;大量的分类排序。主要功能是 描述数据结构和分析处理大批量的数据。
COBOL语言特点

北京德派克公司


常量
北京德派克公司
数值常量 100,30,29.2,-123 非数值常量 ‘abc’‘123’ 表意常量 ZERO/ZEROS/ZEROES,SPACE/SPACES, HIGH-VALUE,LOW-VALUE,ALL

编码方式
北京德派克公司
COBOL的源程序书写格式
区间 关 键点
北京德派克公司
北京德派克公司
·每个字符占一格 ·主机系统一般都用大写字母。 ·相邻的两个字(如COBOL的保留字或用户自定义)之间 必须留一个以上的空格。 ·运算符(如加、减、乘、除、乘方)和等号左右两边必 须各留一个空格。在过程部中左括号的左侧和右括号 的右侧要留一空格,而内侧不必留空格。 ·逗号、句号、分号的左边不能留空格,而右边应有空 格。 ·一个空格和多个空格作用相同
HOST LANGUAGE SOURCE
COMPILE OBJECT MODULE

COBOL培训教程-11

COBOL培训教程-11

COBOL培训教程-11COBOL是一种过程型编程语言,最初由美国联邦政府财政部和IBM公司共同开发,主要应用于商业和金融领域。

随着计算机技术的不断发展和商业需求的变化,COBOL确立了其在企业信息系统中的重要地位。

而为了满足企业对COBOL程序员的需求,也为有志成为COBOL开发人员的IT专业人士提供了学习机会,许多培训机构开始提供COBOL培训教程,其中包括“COBOL培训教程-11”。

一、“COBOL培训教程-11”是什么?“COBOL培训教程-11”是一个专门为COBOL初学者或想深入学习COBOL的人提供的培训教程。

本教程涵盖了COBOL的基本语法、程序结构、数据类型、数据处理、文件处理、子程序等内容,同时还涉及到企业级COBOL程序的编写和调试。

本教程注重实践操作,通过编写实际的程序来帮助学习者更好地理解和掌握COBOL编程。

二、为什么要学习COBOL?COBOL是一种非常稳定、安全、高效的编程语言,被广泛应用于金融、制造、保险、医疗等行业的业务处理和管理系统。

许多企业的信息系统至今仍在使用COBOL编写的程序,需要维护和升级。

因此,学习COBOL开发有非常广阔的就业前景。

除此之外,COBOL还有以下优点:1. 语法简单易懂,学习门槛不高。

2. 可以处理大型数据,并有效地组织和管理数据。

3. 可以与其他编程语言或工具集成,提供灵活性。

4. 可以从源代码的角度审计系统,保证信息安全。

三、“COBOL培训教程-11”的学习流程1. 熟悉COBOL开发环境学习COBOL之前,需要熟悉COBOL开发环境。

现有的主流开发环境包括微软Windows、Linux、UNIX等,还需要安装COBOL编译器和调试器等开发工具。

在学习过程中需要熟练掌握开发环境的基本使用方法。

2. 学习COBOL基本语法COBOL的基本语法包括程序结构、基本语句、数据类型、运算符等。

学习者需要熟悉这些基本语法,从而能够编写简单的COBOL程序。

COBOL基础培训

COBOL基础培训
➢ COBOL是Common Business Oriented Language的缩写,是面向商业通用编程语言。 它是专门为商业数据处理而设计的计算机高级程序语言。广泛用于数据管理领域。应用 于多个行业如:银行,证券,金融,制造,等等。
➢ 1960年4月正式发表COBOL 61。目前最新版COBOL 2002。
➢ 常量:COBOL常量分为数值常量,非数值常量,表意常量。 ✓ 数值常量:由数字 0 ~ 9 ,正负号和小数点组成,如:123, 45.67, -890 ✓ 非数值常量:用匹配的引号(单)括起来的字符串,如:’$123’,’HELLO!’。 由纯数字组成 的非数值常量不能用于数学运算,如:’123’和123不同。 ✓ 表意常量: QUOTE, QUOTES表示引号,如:QUOTE ‘HENRY’ QUOTE ZERO, ZEROS, ZEROES : 表示零字符;SPACE, SPACES : 表示空格 HIGH-VALUE, HIGH-VALUES : 表示具有最高值的字符(每个字符二进制为11111111) LOW-VALUE, LOW-VALUES : 表示具有最低值的字符 (每个字符二进制为00000000) ALL : 表示由该量组成的字符串
➢ 数据名:相当于其它语言中的变量名,它代表一个具体的数据项。 ✓ 只能由字母(至少一个),数字和连字符“-“组成,连字符不能出现在两端,不能包含空格 ✓ 数据名长度不能超过30个字符 (length<=30) ✓ 尽量使用有意义的英文字或拼音,如:NAME,XING-MING ✓ 不能用保留字作为数据名,多使用连字符,如: NAME-OF-STUDENT
ENVIRONMENT
INPUT-OUTPUT
FILE-CONTROL.

cobol常用知识

cobol常用知识

cobol常用知识コボル基本語法コボル基本語法一、COBOL基本語法compla項目使用的Cobol是Micro Focus 公司生产的Cobol,采用在HP-UNIX上运行。

一、cobol的书写格式(每行)1、前6列为序号区(一般不编辑)2、第7列为标示列,仅可以写如下几个标示符。

a. “*”注释符(注释当前行的代码)b “/“注释符(注释当前行的代码,程序编译时,强制程序清单另起一页,不建议使用)c “-“字符串连接符d “D”DEBUG行标示符(程序为DEBUG模式时,标有该标示符的语句行代码执行,否则和注释行效果一样)3、第8列---11列为A区,包括以下内容。

a 部、节名。

b 层号014、第12列---72列为B区,过程部的程序必须写在B区中。

5、第72以后部分不能编辑。

二、cobol的语法结构(几大部分)1、标示部(IDENTIFICATION DIVISION):提供程序的一般性文档说明,本项目只保留程序名(PROGRAM-ID)一项。

2、环境部(ENVIRONMENT DIVISION): 提供程序外部有关的项目。

a. 配置节(CONFIGURATION SECTION)①.指定源计算机(SOURCE-COMPUTE).②.目标计算机(OBJECT-COMPUTE).③.设置debug模式(SOURCE-COMPUTE H9000V WITH DEBUGGING MODE)④. 指定读环境变量设置.SPECIAL-NAMES.ENVIRONMENT-VALUE IS CNS-ENV-PARMENVIRONMENT-NAME IS CNS-ENV-NAME.b. 输入输出节(INPUT-OUTPUT SECTION).文件的物理路径的定义。

方法一:(写死文件路径)SELECT FILE-LOG ASSIGN"/usr3/WSI/commonlog/WSI1101.log"ORGANIZATION IS LINE SEQUENTIAL.方法二:(过程部中动态指定文件)SELECT FILE-LOG ASSIGN TO SELECT-FILEORGANIZATION IS LINE SEQUENTIAL.在数据部定义字符串变量SELECT-FILE,在文件FILE-LOG打开前动态指定文件路径。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

cobol
COBOL程序的书写区

第01——06列为“标识
区”
标号是6位数字,应从小到大,但不一定连
续,标号只是方便查阅程序,可以省略。

层 01-49第7列为“注释区”
66层用于重命名“*”:表示本行为注释行,用于注释程序说明。

77层一般用于定义无
层次的变量
第08——11列为“A区”
88层用于定义条件名
程序中一列语句必须从该区开始书写:部
名、节名、段名,描述符(FD),01和第12——72列为“B区”
程序正文部分,过程部语句必须从该区开
始书写。

第73——80列为“注释
区”
DB CURSOR
declear
在WORKING -STORAGE 或者PROCEDURE
DIVISION 中声明
按行从SELECT 取出的数据赋予到宿主变
量中
EXEC SQL
DECLASE SAMPL1 CURSOR FOR
SELECT NAME,AGE,SEX FROM
ALL.TABLE
WHERE CLASS = A
END-EXEC
inner join(内连
接),在两张表进行
连接查询时,只保留
两张表中完全匹配的
结果集。

left join,在两张表
进行连接查询时,会
返回左表所有的行,
即使在右表中没有匹
配的记录。

open PROCEDURE DIVISION 中去定义
full join 不匹配fetch EXEC SQL
FETCH SAMPLE1
INTO:FNAME,:FAGE,:FSEX END-EXEC
close PROCEDURE DIVISION 中使用
EXEC SQL
CLOSE SAMPLE1
END-EXEC
STOP RUN 终止程序
将控制权返回系统
EXIT PROGRAM 子程
序返回主程序 主程
序无效
go back //STP0200 EXEC PGM=SORT
//SORTIN DD
DSN=ADCDMST.TEST.DAT AC,DISP=SHR
//SORTOUT DD
DSN=ADCDMST.TEST.SOR T
//
DISP=(NEW,CATLG,DELE TE),
//
UNIT=SYSDA,SPACE=(TR K,(5,2),RLSE),
//
DCB=(RECFM=FB,LRECL= 80)
//SYSOUT DD SYSOUT=*
//SYSIN DD * SORT
FIELDS=(1,5,CH,A) END
/*
组成
标识部标识程序的功能
环境部程序运行的环境,用到的文件
数据部文件节
(file
section

用来描述
程序中用
到的输入
输出文件
及记录中
各数据项
的属性工作单元

(worki
ng-
storage
section)
用来定义
程序中用
到的变量
联接节
(linkag
e
section)
定义调用
子程序所
用到的参

过程部程序执行
的语句
过程部中
应该包括
一个程序
出口语
句:EXIT
PROGRAM.
IEBCOPY IEFBR14
拷贝整个
数据集
自身没什
么用,删
除后续生
成的文件
合并数据

备份并压
缩一个
PDS
JCL常用程序
jcl DD语句
参数dsn 数据集的物理名
DISP DISP=(状态(打开方式),正常时的处理,异常时的处理)
DCB RECFM =
FB,
LRECL =
80
数据集的
物理特征
VOL卷标JCL
ERROR,一
般是JCL语
句的语法,
格式错误
IGD17001I 数据集有重名
IEFC630I 关键字或字段拼写错
IEFC019I DD语句位置错误
读文件,
写记录IDCAMS
创建,删
除,重命
名,编
目,取消
编目数据
集。

通常用于
管理VSAM
数据集。

临时文
件:&&
NEW OLD
SHR MOD
KEEP
DELETE
CATLG
UNCATLG
PASS
new一个
数据集时
定义文件
长度,定
长或者变
长。

相关文档
最新文档