การเขียนโปรแกรมคอมพิวเตอร์และอัลกอริธึม บทที่ 2 กระบวนการสร้าง Algorithm
Algorithm ? ความหมาย : คำบรรยายลำดับขั้นตอนการทำงานเพื่อให้ได้ผลลัพธ์ตามที่ต้องการ ข้อควรจำ คอมพิวเตอร์ทำงานได้ทีละ 1 คำสั่ง และจะทำงานตามลำดับตั้งแต่ต้นจนจบ คอมพิวเตอร์สามารถเปรียบเทียบค่าได้คราวละ 2 ค่าเท่านั้น
Example 1. การต้มไข่ไก่ทาน วัตถุดิบ : ไข่ไก่ ผลลัพธ์ : ไข่ต้มสุก วัตถุดิบ : ไข่ไก่ ผลลัพธ์ : ไข่ต้มสุก Algorithm ต้มน้ำให้เดือด ใส่ไข่ รอ 10 นาที ดับไฟ / ปิดเตา ปอกไข่ หยุด
Example 2. การต้มไข่ไก่ทาน วัตถุดิบ : ไข่ไก่ ผลลัพธ์ : ไข่ต้มสุก วัตถุดิบ : ไข่ไก่ ผลลัพธ์ : ไข่ต้มสุก Algorithm ต้มน้ำให้เดือด ใส่ไข่ รอ 5 นาที ดับไฟ / ปิดเตา หยุด
Example 1 Vs Example 2 ผลที่ได้เหมือนกันคือ ไข่ต้ม ผลลัพธ์ตัวอย่างที่ 1 สามารถทานได้เลย ส่วนตัวอย่างสองต้องปอกก่อนทาน สรุปคือ เราได้ผลลัพธ์ตามที่โจทย์ต้องการคือ ไข่ต้ม
Example 3 What’s up? การต้มไข่ไก่ทาน วัตถุดิบ : ไข่ไก่ ผลลัพธ์ : ไข่ต้มสุก Algorithm ต้มน้ำให้เดือด รอ 10 นาที ดับไฟ / ปิดเตา ปอกไข่ หยุด What’s up?
Algorithm นี้จะไม่ได้ไข่ต้ม เพราะไม่ได้ใส่ไข่ลงไป Example 3 การต้มไข่ไก่ทาน วัตถุดิบ : ไข่ไก่ ผลลัพธ์ : ไข่ต้มสุก Algorithm ต้มน้ำให้เดือด รอ 10 นาที ดับไฟ / ปิดเตา ปอกไข่ หยุด Algorithm นี้จะไม่ได้ไข่ต้ม เพราะไม่ได้ใส่ไข่ลงไป
การวิเคราะห์องค์ประกอบของงาน Input , Decision , Process , Output การพิจารณา ขั้นตอนการทำงานเป็นการนำเข้า ป้อนเข้าระบบ ถือเป็น Input ขั้นตอนเกี่ยวกับการกระทำ(กริยา) ถือเป็น Process ขั้นตอนที่ต้องเลือกกระทำ ถือเป็น Decision ขั้นตอนการนำข้อมูลออกจากระบบ แสดงผล ถือเป็น Output
Example เราลองนำขั้นตอนการต้มไข่มาวิเคราะห์ ต้มน้ำให้เดือด => การกระทำ(Process) ใส่ไข่ => การป้อนข้อมูล(Input) รอ 10 นาที => การกระทำ(Process) ดับไฟ => การกระทำ(Process) ปอกไข่ => การกระทำ(Process) หยุด
Example การโยนเหรียญเสี่ยงทายเพื่อตัดสินใจว่าจะกินขนมปังหรือผลไม้ โดยมีเงื่อนไขว่า ถ้าออกหัวกินขนมปัง ถ้าออกก้อยกินผลไม้ วัตถุดิบ : ผลการโยน ผลลัพธ์ : กินอะไร(ผลไม้/ขนมปัง) โยนเหรียญ => การกระทำ ดูเหรียญ => รับข้อมูล ถ้าออกหัว => ไปขั้นตอนที่ 5 ถ้าออกก้อย => ไปขั้นตอนที่ 6 กินขนมปัง => ไปขั้นตอนที่ 7 กินผลไม้ => ไปขั้นตอนที่ 7 หยุด
รูปแบบการเขียน Algorithm การรับข้อมูล ( Input) รูปแบบ รับค่า.............................. Ex รับค่าคะแนน รับค่าตัวเลข รับค่าอายุ
รูปแบบการเขียน Algorithm การตัดสินใจเลือกจากเงื่อนไข(Decision) รูปแบบ ถ้า....................ไปขั้นตอนที่....................... Ex ถ้าค่าอายุน้อยกว่า 10 ปี ไปขั้นตอนที่ 12 ถ้าคะแนนมากกว่า 79 คะแนน ไปขั้นตอนที่ 10 ถ้าค่าที่ได้เท่ากับ 0 ไปขั้นตอนที่ 2
รูปแบบการเขียน Algorithm การประมวลผล การคำนวณ (process) การกำหนดค่า รูปแบบ กำหนดค่า…………….=………… Ex กำหนดค่า ชื่อ = “สมชาย” // ข้อมูลตัวอักษร กำหนดค่า อายุ = 0 กำหนดค่า ระยะทาง = 100 กำหนดค่า อักษร = “1001”
รูปแบบการเขียน Algorithm การประมวลผล การคำนวณ (process) การคำนวณ รูปแบบ คำนวณค่า………=……… Ex คำนวณค่า ภาษี = ค่าเงินเดือน * 10 / 100 คำนวณหาค่า ภาษีมูลค่าเพิ่ม = ค่าสินค้า * 7 / 100
รูปแบบการเขียน Algorithm การแสดงผล (Output) รูปแบบ แสดงผลค่า................ Ex แสดงผล คะแนน แสดงผล ภาษี