อัลกอริทึม
อัลกอริทึม เป็นส่วนประกอบที่สำคัญในการสร้างโปรแกรมหรือการประมวลผลใด ๆ เพื่อใช้เป็นแนวทางที่ชัดเจนในการสร้างโปรแกรมและแก้ปัญหาต่าง ๆ ที่เกิดขึ้น
ความหมายและลักษณะของอัลกอริทึม
[1]อัลกอริทึม (Algorithm ) เป็นส่วนหนึ่งในขั้นตอนการพัฒนาโปรแกรมคอมพิวเตอร์ เกิดจากแนวคิดอย่างเป็นระบบเพื่อนำไปสู่ผลลัพธ์ที่ต้องการ และเพื่อให้คอมพิวเตอร์ทำงานตามความต้องการหรือแก้ปัญหาใด ๆ ประกอบด้วยชุดของการทำงานที่ชัดเจน ดังนั้นหากออกแบบอัลกอริทึมได้ดี เมื่อนำไปเขียนโปรแกรมภาษาคอมพิวเตอร์ใด ๆ ก็จะได้ผลลัพธ์ตามความต้องการ
โดยทั่วไปแล้วในชีวิตประจำวันของมนุษย์ ทั้งในการทำงานและการแก้ปัญหาต่าง ๆ ที่เกี่ยวข้องกับคอมพิวเตอร์หรือไม่ก็ตามมักจะเกี่ยวข้องกับอัลกอริทึมอยู่แล้ว ยกตัวอย่างเช่น วิธีการปฐมพยาบาล ตำราประกอบอาหาร เป็นต้น ซึ่งอธิบายขั้นตอนต่าง ๆ ด้วยภาษาที่อ่านแล้วเข้าใจง่าย แต่ในด้านคอมพิวเตอร์นั้นจำเป็นที่จะต้องเรียนรู้คำสั่งต่างๆ เพิ่มเติมเพื่อให้คอมพิวเตอร์ สามารถเข้าใจได้
อัลกอริทึมการทำปูม้าสองเกลอ
1. เรียงรากผักชีลงในถาดสี่เหลี่ยม
2. นำปูม้า 2 ตัว วางลงบนรากผักชี
3. นำเกลือป่น 1 ช้อนชา และ เนย 1 ช้อนโต๊ะ โรยบนตัวปูม้า
4. นำถาดปูม้าใส่ลังถึง แล้วนึ่ง ประมาณ 15 – 20 นาที
ตัวอย่างการเขียนอัลกอริทึมในชีวิตประจำวัน
ความรู้พื้นฐานสำหรับเขียนการอัลกอริทึม
ในการออกแบบอัลกอริทึม ต้องคำนึงถึงระบบการทำงานของคอมพิวเตอร์ 3 ด้าน คือ
1. ด้านหน่วยความจำ ในการเขียนโปรแกรมคอมพิวเตอร์จะต้องมีการใช้งานพื้นที่ในหน่วยความจำของคอมพิวเตอร์ เช่น การกำหนดค่าข้อมูล การรับข้อมูลจากผู้ใช้ และการคำนวณที่มีผลลัพธ์เกิดขึ้น เป็นต้น ข้อมูลเหล่านี้จะถูกเก็บไว้ที่หน่วยความจำของคอมพิวเตอร์ ดังนั้นจะต้องมีการกำหนดตัวแปร (Variable) ขึ้นมา เพื่อเป็นตัวแทนสำหรับใช้อ้างอิงถึงข้อมูลที่ถูกเก็บไว้ในหน่วยความจำนั่นเอง
ตารางที่ 2.1 ตัวอย่างการกำหนดค่าให้กับตัวแปร
ตัวอย่าง |
ความหมาย |
Price = 100 |
ตัวแปร Price อ้างอิงถึงข้อมูล 100 ในหน่วยความจำ |
Vat = Price * 0.07 |
ตัวแปร Vat อ้างอิงถึงผลลัพธ์ที่ได้จากการคำนวณค่าที่เก็บไว้ในตัวแปร Price คูณด้วย 0.07 เพราะฉะนั้นตัวแปร Vat จึงอ้างอิงถึงข้อมูล 7.00 (เกิดจาก 100 * 0.07 ) |
N = 10 |
ตัวแปร N อ้างอิงถึงข้อมูล 10 ที่เก็บไว้ในหน่วยความจำ |
N = N + 1 |
ตัวแปร N อ้างอิงถึงผลลัพธ์ที่ได้จากการคำนวณค่าที่เก็บไว้ใน ตัวแปร N บวกด้วย 1 เพราะฉะนั้นตัวแปร N จึงอ้างอิงถึงข้อมูล 11 (เกิดจาก 10 + 1) |
หมายเหตุ
การใช้เครื่องหมายเท่ากับ (
= )
แทนการกำหนดค่าให้กับตัวแปร โดยจะทำการ ด้วยตัวแปรที่อยู่ด้านซ้ายของเครื่องหมายเท่ากับ |
2. ด้านการคำนวณ ในการประมวลผลที่เกี่ยวข้องกับการคำนวณด้วยคอมพิวเตอร์แตกต่างจากการคำนวณของมนุษย์ เพราะมีการพิจารณาจากลำดับความสำคัญของสัญลักษณ์หรือเครื่องหมายการคำนวณก่อน ไม่ได้คำนวณจากซ้ายไปขวาเสมอไป
ตารางที่ 2.2 ลำดับความสำคัญของสัญลักษณ์หรือเครื่องหมายการคำนวณ
ลำดับความสำคัญ |
สัญลักษณ์หรือเครื่องหมาย |
ความหมาย |
1 |
( ) |
วงเล็บ สำหรับจัดกลุ่มการคำนวณ |
2 |
* |
คูณ |
|
/ |
หาร |
3 |
+ |
บวก |
|
- |
ลบ |
หมายเหตุ การคำนวณจะทำจากลำดับความสำคัญสูงกว่าก่อน ส่วนกรณีที่มีลำดับ ความสำคัญเท่ากันจะทำการคำนวณจากซ้ายไปขวา |
ตารางที่ 2.3 ตัวอย่างวิธีการคำนวณด้วยคอมพิวเตอร์ กำหนดให้ X = 10 และ Y = 5
คำสั่ง |
ลำดับการทำงาน |
ผลลัพธ์ |
Z = ( X + Y ) * 2 |
( X + Y ) |
15 |
ทำในวงเล็บก่อน |
( X + Y ) * 2 |
30 |
Z = X + Y * 2 |
Y * 2 |
10 |
ð เครื่องหมาย * มีลำดับความสำคัญสูงกว่า เครื่องหมาย + |
X + Y * 2 |
20 |
Z = X /2 * Y |
X /2 |
5 |
ð เครื่องหมาย / มีลำดับความสำคัญเท่ากับ เครื่องหมาย * จึงทำจากซ้ายไปขวา |
X /2 * Y |
25 |
3. ด้านการเปรียบเทียบ ในการประมวลผลคำสั่งที่
สวัสดีครับ
อัลกอริทึม ในทางการสร้างภาพดิจิทัลที่ใช้สำหรับเครื่องเอกซเรย์คอมพิวเตอร์นั้นแตกต่างจากที่เสนอมา คือ ในการสร้างภาพจากเครื่องเอกซเรย์คอมพิวเตอร์ นักรังสีเทคนิคต้องกำหนดอัลกอริทึม ซึ่งเป็นขบวนการทางคณิตศาสตร์เพื่อคำนวณสำหรับการสร้างภาพตัดขวาง เพื่อแยกชนิดของเนื้อเยื่อชนิดต่างๆในร่างกายที่แตกต่างกัน เช่น กระดูก เนื้อเยื่อ เป็นต้น โดยจะเกี่ยวข้องร่วมกับขบวนการ Digital post processing ครับ
ขอบคุณมากคับ
ถ้ามีเนี้อหาใหม่ส่งให้ผมด้วนน่ะคับ
ผมกำลังเรียนอยู่
เนื้อหาของคุณถูกใจผมคับ
เรื่องอัลกอริทึม
คับขอบคุณคับ
ขอบคุนครับ
เข้าใจง่ายจัง
การเขียนบรรยายอัลกอริทึมและการวิเคราะห์ของอัลกอริทึมทำอย่างไรอ่ะค่ะ
อยากให้อธิบายให้เข้าใจง่ายยหน่อยค่ะ
เพราะเรื่องนี้หนูก็เรียนค่ะ
แต่ที่มหาลัยเรียนไม่ค่อยเข้าใจเท่าไร
ตอนเรียนก็เข้าใจ
แต่พอเรียนลึกๆๆเข้าก็ไม่ค่อยรู้เรื่องสักเท่าไรค่ะ
ตอบบบบบบบบบบบบบด่วนนนนนนนนนนนนนน
(-______________________--@)
ขอบคุณค่ะ
การเขียนโปรแกรมนี้มีเนื้อหาดีมากค่ะ
สนุกมากเลยค่ะที่ได้รู้เกี่ยวกับการเขีนอัลกอริทึม
อยากได้ลัษณะ
ช่วยหน่อยคับ กำหนดให้x=10y=20ถ้าเลือก1ให้นำx+yถ้าเลือก2ให้นำx-yถ้าเลือก3ให้นำx*yถ้าเลือก4ให้นำx/y
อยากทราบว่า คือ โปรแกรม ที่ทำงานเกี่ยวกับอะไร