วันพุธที่ 7 พฤศจิกายน พ.ศ. 2561

บทที่ 7 การจัดเรียงและค้นหาข้อมูล


บทที่ 7 การจัดเรียงและค้นหาข้อมูล


การจัดเรียงและค้นหาข้อมูล
ในบทเรียนนี้จะได้เรียนรู้กับขั้นตอนวิธีพื้นฐานในการจัดเรียงข้อมูล (Sort) และการค้นหาข้อมูล (Search) ซึ่งเป็นกิจกรรมที่สัมพันธ์กันที่ใช้ในการแก้ปัญหาที่พบบ่อยในชีวิตประจำวัน

การจัดเรียงข้อมูล
การจัดเรียงข้อมูลเป็นสิ่งที่พบอยู่เสมอ เมื่อต้องการประมวลผลข้อมูลเป็นจำนวนมาก เช่น ครูตรวจข้อสอบของนักเรียน และต้องการบันทึกคะแนนลงสมุดบันทึกคะแนนนักเรียนที่มีการเรียงเลขที่เอาไว้ การเรียงลำดับข้อมูลด้วยเงื่อนไขที่เหมาะสมจะทำให้การค้นหาข้อมูลทำได้อย่างมีประสิทธิภาพ

ตัวอย่างสถานการณ์
ให้เรียงลำดับตัวเลขในตารางด้านล่างนี้ จากน้อยไปหามาก


โดยทั่วไปการเรียงลำดับจำนวนเต็ม อาจใช้การจัดเรียงข้อมูลได้ 2 แบบ คือ


 1. การจัดเรียงแบบเลือก (Selection sort)
การเรียงลำดับแบบเลือก เป็นขั้นตอนวิธีการเรียงลำดับอย่างง่ายโดยใช้วิธีการเปรียบเทียบ ทำงานโดยการหาค่าเหมาะสมที่สุด (ค่ามากสุดหรือน้อยสุด) ที่อยู่ในรายการส่วนที่ยังไม่เรียงและนำค่าเหมาะที่สุดนั้นมาต่อท้ายของส่วนที่เรียงแล้ว


ภาพแสดงขั้นตอนการทำงานของการเรียงลำดับแบบเลือก โดยสีเหลือง คือ เรียงเรียบร้อยแล้ว , สีแดง คือ ค่าที่น้อยที่สุดในปัจจุบัน และสีฟ้า คือ ค่าที่กำลังพิจารณา


2. การเรียงลำดับแบบแทรก (Insertion sort)
การเรียงลำดับแบบแทรก เป็นขั้นตอนวิธีการเรียงลำดับอย่างง่าย ทำงานโดยจะแบ่งข้อมูลในรายการเป็นสองส่วนคือส่วนที่เรียงแล้วและส่วนที่ยังไม่เรียง แน่นอนว่าในตอนเริ่มแรกส่วนที่เรียงแล้วก็จะมีอย่างน้อยหนึ่งตัว และจะเริ่มหยิบข้อมูลตัวหนึ่งของส่วนที่ยังไม่เรียงมาเปรียบเทียบเพื่อหาตำแหน่งที่เหมาะสมในการแทรกลงในข้อมูลส่วนที่เรียงแล้ว ลักษณะเดียวกับการเรียงไพ่ในมือ ดังนั้นการเรียงลำดับแบบแทรกจึงไม่เหมาะในการทำงาน ในรายการที่มีจำนวนสมาชิกมาก ๆ


ภาพแสดงขั้นตอนการทำงานของการเรียงลำดับแบบแทรก












แบบทดสอบหลังเรียน หน่วยการเรียนรู้ที่ 2

ใบงาน หน่วยการเรียนรู้ที่ 2

แบบทดสอบก่อนเรียน หน่วยการเรียนรู้ที่ 3

หน่วยการเรียนรู้ที่ 3 โครงงานของเรา


หน่วยการเรียนรู้ที่ 3 โครงงานของเรา



  • บทที่ 8 การกำหนดปัญหา
  • บทที่ 9 การศึกษาและกำหนดขอบเขต
  • บทที่ 10 การวางแผนและออกแบบโครงงาน
  • บทที่ 11 การดำเนินงาน
  • บทที่ 12 การสรุปและเผยแพร่งาน






บทที่ 8 การกำหนดปัญหา



บทที่ 8 การกำหนดปัญหา

 การกำหนดปัญหา

การพัฒนาโครงงานเป็นกิจกรรมที่เริ่มจากการศึกษาสิ่งที่นักเรียนสนใจ จากนั้นดำเนินการออกแบบ วางแผน ลงมือปฏิบัติจนเกิดผลลัพธ์ และเผยแพร่ผลงานนั้น ซึ่งนักเรียนจะเกิดการเรียนรู้และเข้าใจในสิ่งที่สนใจอย่างถ่องแท้

