อัลกอริทึม


อัลกอริทึม
       Algorithm คือ กระบวนการแก้ปัญหาที่สามารถอธิบายออกมาเป็นขั้นตอนที่ชัดเจน เมื่อนำเข้าอะไร แล้วจะต้องได้ผลลัพธ์เช่นไร  กระบวนการนี้ประกอบด้วยจะประกอบด้วย วิธีการเป็นขั้นๆ และมีส่วนที่ต้องทำแบบวนซำอีก จนกระทั่งเสร็จสิ้นการทำงาน
       Algorithm ไม่ใช่คำตอบแต่เป็นชุดคำสั่งที่ทำให้ได้คำตอบ วิธีการในการอธิบาย Algorithm ได้แก่
1. Natural Language อธิบายแบบใช้ภาษาที่เราสื่อสารกันทั่วไป
2.Pseudocode อธิบายด้วยรหัสจำลองหรือรหัสเทียม
3.Flowchart อธิบายด้วยแผนผัง
การนำขั้นตอนวิธีไปใช้แก้ปัญหา ไม่จำกัดเฉพาะการเขียนโปรแกรมคอมพิวเตอร์ แต่สามารถใช้กับปัญหาอื่น ๆ ได้เช่นเดียวกัน
      ตัวอย่างเช่น ในการวางแผนการใช้ทรัพยากรทางธุรกิจขององค์กร หรือ Enterprise Resource Planning ( 
ERP เพื่อให้เกิดการใช้ทรัพยากรอย่างมีประโยชน์สูงสุด ซึ่งจำเป็นต้องวางแผนอย่างเป็นระบบ เป็นขั้นตอน จึงจำเป็นต้องอาศัย Algorithm ด้วย เพื่อให้ทราบถึงขั้นตอนต่างๆ และสามารถตัดทอนขั้นตอนที่เกินความจำเป็น อีกทั้งยังสามารถปรับปรุง และเพิ่มเติมขั้นตอนใหม่ เข้าไปได้ ช่วยลดความสับสนขณะทำงานด้วย
       คำว่า Algorithm ในทางคณิตศาสตร์จะหมายถึงขั้นตอนหรือวิธีการคำนวณ สำหรับในการเขียนโปรแกรมคอมพิวเตอร์ Algorithm จะหมายถึงวิธีการที่ได้แบ่งออกเป็นขั้นตอนย่อยๆ ที่มีการทำงานแน่นอน หรือการอธิบายลำดับขั้นตอนการทำงานในลักษณะของข้อความ ตั้งแต่ต้นจนจบ ว่ามีลำดับขั้นตอนการทำงานอย่างไรบ้าง Algorithm มาจากชื่อของนักคณิตศาสตร์ชาวเปอร์เซีย Abu Ja’ far Muhammad ibm al-Khwarizmi ผู้เขียนหนังสือเกี่ยวกับเรื่องของจำนวนของชาวฮินดูและอาหรับ “Aldorithmi de numero Indorum” (ภาษาลาตินซึ่งแปลว่า “Al-Khwarizmi on the Hindu Art of Reckoning” (ภาษาอังกฤษเป็นผู้เริ่มใช้เลขศูนย์ในระบบทศนิยม
จุดประสงค์การเขียน Algorithm
       อัลกอริทึมหรือขั้นตอนวิธีการแก้ปัญหา เป็นการจัดลำดับความคิดเป็นขั้นตอนต่างๆ เพื่อแก้ไขปัญหาในขั้นตอนการเขียนโปรแกรมที่สอดคล้องกรรมวิธีแก้ปัญหาที่กำหนดไว้ การเขียนอัลกอริทึมจึงเป็นการแสดงลำดับการทางานตามคุณสมบัติด้านการประมวลผลของคอมพิวเตอร์ ที่พร้อมจะนำไปแปลงเป็นลำดับคาสั่งให้คอมพิวเตอร์ทางาน การเขียนโปรแกรมคอมพิวเตอร์ด้วยภาษาที่เหมาะสม เพื่อสั่งให้คอมพิวเตอร์ทำงานตามอัลกอริทึมที่กำหนดไว้ และการเขียนอัลกอริทึมออกมาให้ตรวจสอบความถูกต้องได้ครบถ้วนขึ้น

รูปแบบการเขียนขั้นตอนวิธีแก้ปัญหา (Algorithm)

ในส่วนของการพัฒนาลาดับขั้นตอนวิธีการแก้ปัญหา (Algorithm Development) อาจเขียนลาดับขั้นตอนการทางานได้ 2 วิธี คือ การอธิบายขั้นตอนการทางานอย่างคร่าว ๆ และการอธิบายขั้นตอนการทางานอย่างละเอียด

เทคนิคการเขียน Algorithm
อัลกอริทึม เป็นขั้นตอนการบรรยายลำดับขั้นตอนการแก้ปัญหาระบบงานเป็นรายข้อ เพื่อแสดงให้เห็นถึงขึ้นตอน เพื่อแสดงให้เห็นถึงขั้นตอนการทำงานที่ชัดเจน และเพื่อใช้ในการทดสอบการทำงานของอัลกอริทึมด้วย ก่อนศึกษาวิธีการเขียนอัลกอริทึม ควรมีความเข้าใจและคานึงถึงคุณสมบัติพื้นฐานของระบบคอมพิวเตอร์ก่อน เพื่อนาไปประยุกต์ใช้ในขั้นตอนการเขียนอัลกอริทึมได้อย่างถูกต้องต่อไป
คุณสมบัติการทำงานระดับพื้นฐานของคอมพิวเตอร์ มีดังนี้
1. คุณสมบัติด้านหน่วยความจำ
การเขียนโปรแกรมคอมพิวเตอร์ต้องเกี่ยวข้องกับการใช้งานพื้นที่ในหน่วยความจำของระบบคอมพิวเตอร์ ในภาษาคอมพิวเตอร์ให้แทนสัญลักษณ์กำหนดพื้นที่หน่วยความจำ ด้วยการกำหนดชื่อเป็นตัวแปรใช้งาน เพื่อใช้อ้างอิงถึงข้อมูลในหน่วยความจำ เช่น
N = 1 หมายถึง กำหนดค่า 1 เก็บไว้ในตัวแปร N
Ans = X2 + Y2 หมายถึง เอาค่า X ยกกาลัง 2 บวกกับค่า Y ยกกาลังสอง แล้วเก็บค่าผลลัพธ์ที่ได้ไว้ที่ตัวแปร Ans
Total = Total + Salary หมายถึง การเอาค่าในตัวแปร Salary ไปบวกเข้ากับค่าในตัวแปร Total แล้วเอาค่าผลลัพธ์ใหม่ที่ได้ไปเก็บที่ตัวแปร Total ซึ่งค่าใหม่ที่ได้จะไปเก็บทับค่าเดิมที่มีอยู่ คำสั่งลักษณะนี้ใช้ในการสะสมค่า หรือเปลี่ยนแปลงค่าในตัวแปรเดิม
2. คุณสมบัติด้านการคำนวณ
คุณสมบัติด้านการคำนวณในระบบคอมพิวเตอร์ ระดับพื้นฐาน คือ สามารถดำเนินการบวก ลบ คูณ หาร แต่ลักษณะการพิจารณาเลือกประมวลผลงานคำนวณของคอมพิวเตอร์นั้น มีความแตกต่างจากระบบการคำนวณทั่วๆ ไป คือ คอมพิวเตอร์คำนวณโดยพิจารณาลาดับความสาคัญของสัญลักษณ์เครื่องหมายการคำนวณที่ปรากฏในนิพจน์การคำนวณนั้น ๆ เป็นสาคัญ สัญลักษณ์ที่ใช้ในการคำนวณและลำดับการทำงานของการคำนวณ มีดังนี้


สัญลักษณ์
ความหมายในการทำงาน
ลำดับการทำงาน
+
-
*
/
** หรือ ^
( )
บวก
ลบ
คูณ
หาร
ยกกาลัง
วงเล็บ
4
4
3
3
2
1



หากมีวงเล็บจะดำเนินการในวงเล็บก่อน และกรณีที่มีลำดับความสำคัญเท่ากัน จะคำนวณจากด้านซ้ายไปขวา

การใช้สัญลักษณ์เขียนประโยคคำสั่งเงื่อนไขแบบ 1 ประโยค มีสัญลักษณ์ ดังนี้

สัญลักษณ์
ความหมายในการทำงาน
=
<
>
<=
>=
<>
เท่ากับ
น้อยกว่า
มากกว่า
น้อยกว่าหรือเท่ากับ
มากกว่าหรือเท่ากับ
ไม่เท่ากับ



ลักษระการเขียน Algorithm
แนวทางการเขียนอัลกอริทึมเป็นลักษณะการทำงานขั้นพื้นฐาน มักปรากฏในระบบงานโปรแกรมคอมพิวเตอร์โดยทั่วไป มีแนวทางที่ใช้บ่อย ๆ ดังนี้
·       การทำงานลักษณะการนับค่าสะสมในหน่วยความจำ
·       การทำงานลักษณะวนรอบการทำงาน
·       การทำงานลักษณะหาค่ามากที่สุด และค่าน้อยที่สุด





2 ความคิดเห็น: