หน่วยการเรียนรู้ที่ 18 ฟังก์ชั่น (Functions)
ฟังก์ชั่น (Functions)
การเขียนโปรแกรมคอมพิวเตอร์นั้นสามารถสร้างฟังก์ชั่นใหม่ขึ้นมาได้ และสามารถเรียกใช้ได้เมื่อต้องการ โดยฟังก์ชั่นที่สร้างขึ้นจะประกอบด้วยคำสั่งต่างๆ รวมกันอยู่ การสร้างฟังก์ชั่นนี้จะคล้ายกับการสร้างโพรซีเยอร์ แต่จะใช้คำนำหน้าว่า function และต้องระบุด้วยว่าเมื่อเรียกฟังก์ชั่นแล้วจะมีการคืนค่าประเภทใดออกมา ในภาษาปาสคาลมีฟังก์ชั่นมาตรฐานให้ใช้งานมากมาย แต่ที่นิยมใช้กันมากได้แก่ ฟังก์ชั่นทางคณิตศาสตร์
โครงสร้างฟังก์ชั่น
ในการสร้างฟังก์ชั่นจะต้องกำหนดรูปแบบของฟังก์ชั่นดังต่อไปนี้
รูปแบบ
function ชื่อฟังก์ชั่น (พารามิเตอร์) : ประเภทข้อมูลของผลลัพธ์;
begin
statement;
end;
จะเห็นได้ว่าโครงสร้างของฟังก์ชั่นจะคล้ายกับโพรซีเยอร์ แต่จะมีการเริ่มต้นด้วยคำว่า function และตามด้วยชื่อฟังก์ชั่น และมีพารามิเตอร์ต่างๆ ที่ต้องใช้ในฟังก์ชั่น จากนั้นการทำงานต่างๆ ภายใจ ฟังก์ชั่นจะเริ่มต้นด้วยคำว่า begin และจบท้ายด้วย end; และก่อนที่จะจบฟังก์ชั่นด้วย end; จะต้องมีการคืนค่าให้กับชื่อฟังก์ชั่นเสียก่อน นอกจากนี้ในฟังก์ชั่นสามารถประกาศตัวแปรได้เช่นเดียวโพรซีเยอร์ ดังตัวอย่างเช่น
function ADD(x,y : integer) : integer;
begin
ADD := x + y; { คืนค่าให้ชื่อฟังก์ชั่น }
end;
ฟังก์ชั่นนี้ชื่อว่า ADD โดยจะทำหน้าที่บวกเลขที่รับเข้าไปในพารามิเตอร์ x และ y โดยตัวเลขที่รับมาจะเป็นเลขจำนวนเต็ม และค่าของผลลัพธ์จากทำฟังก์ชั่นจะเป็นจำนวนเต็มเช่นกัน สำหรับการเรียกใช้ฟังก์ชั่นสามารถทำได้เช่นเดียวกับโพรซีเยอร์ โดยเรียกชื่อฟังก์ชั่นขึ้นมาเลย แต่ชื่อของฟังก์ชั่นจะมีค่าอยู่ภายในตัวของมันเอง