แนวทางการพัฒนาโครงงาน ควรเริ่มจากการกำหนดปัญหา  ซึ่งอาจเป็นปัญหาที่พบในชีวิตประจำวัน หรือปัญหาที่มีผู้แก้ไขไว้แล้ว แต่เราเห็นช่องทางที่จะพัฒนาให้ดีขึ้น หลังจากกำหนดปัญหาแล้ว เราต้องทำการศึกษาและกำหนดขอบเขตของปัญหา ที่ต้องการแก้ไข รวมทั้งศึกษาความรู้เพิ่มเติม แล้ว วางแผนกำหนดกิจกรรมและการใช้ทรัพยากรต่าง ๆ

จากนั้นดำเนินการพัฒนาโครงงานตามแผนที่วางไว้ ซึ่งระหว่างการพัฒนา อาจต้องมีการปรับเปลี่ยนแผน เพื่อให้พัฒนาโครงงานได้อย่างมีประสิทธิภาพ และแก้ไขปัญหาได้ตรงจุดที่กำหนดไว้ เมื่อพัฒนาโครงงานเสร็จแล้ว จึงทำการ  สรุปผลและเผยแพร่ผลงานเพื่อเป็นประโยชน์แก้ผู้อื่นต่อไป


การกำหนดปัญหา
การพัฒนาโครงงานที่ดี จะต้องมีการกำหนดปัญหาให้ชัดเจนว่า ปัญหาคืออะไร เกิดจากอะไร
มีประเด็นอะไรบ้างที่เกี่ยวข้อง สามารถแก้ไขหรือปรับปรุงใดได้บ้าง โดยแนวทางการกำหนดปัญหามีดังนี้
1. ที่มาของปัญหา
1.1 ปัญหาในชีวิตประจำวัน เช่น การควบคุมค่าใช้จ่ายส่วนตัว หรือในครอบครัว เป็นต้น
1.2 ปัญหาในการเรียน หรือการทำงาน เช่น การลืมทำการบ้าน
1.3 ปัญหาในระดับชุมชน หรือระดับประเทศ เช่น ปัญหานักท่องเที่ยวไม่รู้จักแหล่งท่องเที่ยวในชุมมชน

2. แหล่งจุดประกายความคิดในการพัฒนาโครงงาน  อาทิ
– กิจกรรมในชีวิตประจำวัน การเรียน งานอดิเรก และงานที่รับผิดชอบ
– โทรทัศน์ รวมทั้งข่าวสารทางอินเตอร์เน็ต
– หนังสือ วารสาร ภาพยนตร์ การ์ตูน เกม หรือสื่อต่างๆ
– การเข้าค่ายอบรม การร่วมอภิปราย
– ศึกษาจากแหล่งเรียนรู้ในชุมชน หรือแหล่งท่องเที่ยว

3. องค์ประกอบเพื่อการตัดสินใจเลือกโครงงาน
 3.1 ความรู้ ความสามารถ ความสนใจ ความถนัด และประสบการณ์ของผู้ทำโครงงาน โดยพิจารณาได้จากคะแนนวัดผลความรู้หรือผลงานที่เคยปฏิบัติ
 3.2 ประโยชน์ของโครงงาน โดยโครงงานนั้นจะต้องสามารถนำภาระงาน ชิ้นงาน และกิจกรรมอิสระนั้นไปพัฒนาและใช้ได้จริงในชีวิตประจำวัน
3.3 ความคิดสร้างสรรค์ โดยเป็นโครงงานที่ไม่มีผู้ใดทำไว้หรือเป็นการพัฒนาโครงงานที่มีผู้อื่นทำไว้แล้ว ซึ่งโครงการนั้นจะต้องมีความแปลกใหม่และทันสมัย
3.4 ระยะเวลา โดยผู้ทำโครงงานควรกำหนดวันสิ้นสุดโครงงานให้ชัดเจน เพื่อให้สามารถประมาณระยะเวลาลงในตารางดำเนินการของโครงงานในแต่ละขั้นตอน
3.5 ค่าใช้จ่าย โดยผู้ทำโครงงานจะต้องประเมินค่าใช้จ่ายทั้งหมด ยึดหลักความคุ้มค่า ในการทำโครงงานด้วยการเลือกใช้ทรัพยากรที่มีอยู่แล้วมากกว่าการจัดหาใหม่
3.6 ความปลอดภัย โดยผู้ทำโครงงานควรเลือกทำโครงงานที่ไม่เป็นอันตรายต่อผู้ทำโครงงาน สังคม และประเทศชาติ หากโครงงานนั้นมีความเสี่ยงที่อาจเกิดอันตราย ผู้ทำโครงงานควรประสานงานกับผู้ที่เกี่ยวข้อง เพื่อให้การทำโครงงานคอมพิวเตอร์นั้นอยู่ในการดูแลและควบคุมของผู้เชี่ยวชาญ(Professional)
3.7 ค่านิยมและวัฒนธรรมท้องถิ่น โดยผู้ทำโครงงานควรหลีกเลี่ยงการทำโครงงานที่ขัดต่อความเชื่อ วัฒนธรรม หรือประเพณีต่างๆ ของท้องถิ่น






