掌握Mainframe系列之 10分鐘學習COBOL
開個坑 打算把掌握Mainframe裡有趣的教程搬過來 今天先搬COBOL
About COBOL
COBOL is not a general purpose programming language. You wouldn’t write an operating system, AI algorithm, or racing sim in it. Where it excels is turning out high-precision business transactions like the ones you find in banks, credit card processors, and other financial institutions. Its rigid structure and adherence to a very specific specification mean that it’s also easy to read and trace through, something that helps with audits and compliance. Today, COBOL runs much of the world’s highest-earning businesses, and once you start to see how it was architected, you’ll begin to see just why.
COBOL 嚴謹的結構具有易讀性以及良好的程式碼可追蹤性;有利於審計與商業執行。 因此今天許多需求高精度的商業領域如銀行、信用卡機構等普遍採用COBOL作為事務處理語言。
十分鐘學習COBOL 視訊
在這裡插入程式碼片
示例程式碼
```cobol
IDENTIFICATION DIVISION.
PROGRAM-ID. ADDONE.
AUTHOR. STUDENT.
*
ENVIRONMENT DIVISION.
*
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT PRT-LINE ASSIGN TO PRTLINE.
SELECT PRT-DONE ASSIGN TO PRTDONE.
DATA DIVISION.
FILE SECTION.
FD PRT-LINE RECORD CONTAINS 80 CHARACTERS RECORDING MODE F.
01 PRT-REC PIC X(80) VALUE SPACES.
FD PRT-DONE RECORD CONTAINS 80 CHARACTERS RECORDING MODE F.
01 PRT-REC-DONE.
05 PRT-DATE PIC X(8) VALUE SPACES.
05 FILLER PIC X(1) VALUE SPACES.
05 PRT-TIME PIC X(4) VALUE SPACES.
05 FILLER PIC X(2) VALUE SPACES.
05 PRT-COMMENT PIC X(27) VALUE SPACES.
05 FILLER PIC X(2) VALUE SPACES.
05 PRT-MY-NAME PIC X(36) VALUE SPACES.
WORKING-STORAGE SECTION.
01 PGM-VARIABLES.
05 PGM-COUNT PIC 9(05).
01 YYYYMMDD PIC 9(8).
01 INTEGER-FORM PIC S9(9).
01 REFMOD-TIME-ITEM PIC X(8).
****************************************************************
* PROCEDURE DIVISION *
****************************************************************
PROCEDURE DIVISION.
*
A000-START.
OPEN OUTPUT PRT-LINE.
PERFORM A000-COUNT 10 TIMES.
PERFORM A000-DONE.
CLOSE PRT-LINE.
STOP RUN.
*
A000-COUNT.
ADD 1 TO PGM-COUNT.
* DISPLAY PGM-COUNT.
WRITE PRT-REC FROM PGM-COUNT.
*
A000-DONE.
OPEN OUTPUT PRT-DONE.
MOVE SPACES TO PRT-REC-DONE.
ACCEPT REFMOD-TIME-ITEM FROM TIME.
MOVE FUNCTION CURRENT-DATE(1:8) TO YYYYMMDD.
MOVE YYYYMMDD TO PRT-DATE.
MOVE REFMOD-TIME-ITEM (1:4) TO PRT-TIME.
MOVE "My first z/OS COBOL program" TO PRT-COMMENT.
WRITE PRT-REC-DONE.
CLOSE PRT-DONE.
相關文章
- 前置機器學習(三):30分鐘掌握常用NumPy用法機器學習
- 前置機器學習(五):30分鐘掌握常用Matplotlib用法機器學習
- 五分鐘學後端技術:如何學習Java工程師必須掌握的RPC後端Java工程師RPC
- Python教程系列之Flask框架的學習PythonFlask框架
- 分分鐘掌握快速排序排序
- Python學習系列之學Python需要什麼軟體?Python
- Hadoop 學習系列(四)之 MapReduce 原理講解Hadoop
- Hadoop 學習系列(三)之 YARN 詳細解析HadoopYarn
- SpringBoot系列之YAML配置用法學習筆記Spring BootYAML筆記
- tkinter學習系列(四)之Button 控制元件控制元件
- Hadoop 學習系列(二)之 HDFS 詳細解析Hadoop
- SpringMVC學習系列(10) 之 異常處理SpringMVC
- Java8學習系列之匿名函式LambdaJava函式
- Flutter學習系列之Flutter上手環境準備Flutter
- K8S系列學習之Pod實戰K8S
- Dubbo學習系列之十八(Skywalking服務跟蹤)
- ClickHouse學習系列之七【系統命令介紹】
- ClickHouse學習系列之四【副本&分片部署說明】
- Python學習系列之 xrange和range的區別!Python
- 掌握Linux技能的學習方法有什麼?Linux學習Linux
- 需掌握的深度學習知識深度學習
- 學習Linux必須掌握的命令!Linux
- JQuery學習系列jQuery
- 學習Java系列Java
- 5分鐘掌握JavaScript小技巧JavaScript
- 10分鐘掌握Python快取Python快取
- 精講深度學習RNN三大核心點,三分鐘掌握迴圈神經網路深度學習RNN神經網路
- ClickHouse學習系列之五【系統庫system說明】
- Python學習系列之七大資料型別Python大資料資料型別
- 為什麼學習python要掌握Linux?PythonLinux
- 五分鐘掌握 JavaScript 中的 IoCJavaScript
- 【譯】十五分鐘,學習 WebpackWeb
- [轉]memcached學習系列
- Android Preference 設定看圖說話之基礎篇(5分鐘掌握)Android
- MySQL學習系列之InnoDB下事務隔離機制MySql
- Spring5.0原始碼學習系列之淺談BeanFactory建立Spring原始碼Bean
- Netty原始碼學習系列之5-NioEventLoop的run方法Netty原始碼OOP
- Netty原始碼學習系列之4-ServerBootstrap的bind方法Netty原始碼Serverboot