Home / Developer  / Programming Language  / COBOL  / เขียนโปรแกรม COBOL การแสดงผลข้อมูลตาม DataType

เขียนโปรแกรม COBOL การแสดงผลข้อมูลตาม DataType

บทเรียนนี้จะเป็นรูปแบบการเขียนโปรแกรมภาษา COBOL การแสดงผลข้อมูลจากตัวแปร โดยแบ่งการรับค่าแสดงผลตาม DataType ต่างๆ

จากตัวอย่างบทเรียนก่อนจะเป็นการทำงานเบื้องต้น และการ Compile โปรแกรม

การติดตั้ง GNU COBOL หรือ Open COBOL

การแสดงผลรับค่าข้อมูลนั้น ภาษา COBOL จะใช้รูปแบบการรับค่าดังนี้ ใต้การประกาศ PROGRAM-ID

COBOL มีการประกาศแบบใช้ Picture Clause (PIC) เป็นการ Define ตัวแปรเป็นหลัก โดย PIC จะเป็นเหมือน regularExpression พิเศษที่รู้ว่าอะไรคือ DataType, Length, Sign และ Decimal and Position

โดยรูปแบบการใช้ Data Type นั้นจะเห็นว่า PIC A(30) คืออะไร ซึ่งจริงๆ A มาจากคำว่า Alphabetic หรือตัวอักษรที่มีความยาว 30 ตัวเก็บในตัวแปรชื่อ SW-NAME ส่วน ตัวแปร SW-ID นั้นคือการเก็บค่าตัวเลข 600368 ซึ่งน่าจะเป็นรหัสไว้ในรูปแบบ PIC 9(5) ใน Syntax ของ COBOL นั้น 9 ไม่ใช่ตัวเลขครับแต่เป็น Numeric หรือเลขจำนวนเต็ม

รูปแบบตามตารางปรากฏดังนี้

Symbol Description
9 Numeric เลขจำนวนเต็ม
A Alphabetic ตัวอักษร
X Alphanumeric อักขระอักษรเลข อักขระที่รวมทั้งตัวอักษรภาษาอังกฤษ A-Z ตัวเลข 0-9
V Implicit Decimal จุดทศนิยมคั่นภายใน
S Sign เครื่องหมายต่างๆ เช่น +,- และอาจจะเป็น .
P Assumed Decimal เลขทศนิยม

ดังนั้นพิจารณาส่วนของ Code นี้

เราจะเห็นว่า SW-NAME อาจจะเป็น String อะไรก็ได้ที่มีความยาว 30 ตัวอักษร และ SW-ID คือ ตัวเลขจำนวนเต็มจำนวน 5 ตัว (ในตัวอย่างใส่ไป 6 หลัก) ทีนี้ให้เราแสดงผล ค่าต่างๆ เมื่อเปิดโปรแกรม

ส่วนการแสดงผลนั้นเริ่มที่ สร้าง String ชือผมขึ้นมา Banyapon Poolsawas ไปเก็บไว้นตัวแปล SW-NAME

ส่วน SW-ID นั้นมีการประกาศแต่แรกแล้วใน DATA DIVISION  ดังนั้นค่าตัวแปรจะตามมาประมวลผลได้ทันทีในส่วนของ PROCEDURE DIVISION มาลอง Compile กันดู

Code ตัวเต็มๆคือเราต้องประกาศ 3 ส่วน ได้แก่ IDENTIFICATION DIVISION เพื่อบอกว่าโปรแกรมของเราคือโปรแกรมอะไร

ตั้งชื่อว่า TUTORIAL2

หลังจากนั้นก็ส่วนของ DATA DIVISION และ PROCEDURE DIVISION พร้อม STOP RUN ตัวชุดคำสั่ง จะได้ไฟล์ตามนี้

เปิด Terminal มา Compile ตัวโปรแกรม COBOL ของเรา

จะได้ไฟล์มาแล้ว เปิดเลย

Screen Shot 2016-08-07 at 9.57.53 AM

จะเห็นว่าการทำงานของมัน ถูกต้อง โดยเฉพาะส่วนของ SW-ID ที่ปรากฏมาแค่ 5 หลักทั้งที่ข้อมูลมี 6 หลัก

Screen Shot 2016-08-07 at 9.59.24 AM

เราสามารถทดสอบรูปแบบการแสดงผลของ PIC บน DataType ต่างๆ ได้เพิ่มเติม ลองสร้าง ไฟล์ .cob มาใหม่ตั้งชื่อว่า tutorial3.cob แล้วใช้รูปแบบการประกาศ PIC แบบนี้

สังเกตหลังจาก Compile ให้ดีครับ

ตัวแปร SW-NUM1 จะเป็นค่า S คือเครื่องหมาย +,- ส่วนมากเป็น + จำนวน 3 หลัก คั่นด้วยทศนิยม (v) ที่เป็น เลขจำนวนเต็ม (9) เลยประกาศ V9 โดยมีจำนวน 2 หลัก ประกาศว่า V9(2)

ส่วน SW-NUM3 และ SW-NUM4 จะเป็น S9(3)V9(2) สามารถกำหนดค่าเริ่มต้น S เป็น – ได้เลยใน DATA DIVISION และตามด้วย V9 จำนวนทศนิยมเป็นตัวเลข 2 ตำแหน่ง ส่วน SW-NUM4 นั้น S เป็น + และมีทศนิยท V9(3) เป็นเลขจำนวนเต็ม 3 หลัก

ตัวแปร SW-ID เป็น X(5) คือเป็นอักขระ ตัวอักษร ตัวเลข และ เครื่องหมาย ใดๆ ที่มีความยาว 5 ตัว ก็ใส่ X(5)

ทำการ Compile โปรแกรม

ผลที่ได้คือ

Screen Shot 2016-08-07 at 10.12.44 AM

จะเห็นว่า COBOL นั้นจะต้องใส่ใจเรื่องของการ DEFINE เป็นหลักก่อนจะทำการประมวลผลครับ

Comments

POST TAGS:

daydevthailand@gmail.com

<p>อาจารย์ประจำสาขาวิชาการออกแบบเชิงโต้ตอบ และการพัฒนาเกม วิทยาลัยครีเอทีฟดีไซน์ & เอ็นเตอร์เทนเมนต์เทคโนโลยี มหาวิทยาลัยธุรกิจบัณฑิตย์<br /> ,ผู้ก่อตั้ง บริษัท Daydev Co., Ltd, (เดย์เดฟ จำกัด)</p>

Review overview
NO COMMENTS

Sorry, the comment form is closed at this time.

%d bloggers like this: