วันเสาร์ที่ 28 สิงหาคม พ.ศ. 2553

โครงสร้างของโปรแกรมภาษาปาสคาล

ภาษาปาสคาลเป็นภาษาคอมพิวเตอร์ชั้นสูงที่พัฒนาขึ้นโดย Niklaus Wirth และได้ตั้งชื่อว่าปาสคาล (Pascal) เพื่อให้เกียรติแก่นักวิทยาศาสตร์ชาวฝรั่งเศส ชื่อ Blaise Pascal ภาษาปาสคาล พัฒนามาจากภาษา Algol โดยพัฒนาให้เป็นภาษาสำหรับฝึกหัดเขียนโปรแกรมคอมพิวเตอร์ ภาษาปาสคาลจะมีลักษณะเป็นภาษาคอมพิวเตอร์แบบประมวลความหรือคอมไพเลอร์ (Compiler) เมื่อเทียบกับภาษาคอมพิวเตอร์ชั้นสูงอื่น ๆ จะพบว่าภาษาปาสคาลเป็นภาษาที่มีการวางระบบและจัดรูปแบบที่มีโครงสร้างแน่นอนตายตัว จึงทำให้ภาษาปาสคาลเป็นภาษาที่เหมาะสำหรับการเขียนโปรแกรมโครงสร้าง (Structured Program) มากกว่าภาษาอื่น ๆ ที่ใช้กันอยู่จึงทำให้ได้รับความนิยมและนำมาประยุกต์ใช้งานต่าง ๆ อย่างแพร่หลาย






1.1 โครงสร้างของโปรแกรมภาษาปาสคาล

โปรแกรมในภาษาปาสคาล แบ่งเป็น 3 ส่วนคือ

1. ส่วนหัว (Heading) เป็นการประกาศชื่อของโปรแกรม ขึ้นต้นด้วยคำว่า PROGRAM ตามด้วยชื่อของโปรแกรม และจบบรรทัดด้วย ;

รูปแบบ



PROGRAM ชื่อโปรแกรม (รายชื่ออุปกรณ์);



ตัวอย่าง

PROGRAM EXAM1;

PROGRAM EXAM1(INPUT,OUTPUT);



ข้อสังเกต ชื่ออุปกรณ์ คือ INPUT, OUTPUT หรือชื่อของไฟล์ที่เกี่ยวข้องภายในโปรแกรมถ้าไม่ระบุจะถือว่า INPUT เข้าทาง keyboard และ OUTPUT ออกทางจอภาพ

2. ส่วนข้อกำหนด (Declaration part) คือส่วนตั้งแต่ส่วนหัวไปจนถึงคำว่า BEGIN ของโปรแกรมหลัก และเป็นส่วนที่เรากำหนดค่าต่าง ๆ ดังนี้

2.1 VAR เป็นการกำหนดแบบของข้อมูลให้แก่ตัวแปร

รูปแบบ



VAR รายชื่อตัวแปร : ประเภทของข้อมูล;



ตัวอย่าง



VAR I,J,K : INTEGER;

NAME : STRING;

SALARY : REAL;



2.2 TYPE เป็นการกำหนดแบบของข้อมูลขึ้นใหม่



รูปแบบ



TYPE ชื่อของแบบ = ประเภทหรือค่าของข้อมูล;



ตัวอย่าง



TYPE SCORE = INTEGER;

WEEK = (MON, TUE, WED, THU, FRI);

VAR TEST, MIDTERM, FINAL : SCORE;

DAY : WEEK;



จากตัวอย่างต้องประกาศชื่อแบบของตัวแปรก่อนแล้วจึงประกาศชื่อตัวแปรที่เป็นแบบ

2.3 CONST เป็นการกำหนดค่าคงที่



รูปแบบที่ 1



CONST รายชื่อค่าคงที่ = ค่าที่กำหนด;



รูปแบบที่ 2



CONST รายชื่อค่าคงที่ : ประเภทของข้อมูล = ค่าที่กำหนด;



ตัวอย่าง



CONST HEAD = ‘EXAMINATION’;

CONST A = 15;

CONST SALARY : REAL = 8000.00;



2.4 LABEL ใช้คู่กับคำสั่ง GOTO ภายในโปรแกรม



รูปแบบ



LABEL รายชื่อของ LABEL;



ตัวอย่าง



LABEL 256,XXX;



เช่น GOTO 256; GOTO XXX;



3. ส่วนคำสั่งต่าง ๆ (Statement Part) เป็นส่วนสุดท้ายของโปรแกรม ขึ้นต้นด้วย “BEGIN” และปิดท้ายด้วย “END.”



ตัวอย่าง



BEGIN

Statement หรือคำสั่งต่าง ๆ ;

END.



1.2 ชื่อ (Identifier)

ชื่อ คือคำที่ตั้งขึ้นเพื่อกำหนดใช้เป็นชื่อของโปรแกรม โปรแกรมย่อย ตัวแปร แบบของตัวแปร และค่าคงที่



การตั้งชื่อ

1. ตัวอักขระ (character) ที่นำมาใช้ คือ ตัวอักษร ตัวเลข และ (_) Underline

2. จะนำเครื่องหมายใด ๆ มาใช้เป็นชื่อไม่ได้

3. ขึ้นต้นด้วยตัวอักษร หรือขีดล่าง

4. ความยาวของชื่อไม่เกิน 30 ตัว แต่จะมีความหมายเพียง 8 ตัวแรกเท่านั้น