บทที่ 9 การศึกษาและกำหนดขอบเขต



บทที่ 9 การศึกษาและกำหนดขอบเขต


การศึกษาและกำหนดขอบเขต


การพัฒนาโครงงาน ควรศึกษาที่มาและความสำคัญของโครงงาน ว่าโครงงานนั้นแก้ปัญหาอะไร ได้ประโยชน์อย่างไร กับใครบ้าง หลังจากนั้นควรระบุวัตถุประสงค์ในการพัฒนาโครงงานให้ชัดเจน ว่าต้องการพัฒนาอะไร และควรที่จะต้องกำหนดแนวทางและขอบเขตของโครงงานว่าจะแก้ปัญหาในส่วนใดบ้าง ใช้ความรู้และทรัพยากรใดบ้าง แล้วจึงประเมินระยะเวลาและงบประมาณเท่าไร โดยมีขั้นตอนต่างๆ ดังนี้


 1. ศึกษาที่มาและความสำคัญของโครงงาน

การระบุที่มาและความสำคัญของโครงงาน ควรเริ่มต้นจากการอธิบายปัญหาที่เกิดขึ้น โดยระบุให้เห็นภาพว่า มีปัญหาเกิดขึ้นจริง และปัญหานั้นยังไม่ได้รับการแก้ไข หรือยังไม่ได้รับการแก้ไขที่ดีพอ ทั้งนี้การระบุแนวทางการแก้ปัญหาที่เหมาะสมนั้น ควรมีการอ้างอิงจากแหล่งข้อมูลที่น่าเชื่อถือ

หลังจากที่ได้ระบุที่มาและความสำคัญของปัญหาแล้ว ควรนำผลการศึกษาและวิเคราะห์การแก้ปัญหาด้วยวิธีอื่น ๆ ที่มีอยู่ว่ามีข้อดีและข้อเสียอย่างไร มาอธิบายโดยเน้นที่ข้อจำกัดของวิธีแก้ปัญหาเดิม เพื่ออ้างอิงเป็นเหตุผลในการพัฒนาโครงงาน

จากนั้นกล่าวภาพรวม โดยระบุว่า โครงงานดังกล่าวต้องการพัฒนาขึ้นเพื่อแก้ปัญหาใด ด้วยวิธีใด และบรรยายวิธีแก้ปัญหาที่เลือกใช้ ซึ่งต้องมีการอ้างอิงทฤษฎีที่เกี่ยวข้อง เพื่อให้เห็นว่าโครงงานนี้จะสำเร็จออกมาในรูปแบบใด

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

2. การระบุวัตถุประสงค์ของโครงงาน

วัตถุประสงค์ของโครงงานคือการระบุว่าโครงงานนี้ จะทำอะไร ผลลัพธ์ที่ได้คืออะไร การเขียนวัตถุประสงค์ต้องคำนึงว่า วัตถุประสงค์ต้องวัดผลได้ ไม่ว่าจะเป็นการวัดผลด้านประสิทธิภาพ สิ่งที่ควรหลีกเลี่ยงคือ การใช้คำคุณศัพท์ที่ไม่สามารถวัดค่าเป็นตัวเลขได้ ตัวอย่างการเขียนวัตถุประสงค์ที่ไม่ดี เช่น เว็บไซต์สามารถแสดงผลได้อย่างรวดเร็ว ถ้าจะเขียนวัตถุประสงค์ให้สามารถวัดค่าเป็นตัวเลขได้ ควรจะเขียนว่า เว็บไซต์สามารถแสดงผลได้ภายใน 3 วินาที

3. การระบุแนวทางและขอบเขตของโครงงาน

การเขียนแนวทางและขอบเขตของโครงงาน ควรเริ่มจากการอธิบายภาพรวม อาจใช้สตอรี่บอร์ด (Storyboard) ภาพ แผนผัง แบบจำลอง หรือโปรแกรมอื่นๆ มาช่วยอธิบายให้เห็นขั้นตอนการทำงานทั้งระบบของโครงงานที่จะพัฒนา

การระบุแนวทางและขอบเขตของโครงงาน จะช่วยให้ทราบว่าการพัฒนาโครงงานนี้ต้องศึกษาความรู้หรือเทคนิคใด รวมทั้งต้องจัดหาทรัพยากรใดเพิ่มเติมบ้าง เพื่อให้การพัฒนาโครงงานเป็นไปอย่างมีประสิทธิภาพ

4. ประเมินทรัพยากรที่ใช้ในโครงงาน

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

ส่วนการประเมินระยะเวลา ทำได้โดยแบ่งโครงงานเป็นกิจกรรมย่อย ประเมินเวลาที่ต้องใช้ในแต่ละกิจกรรม แล้วจึงทำการวางแผนผังในการดำเนินกิจกรรม เพื่อประเมินระยะเวลาในภาพรวม