Algorithms
Computer Science เป็นการศึกษาขั้นตอนวิธีว่ามีความถูกต้องและมีประสิทธิภาพหรือไม่ การศึกษาและการสร้างระบบคอมพิวเตอร์ที่สามารถนำขั้นตอนวิธีไปใช้ การออกแบบภาษาโปรแกรมและแปลขั้นตอนวิธีให้เป็นภาษาโปรแกรม เพื่อให้สามารถนำไปใช้ในฮาร์ดแวร์ได้ กำหนดความสำคัญของปัญหาและการออกแบบซอฟต์แวร์ที่ถูกต้องและมีประสิทธิภาพเพื่อให้สามารถแก้ปัญหาได้
ขั้นตอนวิธี (Algorithm) กระบวนการสำหรับการแก้ปัญหาทางคณิตศาสตร์โดยมีจำนวนขั้นตอนที่จำกัด ส่วนใหญ่มีการดำเนินการที่ซ้ำๆ เป็นขั้นเป็นตอน เพื่อให้งานสำเร็จลุล่วงไปได้ หรือ อาจกล่าวได้ว่า ขั้นตอนวิธีเป็นชุดลำดับของคำสั่งที่สามารถแก้ปัญหาได้
ลักษณะของขั้นตอนวิธี ขั้นตอนที่ 1 ทำงาน … ขั้นตอนที่ 2 ทำงาน … ขั้นตอนที่ 3 ทำงาน … … ขั้นตอนที่ n-1 ทำงาน … ขั้นตอนที่ n จบ
ทุกคำสั่งที่ใช้สร้างขั้นตอนวิธี จะอยู่ในรูปแบบต่อไปนี้ การดำเนินการตามลำดับ (Sequential operations) การดำเนินการตามเงื่อนไข (Conditional operations) การดำเนินการซ้ำ (Iterative operations)
การดำเนินการตามลำดับ เป็นการดำเนินการเพียงอย่างเดียว เมื่อทำเสร็จ จะไปทำการดำเนินการถัดไป ตัวอย่าง เดินไป 10 ก้าว ลอกข้อความจากบรรทัดที่ 5 หน้า 10 แสดงคะแนน
การดำเนินการตามเงื่อนไข เป็นการถามคำถาม การดำเนินการถัดไปจะกระทำโดยอาศัยพื้นฐานของคำตอบ ตัวอย่าง ถ้าไม่พบสิ่งกีดขวาง เดินไป 10 ก้าว ถ้ายืมหนังสือได้ ลอกข้อความจากบรรทัดที่ 5 หน้า 10 ถ้าทราบคะแนนแล้ว ให้แสดงคะแนน
การดำเนินการซ้ำ มีคำสั่งให้ทำวนซ้ำ โดยบอกว่าไม่ต้องไปทำคำสั่งถัดไป แต่ให้ย้อนกลับไปทำซ้ำคำสั่งที่ผ่านมาแล้ว ตัวอย่าง ถ้าไม่พบสิ่งกีดขวาง เดินไป 10 ก้าว ให้กลับไปทำซ้ำ 2 คำสั่งข้างต้น จนกว่าจะพบสิ่งกีดขวาง ถ้ายืมหนังสือได้ ลอกข้อความจากบรรทัดที่ 5 หน้า 10 ให้กลับไปทำซ้ำ 3 ครั้ง ถ้าทราบคะแนนแล้ว ให้แสดงคะแนน ให้กลับไปทำซ้ำจนกว่าจะครบทุกวิชา
ขั้นตอนวิธีในชีวิตประจำวัน มนุษย์ใช้ขั้นตอนวิธีตลอดเวลา ตัวอย่าง การทำกิจวัตรประจำวัน ตื่นนอน อาบน้ำ แต่งตัว รับประทานอาหาร ไปทำงาน กลับบ้าน นอน มนุษย์ใช้ขั้นตอนวิธีตลอดเวลา ตัวอย่าง การรับประทานอาหาร เดินไปที่โต๊ะอาหาร ดึงเก้าอี้ นั่ง จับช้อน ตักข้าว อ้าปาก เคี้ยว กลืน
ขั้นตอนวิธีในคณิตศาสตร์ ในคณิตศาสตร์มีการใช้ขั้นตอนวิธีตลอดเวลา ตัวอย่าง การบวกเลข 67+23 เอาหลักหน่วยตัวบนบวกหลักหน่วยตัวล่าง ใส่ศูนย์ไว้ที่หลักหน่วยของผลลัพธ์ ทด 1 เอาหลักสิบของตัวบนบวกหลักหน่วยของตัวล่าง นำผลจากคำสั่งที่แล้วบวกกับตัวทดจากคำสั่งข้างต้น นำผลที่ได้ ใส่ไว้ในที่หลักร้อยและหลักสิบของผลลัพธ์
ขั้นตอนวิธี เป็นการจัดลำดับการดำเนินการที่ชัดเจนและมีประสิทธิภาพ เมื่อกระทำการเสร็จสิ้นจะให้ผลลัพธ์และจบการทำงาน เป็นการรวบรวมการดำเนินการที่มีลำดับชัดเจนไม่คลุมเครือ สามารถบอกได้ว่าการดำเนินการใดจะทำก่อนหรือทำหลัง ตัวอย่าง เดิน (ไปไหน) เปิดประตู (ประตูอะไร) ขับรถ (ไปไหน) เดินไปที่รถ เปิดประตูรถ ขับรถไปทำงาน
สัญญลักษณ์ที่ใช้แทนขั้นตอนวิธี ภาษาธรรมชาติ (Natural languge) เป็นภาษาที่มนุษย์ใช้พูดและเขียนในชีวิตประจำวัน ข้อเสีย ตีความหมายแตกต่างกัน รหัสเทียม (Pseudocode) เป็นการเขียนคำสั่งคล้ายในภาษาโปรแกรมแต่ไม่ต้องมีไวยากรณ์ หรือวิธีการสร้างประโยคที่เข้มงวด ผังงาน (Flowchart) เป็นสัญญลักษณ์ที่มีรูปแบบชัดเจน
ปฏิบัติการที่ 1 ให้เขียนขั้นตอนวิธี.ในการใช้เครื่องคอมพิวเตอร์ของนิสิต