1.3 คำ (Word)

คำในภาษาปาสคาล แบ่งออกเป็น 2 พวก คือ

1. พวกที่เกี่ยวข้องกับข้อมูล ได้แก่ แบบของข้อมูล ตัวแปร และค่าคงที่

2. พวกที่เกี่ยวกับคำสั่ง ได้แก่ คำสงวน (Reserved word) คำมาตรฐาน (Standard word) คำใหม่ (User defined word)



1.4 ข้อมูล (Data)

ภาษาปาสคาล แบ่งประเภทของข้อมูลเป็น 4 แบบ คือ แบบมาตรฐาน แบบผู้เขียนโปรแกรมกำหนด แบบโครงสร้าง และแบบพอยน์เตอร์

แบบมาตรฐาน เป็นข้อมูลพื้นฐานที่ใช้ในโปรแกรมทั่ว ๆ ไป เป็นข้อมูลที่มีค่าเป็นลำดับที่มีค่ามากน้อยตามลำดับ แบ่งเป็น 5 ประเภท

1. Integer เป็นข้อมูลเลขจำนวนเต็ม

2. Real เป็นข้อมูลเลขจำนวนจริงมีทศนิยม

3. Character เป็นข้อมูลตัวอักษร

4. String เป็นข้อมูลของชุดตัวอักษร เช่น String [30] เป็นการะบุค่าของสตริงว่ามีขนาด 30 ตัวอักษร

5. Boolean เป็นข้อมูลที่มีค่าเป็นไปได้ 2 ค่า คือ เป็นจริง (true), เป็นเท็จ (false) ตัวดำเนินการ (operators) ที่ใช้ในภาษาปาสคาล ได้แก่

NOT ให้กลับค่าทางคณิตศาสตร์ของ Boolean เช่น Not true เป็น false

* ให้คูณเลขทางซ้ายกับเลขทางขวา

/ ให้หารโดยเลขทางซ้ายเป็นตัวตั้ง เลขทางขวาเป็นตัวหาร

DIV ให้หารแบบตัดเศษทิ้ง ใช้ได้เฉพาะเลขจำนวนเต็มคู่

MOD ให้หาเศษของการหาร ใช้ได้เฉพาะเลขจำนวนเต็มคู่

AND ให้ความเป็นจริง เมื่อทั้ง 2 กรณีเป็นจริงทั้งคู่

OR ให้ความเป็นจริง เมื่อกรณีใดกรณีหนึ่งเป็นจริง เช่น (X MOD Y = 0) 0R (x-y = 0) ข้อความนี้เป็นจริงเมื่อ X หารด้วย Y ลงตัว หรือเมื่อ X-Y เป็นศูนย์อย่างใดอย่างหนึ่ง หรือทั้ง 2 อย่าง

XOR ให้ความเป็นจริง เมื่อกรณีใดกรณีหนึ่งเป็นจริงเท่านั้น เช่น (X MOD Y Y= 0) XOR(X-Y=0) ข้อความนี้เป็นจริงเมื่อ X หารด้วย Y ลงตัว หรือเมื่อ X-Y เป็น 0 อย่างใดอย่างหนึ่งแต่ไม่ใช่ทั้ง 2 อย่างพร้อมกัน



แบบผู้เขียนโปรแกรมกำหนดขึ้น ภาษาปาสคาลอนุญาตให้ผู้เขียนโปรแกรมกำหนดรูปแบบของข้อมูลขึ้นมาใช้งานเฉพาะภายในโปรแกรมได้เอง โดยการประกาศไว้ในคำสั่ง VAR หรือ TYPE แบ่งเป็น 2 แบบ

1. กำหนดแบบใหม่ เป็นการกำหนดรูปแบบใหม่ ๆ เพื่อใช้เฉพาะโปรแกรมนั้น ๆ



ตัวอย่าง



TYPE color = (yellow,blue,red);

VAR dd = color;



ดังนั้น dd เป็นตัวแปรที่มีค่า 3 ค่า คือ yellow, blue, red



2. กำหนดช่วงของค่าข้อมูล เป็นการกำหนดช่วงของค่าของข้อมูลเฉพาะตัวแปรใดตัวแปรหนึ่งที่ใช้ภายในโปรแกรม



ตัวอย่าง

TYPE NUM = 0..50;

VAR X : NUM;



ดังนั้น X จะเป็นตัวแปรที่มีค่าในช่วง 0 ถึง 50

แบบโครงสร้าง เป็นการนำเอาข้อมูลแบบมาตรฐานหรือข้อมูลที่ผู้เขียนโปรแกรมกำหนดขึ้นมาจัดให้มีระบบ มีโครงสร้างเพื่อใช้งานโดยเฉพาะ การจัดข้อมูลโครงสร้าง แบ่งเป็น 4 ประเภท คือ ข้อมูล Array, set, record และ file

แบบพอยน์เตอร์ เป็นข้อมูลที่เป็นดัชนีสำหรับระบุข้อมูลอื่น ๆ อีกครั้งหนึ่ง ข้อมูลแบบนี้จะซับซ้อน ค่าของข้อมูลแบบพอยน์เตอร์จะไม่เป็นตัวเลข, ตัวอักษร แต่จะมีค่าเป็น address ในหน่วยความจำ RAM ที่ข้อมูลถูกเก็บอยู่

ไม่มีความคิดเห็น:

แสดงความคิดเห็น