ภาษาปาสคาล

       ภาษาปาสคาลสร้างขึ้นเพื่อใช้สอนการเขียนโปรแกรมคอมพิวเตอร์ให้เป็นระบบและมีระเบียบเป็นโครงสร้างเนื่องจากเป็นภาษาที่มีรูปแบบง่าย ต่อความเข้าใจ เขียนเป็นโปรแกรมได้เร็วแก้ไขปรับปรุงง่าย   ผู้สร้างภาษานี้คือ ดร.เวียร์ เมื่อประมาณปี พ.ศ.2514 ซึ่งหลังจากออกแบบแล้ว ได้มีผู้นำไปเขียนเป็น โปรแกรมตัวแปร
(COMPILER) โดยที่ตัวแปรที่ได้รับความนิยมมากที่สุดคือ TURBO PASCAL ของบริษัทบอร์แลนด์และปัจจุบันได้ถูกพัฒนาไปเรื่อยๆ  

     ในอดีตภาษาคอมพิวเตอร์ที่เรียกว่าฟอร์แทรนและโคบอลเป็นภาษาที่นิยมให้มากที่สุด ภาษาฟอร์แทรนพัฒนาขึ้นใช้ในปี พ.ศ. 2499 เป็นภาษาที่ใช้เพื่อประยุกต์
งานด้านตัวเลขได้ดีเยี่ยม ส่วนภาษาโคบอลพัฒนาขึ้นในปี พ.ศ. 2502 มุ่งใช้งานด้านประมวลผลธุรกิจ สำหรับภาษาปาสคาลได้รับการพัฒนาขึ้นในปี พ.ศ. 2513 
โดย นิเคลาส์ เวียร์ธ(Niklaus Wirth) แห่งเทคนิเคิล ยูนิเวอร์ซิตี้ ในเมืองซูริค ประเทศสวิสเซอร์แลนด์ ซึ่งกำลังเป็นที่นิยมแพร่หลายในปัจจุบันและจะนิยมกันมาก
ในอนาคต จุดประสงค์ของการใช้ภาษาปาสคาลเบื้องแรกก็คือ ฝึกนิสัยการเขียนโปรแกรมให้มีระเบียบระบบหรือฝึกการเขียนโปรแกรมโครงสร้าง ภาษาปาสคาลเป็น
ภาษาที่ออกแบบขึ้นให้มีความง่ายต่อการทำงาน การเข้าใจและการใช้ ปาสคาลเป็นชื่อของนักคณิตศาสตร์ชาวฝรั่งเศสชื่อว่า Blaise Pascal ซึ่งได้คิดเครื่องคำนวณ
ระบบกลไกขึ้นเป็นคนแรกจึงได้รับเกียรติให้ตั้งเป็นชื่อภาษาคอมพิวเตอร์ซึ่งเวียร์ธเป็นผู้สร้างภาษานี้ขึ้น ใช้กันกว้างขวางในสหรัฐอเมริกาและยุโรปเพื่อสอนการเขียน
โปรแกรมโครงสร้าง และใช้เป็นภาษาเอนกประสงค์(general purpose) ซึ่งประยุกต์ใช้ได้ทั้งคอมพิวเตอร์เครื่องใหญ่และไมโครคอมพิวเตอร์โปรแกรมง่าย ๆ

โปรแกรมภาษาปาสคาลที่สมบูรณ์และง่ายที่สุดจะต้องเป็นดังนี้

PROGRAM MyfirstProgram(OUTPUT);
BEGIN
WRITELN(‘This is my program);
END.
    เมื่อโปรกรม ดำเนินการจะให้ผลลัพธ์ดังนี้ This my program. โปรแกรมภาษาปาสคาลจะเขียนอักษรตัวพิมพ์เล็ก ตัวพิมพ์ใหญ่ เมื่อไร ตรงไหนปนเปกันอย่างไร
ก็ได้ คอมพิวเตอร์จะดูด้วยตนเองว่ามันจะทำงานจริงหรือไม่

รงสร้างของโปรแกรมปาสคาล
       โครงสร้างของโปรแกรมประกอบด้วยการตั้งหัวเรื่อง โดยการตั้งชื่อของโปรแกรมขึ้นเองในบรรทัดแรกด้วยคำว่า PROGRAM MyfirstProgram คำว่าBEGIN เป็นส่วนที่แสดงจุดเริ่มต้นของโปรแกรม ในทางตรงกันข้าม END. แสดงว่าเป็นส่วนของโปรแกรมที่สิ้นสุดการทำงาน และเมื่อจั่วหัวโปรแกรมจะตามด้วยชื่อโปรแกรมที่เรา
ตั้งเอง แล้วตามด้วยเครื่องหมาย ; สรุปได้ว่าโครงสร้างของโปรแกรมเป็นดังนี้
ในขั้นแรก ไปดูโครงสร้างของการเขียน pascal กันค่ะ

โครงสร้าง pascal
program ...;
var ...

begin

end.


program
เป็นส่วน ตั้งชื่อของโปรแกรมเพื่อให้รู้ว่าคือโปรแกรมอะไร
ท้ายของชื่อ ให้เขียน ; (semi-colon) เพื่อเป็นการจบคำสั่ง
ส่วนนี้เราจะเขียนหรือไม่ก็ได้ เพราะส่วนนี้เป็นเพียงชื่อเท่านั้น
program  myprogram;
var ...

begin

end.


var   ส่วนนี้เป็นส่วนที่ใช้สำหรับประกาศตัวแปร
program  myprogram;
var
a : integer ;
b : string ;
c : char ;

begin

end.


ในเรื่องของตัวแปร ( variable )
การประกาศตัวแปรให้ เริ่มด้วย var

ตามด้วย
ชื่อของตัวแปร : ชนิดของตัวแปร ;
( ส่วนประกอบของตัวแปร )

ชื่อของตัวแปร
ให้เป็นภาษาอังกฤษ .. ส่วนจะเขียนตัวเล็ก หรือ ใหญ่มีผลเหมือนกัน
ตัวแรกห้ามเป็นตัวเลข และห้ามเว้นวรรค ให้ใช้ ขีดล่างแทน ( _ )

ตัวอย่าง
MyNumber : integer ;  /
mynumber : integer ;  /
12number : integer ;   X
my_num : integer ;    /
my num : integer ;     X



ชนิดของตัวแปร
มีหลายชนิด ส่วนที่ใช้บ่อยๆ มีดังนี้
ชนิดของตัวแปร ขอบเขต
Shortint -128 ... +127
Byte 0 ... 255
Integer -32768 ... +32767
Word 0 ... 65535
Longint -2147483648 ... +2147483647
Real 2.9 * 10-39  ...  1.7 * 1038
String ตัวอักษร 255 ตัวอักษร
Char ตัวอักษร 1 ตัวอักษรเท่านั้น

               ที่ต้องมี การกำหนด ชนิดตัวแปรไว้หลายประเภทนี้ ก็เพื่อ
สะดวกในการใช้งาน
เช่น integer ก็ไว้สำหรับตัวแปรตัวเลขที่ใช้คำนวณ ส่วน string ก็ใช้จัดการข้อมูลตัวอักษร
เพื่อความเหมาะสม  คือ เมื่อเราประกาศตัวแปรแล้ว โปรแกรมจะทำการจองหน่วยความจำ
ให้กับตัวแปรหากเราใช้ ชนิดตัวแปรให้กว้างที่สุดแบบเดียวกันหมด.. ก็อาจจะกินหน่วยความ
จำมากเกินไปก็เลยกำหนดไว้หลายประเภท เพื่อให้เหมาะสมกับขนาดของข้อมูล


ตัวอย่าง

myname : string ;
yourname : string ;
age : byte ;
money : word ;

* ในการตั้งชื่อตัวแปร *
ควรตั้งชื่อ ที่สื่อความหมายได้ดี
เพื่อสะดวกในการแก้ไขโปรแกรม



begin

end. ส่วนนี้มีไว้สำหรับ สั่งให้คอมพิวเตอร์ทำงาน
program  myprogram;
var
a : integer ;
b : string ;
c : char ;
begin

write(' this is my first program') ;

end.

คำสั่งพื้นฐานที่จะต้องทำความรู้จักก็คือ

write( ) ;
ใช้สำหรับสั่งให้แสดงตัวอักษรบนจอ โดยใช้ร่วมกับเครื่องหมาย ' ... '
หรือจะใช้ตัวแปร ช่วยในการแสดงตัวอักษรก็ได้
ตัวอย่างที่ 1 write( ); this is a string in pascal program
program   write_string ;
var
        mystring : string ;

begin
        mystring := ' in pascal program' ;
        write('this is a string') ;
        write(mystring);
end.


หลังจากเขียนโปรแกรมนี้เสร็จให้ลอง Compile โดย กด Ctrl+F9
ตามด้วย Alt+F5 เพื่อดูผลลัพธ์


โครงสร้างขั้นพื้นฐาน
เป็นไปตามที่ได้กล่าวไว้ค่ะ ได้แก่
    1. ส่วนประกาศตัวแปร ( var .. )
   2. ส่วนการทำงาน ( begin .. ไปถึง end.)แต่ความจริงยังมีส่วนประกอบ อีกหลายส่วน เช่น การประกาศค่าคงที่ การเรียกยูนิตมาใช้การเขียน โพรซีเจอร์ และฟังชั่น
การประกาศตัวแปร local และ global


 ลักษณะการใช้ถ้อยคำและชื่อในภาษาปาสคาลมี2 ลักษณะ
   1. คำสงวน (Reserved word) คือชื่อต่าง ๆ ที่มีความหมายอย่างเดียวกันเสมอไม่ว่าจะเขียนขึ้นที่ใดของโปรแกรม เป็นคำหรือชื่อที่นิยามไว้เป็นการเฉพาะ เช่น คำที่เขียน
ว่า BEGIN END REPEAT DIVเป็นต้น
    2. ชื่อที่ตั้งขึ้น (identifier) คือชื่อต่าง ๆ ที่ผู้เขียนโปรแกรมตั้งขึ้นเพื่อจะระบุถึงตัวแปรที่จะเก็บไว้ในหน่วยความจำเพื่อช่วยเตือนความทรงจำของผู้เขียนโปรแกรมว่าชื่อที่ตั้ง
ขึ้นมีจุดประสงค์ที่จะใช้ในโปรแกรมอย่างไร ดังนั้นจึงนิยามขึ้นมาเฉพาะในแต่ละโปรแกรม ความหมายของชื่อจึงเปลี่ยนไป ชื่อที่ตั้งขึ้น(identifier) จะต้องด้วยตัวอักษรแล้วตาม
ด้วยศูนย์ หรือตัวอักษรหรือตัวเลขเท่านั้น และต้องเขียนทุกตัวติดกันหมด เช่น CURRENTSCORE,Y12,MY_BIRTH_DAY, NCC1997 เป็นต้น จำนวนตัวอักษรหรือ
ความยาวของชื่อเขียนได้โดยไม่จำกัด แต่คอมไพเลอร์บางตัวจะใช้อักขระเพียง 8 ตัวแรกเท่านั้น นิยมใช้ชื่อที่สื่อความหมายในสิ่งที่เราหมายถึงโดยใช้คำสั้น ๆ แทนข้อความที่สมบูรณ์
กฎเกณฑ์ของซีนเท็กซ์ (syntax)  คือกฎที่นิยามโครงสร้างของภาษา                ภาษาที่เราใช้ในการเขียนโปรแกรมมนุษย์สามารถเข้าใจความหมายได้แต่คอมพิวเตอร์ไม่สามารถเข้าใจเว้นแต่โปรแกรมปาสคาลนี้จะต้องถูกแปลหรือคอมไพล์ให้เป็นภาษาเครื่อง
ก่อนหากถูกคอมไพล์โดยไม่ผิดพลาดในเรื่องซีนแท็กซ์แล้วละก็ โปรแกรมสามารถดำเนินการ(execute) ได้  

 

อ่านต่อ