RSS

ผู้จัดทำ

ชื่อ:นางสาวยุพาพรรณ ใจเร็ว
ชั้น:มัธยมศึกษาปีที่4/2
ชื่อเล่น:บีม
ติดต่อได้ที่

facebook:

twiter:

 
ใส่ความเห็น

Posted by บน กันยายน 19, 2012 นิ้ว อื่นๆ

 

ขั้นตอนพัฒนาโครงงานคอมพิวเตอร์

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

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

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

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

คุณค่าของการทำโครงงานคอมพิวเตอร์

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

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

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

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

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

1. สร้างความสำนึกและความรับผิดชอบในการศึกษาและพัฒนาระบบด้วยตนเอง
2. เปิดโอกาสให้นักเรียนได้พัฒนาและแสดงความสามารถตามศักยภาพของตนเอง
3. เปิดโอกาสให้นักเรียนได้ศึกษา ค้นคว้า และเรียนรู้ในเรื่องที่นักเรียนสนใจได้ลึกซึ้งกว่าการเรียนในห้องตามปกติ
4. ส่งเสริมและพัฒนากระบวนการคิด การแก้ปัญหา การตัดสินใจ รวมทั้งการสื่อสารระหว่างกัน
5. กระตุ้นให้นักเรียนมีความสนใจในการเรียนวิชาสาขาคอมพิวเตอร์ และมีความสนใจที่จะประกอบอาชีพทางด้านนี้
6. ส่งเสริมให้นักเรียนได้ใช้เวลาอย่างเป็นประโยชน์ในทางสร้างสรรค์
7. สร้างความสัมพันธ์ระหว่างนักเรียนกับครูและชุมชน รวมทั้งส่งเสริมให้ชุมชนสนใจคอมพิว เตอร์และเทคโนโลยีที่เกี่ยวข้องมากขึ้น
8. เป็นการบูรณาการเอาความรู้จากวิชาต่าง ๆ ที่ได้รับมาจัดทำผสมผสานกับโปรแกรมคอมพิวเตอร์เป็นโครงงานเพื่อนำเสนอต่อชุมชน

การจัดทำโครงงานคอมพิวเตอร์นั้น นักเรียนควรมีความรู้พื้นฐานเกี่ยวกับการทำงานของเครื่องคอมพิวเตอร์ เหตุผลที่ใช้ในการแก้ปัญหา กระบวนการแก้ปัญหา หลักการเขียนโปรแกรมเบื้องต้น และการแทนข้อมูลในคอมพิวเตอร์ ก่อนที่จะเริ่มทำโครงงาน และใช้ความรู้ดังกล่าวเป็นพื้นฐานในการสร้างความรู้ใหม่ในโครงงานคอมพิวเตอร์ โดยในการทำโครงงานนักเรียนอาจจะมีโอกาสได้ทำความรู้จักกับความรู้ใหม่เพิ่มเติมอีกด้วย เช่น ปัญญาประดิษฐ์ (Artificial Intelligence) ฐานข้อมูล (Database) และการสืบค้นข้อมูล (Information Retrieval) เป็นต้น ซึ่งจะขึ้นอยู่กับหัวข้อที่นักเรียนเลือกทำโครงงาน
ประเภทของโครงงานคอมพิวเตอร์
คอมพิวเตอร์เป็นเครื่องมือที่ใช้ในงานวิจัยในทุก ๆ สาขาวิชา ดังนั้นโครงงานคอมพิวเตอร์จึงมีความหลากหลายเป็นอย่างมาก ทั้งในลักษณะของเนื้อหา กิจกรรมและลักษณะของประโยชน์หรือผลงาที่ได้ ซึ่งอาจแบ่งเป็นประเภทใหญ่ ๆ ได้ 5 ประเภท คือ 1. โครงงานพัฒนาสื่อเพื่อการศึกษา (Educational Media) 2. โครงงานพัฒนาเครื่องมือ (Tools Development) 3. โครงงานประเภทการทดลองทฤษฎี (Theory Experiment) 4. โครงงานประเภทการประยุกต์ใช้งาน (Application) 5. โครงงานพัฒนาเกม (Game Development)

1. โครงงานพัฒนาสื่อเพื่อการศึกษา (Educational Media)

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

2.โครงงานพัฒนาเครื่องมือ (Tools Development)

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

3.โ ครงงานประเภทการทดลองทฤษฎี (Theory Experiment)

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

4. โครงงานประเภทการประยุกต์ใช้งาน (Application)

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

5. โครงงานพัฒนาเกม (Game Development)
เป็นโครงงานพัฒนาซอฟต์แวร์เกมเพื่อความรู้ และ/หรือ ความเพลิดเพลิน เช่น เกมหมากรุก เกมหมากฮอส เกมการคำนวณเลข ซึ่งเกมที่พัฒนาขึ้นนี้น่าจะเน้นให้เป็นเกมที่ไม่รุนแรง เน้นการใช้สมองเพื่อฝึกคิดอย่างมีหลักการ โครงงานประเภทนี้จะมีการออกแบบลักษณะและกฎเกณฑ์การเล่น เพื่อให้น่าสนใจเก่ผู้เล่น พร้อมทั้งให้ความรู้สอดแทรกไปด้วย ผู้พัฒนาควรจะได้ทำการสำรวจและรวบรวมข้อมูลเกี่ยวกับเกมต่าง ๆ ที่มีอยู่ทั่วไปและนำมาปรับปรุงหรือพัฒนาขึ้นใหม่เพื่อให้ป็นเกมที่แปลกใหม่และน่าสนใจแก่ผู้เล่นกล่มต่าง ๆ

วิธีดำเนินการทำโครงงานคอมพิวเตอร์

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

1. การคัดเลือกหัวข้อโครงงานที่สนใจทำ

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

– จะต้องมีความรู้และทักษะพื้นฐานอย่างเพียงพอในหัวข้อเรื่องที่จะศึกษา
– สามารถจัดหาเครื่องคอมพิวเตอร์และซอฟต์แวร์ที่เกี่ยวข้องได้
– มีแหล่งความรู้เพียงพอที่จะค้นคว้าหรือขอคำปรึกษา
– มีเวลาเพียงพอ
– มีงบประมาณเพียงพอ
– มีความปลอดภัย

2. ศึกษาค้นคว้าจากเอกสารและแหล่งข้อมูล
รวมถึงการขอคำปรึกษาจากผู้ทรงคุณวุฒิช่วยจะช่วยให้นักเรียนได้แนวคิดที่ใช้ในการกำหนดของเขตของเรื่องที่จะศึกษาได้เฉพาะเจาะจงมากยิ่งขึ้น รวมทั้งความรู้เพิ่มเติมในเรื่งที่จะศึกษาจนสามารถใช้ออกแบบและวางแผนดำเนินการทำโครงงานนั้นได้อย่างเหมาะสมในการศึกษาค้นคว้าดังกล่าว นักเรียนจะต้องบันทึกสรุปสาระสำคัญไว้ด้วย
จะต้องพิจารณาดังนี้ มูลเหตุจูงใจและเป้าหมายในการทำ วัสดุอุปกรณ์ ความต้องการของผู้ใช้งานและคุณลักษณะของผลงาน (Requirement and Specification) วิธีการประเมินผล วิธีการพัฒนา ข้อสรุปของโครงงาน ความแปลกใหม่ ความคิดสร้างสรรค์ แนวทางในการปรับปรุงหรือขยายการทดลองจากงานเดิม

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

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

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

6. การนำเสนอและการแสดงผลงานของโครงงาน เป็นการนำเสนอเพื่อแสดงออกถึงผลิตผลของความคิด ความพยายามในการทำงานที่ผู้ทำโครงงานได้ทุ่มเท และเป็นวิธีที่ให้ผู้อื่นได้รับรู้และเข้าใจในโครงงานนั้น ในการเสนออาจทำได้หลายรูปแบบ เช่น ติดโปสเตอร์ การรายงานตัวในที่ประชุม การแสดงผลงานด้วยสื่อต่าง การจัดนิทรรศการ การอธิบายด้วยคำพูด
อ้างอิง//http://thepeculiarja.wordpress.com/

 
ใส่ความเห็น

Posted by บน กรกฎาคม 28, 2012 นิ้ว บทที่7

 

หลักการพัฒนาโปรแกรมด้วยภาษาโปรแกรมคอมพิวเตอร์

หลักการพัฒนาโปรแกรมด้วยภาษาโปรแกรมคอมพิวเตอร์
เครื่องคอมพิวเตอร์เป็นอุปกรณ์อิเล็กทรอนิกส์ประเภทหนึ่ง การใช้เครื่องคอมพิวเตอร์ทำงานได้นั้นจะต้องป้อนคำสั่งให้กับมันและต้องเป็นคำสั่งที่เครื่องคอมพิวเตอร์เข้าใจ การนำคำสั่งมาเรียงต่อกันให้ทำงานอย่างใดอย่างหนึ่ง เรียกว่า โปรแกรม เมื่อโปรแกรมถูกป้อนเข้าไปในเครื่องคอมพิวเตอร์แล้วมันจะทำงานทีละคำสั่ง ภาษาที่คอมพิวเตอร์เข้าใจ เรียกว่า ภาษาเครื่อง ซึ่งเป็นรหัสเลขฐานสองเมื่อมีการป้อนภาษานี้เข้าไปในเครื่องคอมพิวเตอร์ รหัสเลขฐานสองจะถูกเปลี่ยนเป็นสัญญาณทางไฟฟ้าที่คอมพิวเตอร์เข้าใจ
4.1 โปรแกรมภาษา
ในการเขียนโปรแกรมคอมพิวเตอร์ไม่ว่าจะเขียนด้วยภาษาระดับสูงหรือภาษาระดับต่ำ เราจะต้องแปลงภาษาเหล่านั้นให้เป็นรหัสภาษาเครื่องที่คอมพิวเตอร์เข้าใจเสียก่อน คอมพิวเตอร์จึงจะทำงานได้ การเขียนคำสั่งนี้ไม่ว่าจะเขียนด้วยภาษาอะไรจะเรียกว่า โปรแกรมต้นฉบับ
การเขียนโปรแกรมด้วยภาษาแอสเซมบลีจะต้องใช้ตัวแปลภาษาให้เป็นภาษาเครื่อง ตัวแปลนี้เรียกว่า แอสเซมเบอร์
ภาษาระดับสูงเป็นภาษาที่สร้างขึ้นเพื่อช่วยอำนวยความสะดวกในการเขียนโปรแกรม กล่าวคือ ลักษณะของคำสั่งจะประกอบด้วยคำต่างๆ ในภาษาอังกฤษ ซึ่งผู้อ่านสามารถเข้าใจความหมายได้ทันที ผู้เขียนโปรแกรมจึงเขียนโปรแกรมด้วยภาษาระดับสูงได้ง่ายกว่าเขียนด้วยภาษาแอสแซมบลี หรือภาษาเครื่อง ภาษาระดับสูงมีมากมายหลายภาษา อาทิเช่น ภาษาฟอร์แทรน (FORTRAN) ภาษาโคบอล ภาษาปาสคาล (Pascal) ภาษาเบสิก (BASIC) ภาษาวิชวลเบสิก (Visual Basic) ภาษาซี (C) และภาษาจาวา (Java) เป็นต้น โปรแกรมที่เขียนด้วยภาษาระดับสูงแต่ละภาษาจะต้องมีโปรแกรมที่ทำหน้าที่แปลภาษาระดับสูงให้เป็นภาษาเครื่อง เช่น โปรแกรมแปลภาษาฟอร์แทรนเป็นภาษาเครื่อง โปรแกรมแปลภาษาปาสคาลเป็นภาษาเครื่อง คำสั่งหนึ่งคำสั่งในภาษาระดับสูงจะถูกแปลเป็นภาษาเครื่องหลายคำสั่ง
4.2 ประเภทของโปรแกรม
โปรแกรมที่ใช้สั่งให้คอมพิวเตอร์ทำงานนั้น สามารถแบ่งตามประเภทการใช้งาน ได้ดังนี้
โปรแกรมระบบปฏิบัติการ
ระบบปฏิบัติการหรือโอเอส โปรแกรมประเภทนี้จะทำหน้าที่คอยดูแลระบบ รวมทั้งติดต่อกับฮาร์ดแวร์ส่วนต่าง ๆ ควบคุมการทำงานของคีย์บอร์ด จอภาพ ระบบอ่านและบันทึกข้อมูล ทำให้ผู้ใช้และผู้พัฒนาโปรแกรมต่าง ๆ ไม่ต้องเขียนโปรแกรมติดต่อกับระบบเอง
โปรแกรมเอนกประสงค์
โปรแกรมประเภทนี้จะช่วยอำนวยความสะดวกให้กับผู้ใช้คอมพิวเตอร์ โดยมีโปรแกรมที่ทำงานหลายประเภท เช่น โปรแกรมตรวจหาไวรัส โปรแกรมตรวจสอบตัวเครื่อง เป็นต้น
โปรแกรมประยุกต์
โปรแกรมประเภทนี้บางครั้งจะเรียกว่าโปรแกรมสำเร็จรูป และโปรแกรมที่พัฒนาขึ้นมาสำหรับงานเฉพาะด้าน มีการทำงานแตกต่างกัน เช่น โปรแกรมเกม โปรแกรมบัญชี เป็นต้น
4.3 ภาษาคอมพิวเตอร์สำหรับพัฒนาโปรแกรม
ในปัจจุบันมีภาษาคอมพิวเตอร์ที่ใช้สำหรับพัฒนาโปรแกรมมากมาย บางภาษาแม้จะมีมานานแล้วแต่ก็ได้รับความนิยมอยู่ เนื่องจากมีการพัฒนามอย่างยาวนาน จึงมีเครื่องมือช่วยให้เขียนโปรแกรมได้ง่ายขึ้นมากมาย ภาษาคอมพิวเตอร์ที่นิยมใช้ในการเขียนโปรแกรม ได้แก่
ภาษาเบสิก
ภาษาเบสิกเป็นภาษาคอมพิวเตอร์ระดับสูง เกิดขึ้นเมื่อปี ค.ศ. 1963 ที่มหาวิทยาลัย DartmouthCollege คำว่า Basic ย่อมาจากคำว่า Beginner’s all purpose Symbolic Instruction Code ภาษานี้เหมาะสำหรับผู้เริ่มต้นเขียนโปรแกรมเนื่องจากเป็นรูปแบบสำสั่งที่ง่าย แต่ความสามารถน้อยกว่าภาษาอื่น
ภาษาฟอร์แทรน
เป็นภาษาระดับสู.ที่เกิดขึ้นเมื่อปี ค.ศ. 1950 คำว่า FORTRAN ย่อมาจากคำว่า FORmular TRANslator ภาษานี้เป็นภาษาที่มีประสิทธิภาพสูงในการคำนวณ เหมาะสำหรับเขียนโปรแกรมประยุกต์ทางคณิตศาสตร์ที่ทำงาบนเครื่องเมนเฟรม
ภาษาโคบอล
ภาษานี้เกิดจากความร่วมมือของรัฐบาลสหรัฐกับองค์ธุรกิจ และมหาวิทยาลัยต่าง ๆ ถูกประกาศใช้อย่างเป็นทางการเมื่อปี ค.ศ. 1960 เป็นภาษาที่เขียนโปรแกรมแบบโครงสร้าง เหมาะสำหรับการพัฒนาโปรแกรมประยุกต์ทางธุรกิจ การจัดเก็บข้อมูล งานทางด้านบัญชี เป็นต้น
ภาษาปาสคาล
ภาษานี้เป็นภาษาระดับสูงที่ใช้เขียนโปรแกรมเชิงโครงสร้างได้ ตัวแปลภาษาที่ได้รับความนิยมอย่างมากคือ โปรแกรมเทอร์โบปาสคาล ของบริษัทบอร์แลนด์
ภาษาซี
ภาษานี้พัฒนาข้นในห้องปฏิบัติการเบลล์ ของบริษัท เอทีแอนด์ที ในปี ค.ศ. 1970 เพื่อใช้บนระบบปฏิบัติการยูนิกซ์ต่อมาได้มีตัวแปลภาษาออกมาหลายตัวและได้ถูกใช้อย่างแพร่หลายบนเครื่องคอมพิวเตอร์ทั่วไป ภาษานี้เป็นภาษาที่มีความยืดหยุ่นสูง สามารถทำงานบนระบบปฏิบัติการต่าง ๆ ได้เป็นอย่างดี
ภาษาซีพลัสพลัส
ภาษานี้พัฒนาต่อมาจากภาษาซี โดยเพิ่มการเขียนโปรแกรมแบบ Class เข้าไป ทำให้ภาษาซีมีความสามารถในการทำงานสูงขึ้น สามารถนำมาเขียนโปรแกรมเชิงวัตถุได้ ทำให้ภาษานี้ได้รับความนิยมอย่างสูง แต่ไม่เหมาะสมสำหรับผู้เริ่มต้นเขียนโปรแกรมเนื่องจากโครงสร้างของภาษามีความซับซ้อนมากขึ้น
วิชวลเบสิก
ภาษานี้พัฒนาขึ้นโดยบริษัทไมโครซอฟต์ ชุดคำสั่งต่าง ๆ คล้ายกับภาษาเบสิกเดิม และเป็นภาษาที่ได้รับความนิยมอย่างมากในการเขียนโปรแกรมบนระบบปฏิบัติการวินโดว์
ภาษาจาวา
ภาษานี้สามารถทำงานได้บนเครื่องคอมพิวเตอร์ทุกระบบ เนื่องจากเวลาคอมไพล์ออกมาแล้วจะได้ข้อมูลแบบ ไบต์โค้ด ปัจจุบันภาษานี้ได้ถูกพัฒนามาหลายรูปแบบ มีทั้งการเขียนโปรแกรมบนระบบเครือข่าย การเขียนโปรแกรมบนโทรศัพท์มือถือ เป็นต้น
4.4 ขั้นตอนการพัฒนาโปรแกรม
การเขียนโปรแกรมคอมพิวเตอร์ให้ทำงานตามที่เราต้องการนั้น ผู้เขียนโปรแกรมจะต้องรู้ว่าจะให้โปรแกรมทำอะไร มีข้อมูลอะไรที่ต้องให้กับโปรแกรมบ้าง และต้องการเอาต์พุตอย่างไรจากโปรแกรม รวมทั้งรูปแบบการแสดงผลด้วย ผู้ที่ทำการเขียนโปรแกรมจะต้องทราบถึงขั้นตอนวิธีการแก้ปัญหาของโปรแกรมด้วยว่าจะต้องทำอย่างไร โดยเขียนเป็นลำดับขั้นตอนขึ้นมาก่อนแล้วจดบันทึกเอาไว้ จากนั้นจึงนำลำดับขั้นตอนมาพัฒนาเป็นโปรแกรม โดยทั่วไปแล้วขั้นตอนการพัฒนาโปรแกรมแบ่งได้ดังนี้
1. การกำหนดและวิเคราะห์ปัญหา
2. เขียนผังงานและซูโดโค้ด
3. เขียนโปรแกรม
4. ทดสอบและแก้ไขโปรแกรม
5. ทำเอกสารและบำรุงรักษาโปรแกรม
การกำหนดและวิเคราะห์ปัญหา
ขั้นตอนนี้เป็นขั้นตอนแรกสุดที่นักเขียนโปรแกรมจะต้องทำ การให้คอมพิวเตอร์แก้ปัญหาต่าง ๆ ให้เรานั้น เราจะต้องมีแนวทางที่แก้ไขปัญหาที่เหมาะสมให้กับคอมพิวเตอร์ เพื่อให้การทำงานเป็นไปอย่างมีประสิทธิภาพ การกำหนดและวิเคราะห์ปัญหามีขั้นตอนย่อย ๆ ดังต่อไปนี้
1. กำหนดขอบเขตของปัญหา
2. กำหนดลักษณะของข้อมูลเข้าและออกจากระบบ
3. กำหนดวิธีการประมวลผล
การเขียนผังงานและซูโดโค้ด
หลังจากที่ได้วิเคราะห์ปัญหาแล้ว ขั้นตอนต่อไปจะต้องใช้เครื่องมือช่วยในการออกแบบโปรแกรม ซึ่งยังไม่ได้เขียนเป็นโปรแกรมจริง ๆ แต่จะช่วยให้เขียนโปรแกรมได้ง่ายขึ้น โดยเขียนเป็นลำดับขั้นตอนการทำงานของโปรแกรมที่เรียกว่า อัลกอรึทึม โดยอัลกอรึทึมนั้นอาจเขียนให้อยู่ในรูปของรหัสจำลองหรือซูโดโค้ด หรือเขียนเป็นผังงาน ก็ได้
การเขียนโปรแกรม
หลังจากที่ผ่านขั้นตอนทั้งสองแล้ว ขั้นตอนต่อไปจะต้องเขียนเป็นโปรแกรมเพื่อให้คอมพิวเตอร์สามารถประมวลผลได้ โดยเปลี่ยนขั้นตอนการทำงานให้อยู่ในรูปรหัสภาษาคอมพิวเตอร์ การเขียนโปรแกรมจะต้องเขียนตามภาษาที่คอมพิวเตอร์เข้าใจโดยอาจใช้ภาษาระดับสูง หรือระดับต่ำ ซึ่งสามารถเลือกได้หลายภาษาจะต้องทำตามหลักไวยากรณ์
การทดสอบและแก้ไขโปรแกรม
หลักจากเขียนโปรแกรมจะต้องตรวจสอบความถูกต้องของโปรแกรมที่เขียนขึ้นโดยทั่วไปแล้วข้อผิดพลาดจากการเขียนโปรแกรมจะมี 2 ประเภทคือ
1.การเขียนคำสั่งไม่ถูกต้องตามหลักการเขียนโปรแกรมภาษานั้น ๆ
2.ข้อผิดพลาดทางตรรก เป็นข้อผิดพลาดที่โปรแกรมทำงานได้ แต่ผลลัพธ์ออกมาไม่ถูกต้อง
ทำเอกสารและบำรุงโปรแกรม
ขั้นตอนนี้จะทำให้ผู้ใช้สามารถใช้งานได้อย่างมีประสิทธิภาพ และสะดวกในการตรวจสอบข้อผิดพลาด แบ่งออกเป็น 2ประเภท คือ
1. คู่มือการใช้ ซึ่งจะอธิบายการใช้โปรแกรม
2.คู่มือโปรแกรมเมอร์ ซึ่งจะอำนวยความสะดวกในการแก้ไขโปรแกรมและพัฒนาโปรแกรมในอนาคต
ส่วนการบำรุงรักษาโปรแกรม เป็นการที่ผู้เขียนโปรแกรมจะต้องคอยตรวจสอบการใช้โปรแกรมจริง เพื่อแก้ไขข้อผิดพลาดซึ่งอาจจะเกิดขึ้นภายหลัง
สรุปท้ายบท
คอมพิวเตอร์เป็นอุปกรณ์อิเล็กทรอนิกส์ การป้อนคำสั่งที่ทำให้คอมพิวเตอร์ประมวลผลตามที่เราต้องการนั้นจะต้องอยู่ในรูปแบบที่เครื่องคอมพิวเตอร์เข้าใจ นั่นคือ คำสั่งในรูปของเลขฐานสองที่เรียกกันว่าภาษาเครื่อง
คำสั่งที่นำมาเรียงต่อกันเพื่อสั่งให้คอมพิวเตอร์ทำงานอย่างใดอย่างหนึ่งนั้น เราเรียกว่าโปรแกรม ดังนั้น โปรแกรมที่เขียนขึ้นมาจาภาษาคอมพิวเตอร์จะต้อง๔กแปลงให้เป็นภาษาเครื่องก่อน การเขียนโปรแกรมคอมพิวเตอร์ให้ทำงานตามที่เราต้องการนั้น ผู้เขียนโปรแกรมจะต้องรู้ว่าจะให้โปรแกรมทำอะไร มีข้อมูลอะไรที่ต้องให้กับโปรแกรมบ้าง

อ้างอิง//http://marktk2004.blogspot.com/

 
ใส่ความเห็น

Posted by บน กรกฎาคม 28, 2012 นิ้ว บทที่7

 

ขั้นตอนการพัฒนาโปรแกรม

ขั้นตอนการพัฒนาโปรแกรมภาษา C

การพัฒนาโปรแกรมภาษา C มีขั้นตอนดังนี้
1) เขียนโปรแกรมต้นฉบับ (source program) ด้วยภาษา C
ใช้โปรแกรม Turbo C/ C++ เพื่อเขียนโปรแกรมต้นฉบับด้วยภาษา C จากนั้นบันทึกโปรแกรมพร้อมกับตั้งชื่อแฟ้มไว้ แฟ้มที่ได้จะมีนามสกุล *.c หรือ *.cpp เช่น simple.c หรือ simple.cpp เป็นต้น นอกจากนี้ยังสามารถใช้โปรแกรม Turbo C/C++ เขียนโปรแกรมภาษา C++ ได้อีกด้วย
2) แปลโปรแกรมภาษา C ไปเป็นโปรแกรมภาษาเครื่อง (object program)
ใช้คำสั่ง compile เพื่อแปลโปรแกรมภาษา C ไปเป็นโปรแกรมภาษาเครื่อง แฟ้มที่ได้จะมีนามสกุล *.obj ซึ่งในขั้นตอนนี้โปรแกรมต้นฉบับอาจเกิดความผิดพลาดทางไวยกรณ์ภาษา (syntax error) ขึ้นได้ จึงต้องย้อนกลับไปแก้ไขโปรแกรมต้นฉบับในข้อ 1. ให้ถูกต้องเสียก่อน
3) เชื่อมโยง (link) โปรแกรมภาษาเครื่องเข้ากับ library function ของภาษา C จะได้เป็น execute program โดยใช้คำสั่ง link แฟ้มที่ได้จะมีนามสกุล *.exe
4) สั่งให้ execute program แสดงผลลัพธ์ออกมา โดยใช้คำสั่ง run

ในขั้นตอนนี้ผู้เขียนโปรแกรม ควรตรวจสอบผลลัพธ์ที่ได้จากโปรแกรมว่าตรงกับความต้องการของเราหรือไม่ ถ้าผลลัพธ์ที่ได้ไม่ตรงกับความต้องการให้กลับไปแก้ไขโปรแกรมต้นฉบับในข้อ 1. เสร็จแล้วทำขั้นตอน ข้อ 2. ถึง ข้อ 4. ซ้ำอีก ทำซ้ำเช่นนี้จนกว่าจะได้ผลลัพธ์ที่ต้องการ

หมายเหตุ ในทางปฏิบัติ การ compile/ link/ run ในโปรแกรม Turbo C/C++ สามารถทำให้พร้อมกันทั้ง 3 ขั้นตอน คือใช้คำสั่ง Ctrl + F9 (กดปุ่ม Ctrl และปุ่ม F9 พร้อมกัน)
โดยสรุปเราสามารถเขียนผังงานแสดงขั้นตอนการพัฒนาโปรแกรมภาษา C ได้ดังนี้

อ้างอิง//http://e-learning.snru.ac.th/els/program1/lesson2/page2_4.html

 
ใส่ความเห็น

Posted by บน กรกฎาคม 28, 2012 นิ้ว บทที่7

 

การพัฒนาโปรแกรม

1.อธิบายขั้นตอนการพัฒนาโปรแกรม

2.อธิบายหลักการพัฒนาโปรแกรมด้วยภาษาโปรแกรมคอมพิวเตอร์

3.อธิบายขั้นตอนพัฒนาโครงงานคอมพิวเตอร์

 
ใส่ความเห็น

Posted by บน กรกฎาคม 28, 2012 นิ้ว บทที่7

 

ประยุกต์หลักการแก้ปัญหาในรูปแบบที่แตกต่างกัน

ประยุกต์หลักการแก้ปัญหาในรูปแบบที่แตกต่างกัน

27มิ.ย.

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

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

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

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

3. ดำเนินการแก้ปัญหาตามแผนที่วางไว้ เมื่อได้วางแผนแล้วก็ดำเนินการแก้ปัญหา ระหว่างการดำเนินการแก้ปัญหาอาจได้แนวทางที่ดีกว่าวิธีที่คิดไว้ ก็สามารถนำมาปรับเปลี่ยนได้

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

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

ตัวอย่าง ให้เติมเลข 1-6 ลงในวงกลมที่จัดวาง ดังรูปที่ 1 โดยตัวเลขในวงกลมจะต้องไม่ซ้ำกัน และผลรวมของตัวเลขในวงกลมที่เรียงกันแต่ละด้านมีค่าเท่ากัน

ขั้นตอนที่ 1 ทำความเข้าใจปัญหา

จากปัญหาข้างต้นพบว่า

สิ่งที่ต้องการหา คือ การใส่ตัวเลข 1-6 ลงในวงกลมที่อยู่ในตำแหน่งที่กำหนดดังรูปที่ 1 เพื่อให้ได้ผลบวกของตัวเลขสามตัวที่อยู่ในวงกลมที่เรียงในแต่ละด้านมีค่าเท่ากัน

ข้อมูลที่กำหนดให้ คือตัวเลข 1-6 และรูปแบบการเรียงกันของวงกลมที่จะบรรจุตัวเลขดังรูปที่ 1

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

ขั้นตอนที่ 2 วางแผนแก้ปัญหา

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

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

ดังนั้น สูตรในการหาผลบวกที่มีค่าน้อยที่สุด คือ
(ผลบวกของจำนวนทั้ง 6 จำนวน + ผลบวกน้อยที่สุดของจำนวนที่มีการบวกซ้ำ) / 3
และสูตรในการหาผลบวกที่มีค่ามากที่สุด คือ
(ผลบวกของจำนวนทั้ง 6 จำนวน + ผลบวกมากที่สุดของจำนวนที่มีการบวกซ้ำ) / 3
ผลบวกที่มีค่าน้อยที่สุด คือ (21+6) / 3 = 9
เพราะผลบวกของจำนวนทั้ง 6 จำนวน คือ 1+2+3+4+5+6 = 21
และผลบวกน้อยที่สุดของจำนวนที่มีการบวกซ้ำ คือ 1+2+3 = 6

ผลบวกที่มีค่ามากที่สุด คือ (21+15) / 3 = 12
เพราะผลบวกของจำนวนทั้ง 6 จำนวน คือ 1+2+3+4+5+6 = 21
และผลบวกมากที่สุดของจำนวนที่มีการบวกซ้ำ คือ 6+5+4 = 15

ดังนั้นผลบวกด้านแต่ละด้านของรูปสามเหลี่ยม จะอยู่ในช่วง 9 ถึง 12

ขั้นตอนที่ 3 ดำเนินการแก้ปัญหาตามแผนที่วางไว้

ขั้นตอนต่อไป คือการพิจารณาวางตัวเลขทั้งหกลงในวงกลมเพื่อให้ได้ผลบวกเป็น 9, 10, 11 และ 12การวางตัวเลขเพื่อให้ได้ผลบวกดังกล่าวอาจเป็นดังต่อไปนี้
อ้างอิง//http://thepeculiarja.wordpress.com/

 
ใส่ความเห็น

Posted by บน กรกฎาคม 28, 2012 นิ้ว บทที่6

 

ใช้ภาษาโปรแกรมคอมพิวเตอร์และเครื่องมือต่างๆในการแก้ปัญหา

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

ภาษาคอมพิวเตอร์สามารถแบ่งออกเป็นสองกลุ่มคือ ภาษาระดับสูง (high level) และภาษาระดับต่ำ (low level) ภาษาระดับสูงถูกออกแบบมาเพื่อให้ใช้งานง่ายและสะดวกสบายมากกว่าภาษาระดับต่ำ โปรแกรมที่เขียนถูกต้องตามกฎเกณฑ์และไวยากรณ์ของภาษาจะถูกแปล (compile) ไปเป็นภาษาระดับต่ำเพื่อให้คอมพิวเตอร์สามารถนำไปใช้งานหรือปฏิบัติตามคำสั่งได้ต่อไป ซอฟต์แวร์สมัยใหม่ส่วนมากเขียนด้วยภาษาระดับสูง แปลไปเป็นออบเจกต์โค้ด (object code) แล้วเปลี่ยนให้เป็นชุดคำสั่งในภาษาเครื่อง

ภาษาคอมพิวเตอร์อาจแบ่งกลุ่มได้เป็นอีกสองประเภทคือ ภาษาที่มนุษย์อ่านออก (human-readable) และภาษาที่มนุษย์อ่านไม่ออก (non human-readable) ภาษาที่มนุษย์อ่านออกถูกออกแบบมาเพื่อให้มนุษย์สามารถเข้าใจและสื่อสารได้โดยตรงกับคอมพิวเตอร์ ส่วนใหญ่เป็นภาษาอังกฤษ) ส่วนภาษาที่มนุษย์อ่านไม่ออกจะมีโค้ดบางส่วนที่ไม่อาจอ่านเข้าใจได้

อ้างอิง//http://th.wikipedia.org/wiki

 
ใส่ความเห็น

Posted by บน กรกฎาคม 28, 2012 นิ้ว บทที่6

 

วิเคราะห์และกำหนดรายละเอียดของปัญหา

การวิเคราะห์และกำหนดรายละเอียดของปัญหา (State the problem)

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

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

อ้างอิง//http://www.samsenwit.ac.th/

 
ใส่ความเห็น

Posted by บน กรกฎาคม 28, 2012 นิ้ว บทที่6

 

การแก้ปัญหาด้วยคอมพิวเตอร์

ขั้นตอนการแก้ปัญหาด้วยคอมพิวเตอร์

1. การนิยามปัญหา (Problem Definition)
ในขั้นแรกของการแก้ปัญหา สิ่งสำคัญที่สุด คือเราต้องทำความเข้าใจให้ได้ว่าปัญหาคืออะไร ประเด็นหลักอยู่ที่ใด และต้องการให้ได้ผลลัพธ์อะไร

2. การวิเคราะห์ปัญหา (Problem analysis)
หลังจากที่เข้าใจปัญหาได้ดีแล้ว ขั้นต่อไป คือ การวิเคราะห์ปัญหา และพัฒนาสูตรเชิงคณิตศาสตร์ที่แทนวิธีการแก้ปัญหา วิเคราะห์ปัญหา ให้พิจารณาที่ผลลัพธ์ของปัญหาก่อน (output) ว่าคืออะไร และมีข้อมูลนำเข้า (input) อะไรบ้างที่จะทำให้ได้ผลลัพธ์เช่นนั้น จากนั้นจึงคิดสูตรเป็นสมการ หรือวิธีการที่จะแก้ปัญหานั้น เราต้องวิเคราะห์ให้ได้ว่า ข้อมูลอะไรที่นำเข้าจากผู้ใช้ ข้อมูลอะไรเกิดขึ้นจากการคำนวณ หรือข้อมูลใดเป็นค่าคงที่
ตัวอย่างเช่น โจทย์ต้องการให้เขียนโปรแกรมคำนวณหาจำนวนเงินที่ต้องการจ่ายให้พนักงานรายวัน แต่ละคน โดยมีค่าแรงเป็น 40 บาทต่อชั่วโมง ถ้าทำงานเกินจะมีค่าล่วงเวลาคิดเป็นอัตรา 7 บาทต่อชั่วโมง
จากโจทย์ ผลลัพธ์ที่ต้องการ คือ จำนวนที่ต้องจ่ายให้แก่พนักงาน ข้อมูลนำเข้า คือ จำนวนชั่วโมงที่ทำงาน จากนั้นนำมาเขียนเป็นสูตร เชิงคณิตศาสตร์ดังนี้

ค่าแรงของพนักงาน = จำนวนชั่วโมงที่ทำงาน *40 “ถ้าจำนวนชั่วโมงน้อยกว่าหรือเท่ากับ 8”
ค่าล่วงเวลา = (จำนวนชั่วโมงที่ทำงาน -8)*7 “ถ้าจำนวนชั่วโมงมากกว่า 8 ชั่วโมง”
รวมจำนวนเงินค่าแรงของพนักงานแต่ละคน = ค่าแรงของพนักงาน + ค่าล่วงเวลา

3. การออกแบบอัลกอริธึม (Algorithm design) หรือการออกแบบขั้นตอนวิธีการแก้ปัญหา
ในขั้นนี้เป็นการคิดหาขั้นตอนการแก้ปัญหาทีละขั้น เราต้องคิดว่าจะทำอย่างไรจึงจะแก้ปัญหาได้ และสามารถนำมาแปลงเป็นคำสั่งของภาษาโปรแกรมได้โดยง่าย ซึ่งเรียกขั้นตอนการแก้ปัญหาทีละขั้นนี้ว่าอัลกอริธึม (algorithm)
ตัวอย่างจากโจทย์การคำนวณหาจำนวนเงินที่ต้องการจ่ายให้แก่พนักงาน เขียนอธิบายแต่ละขั้นไดดังนี้
ขั้นที่ 1 รับข้อมูลชั่วโมงทำงานของพนักงานจากแป้นพิมพ์
ขั้นที่ 2 เปรียบเทียบจำนวนชั่วโมงทำงานกับ 8
ถ้าจำนวนชั่วโมงทำงาน มากกว่า 8 แล้ว ให้คำนวณตามสูตรต่อไปนี้
ค่าแรงของพนักงาน = 8*40
ค่าล่วงเวลา = (จำนวนชั่วโมงที่ทำงาน – 8 ) *7
ถ้าจำนวนชั่วโมงทำงาน น้อยกว่าหรือเท่ากับ 8 แล้วให้คำนวณ
ค่าแรงของพนักงาน = จำนวนชั่วโมงที่ทำงาน * 40
ค่าล่วงเวลา = 0
ขั้นที่ 3 คำนวณจำนวนเงินที่ต้องจ่ายให้แก่พนักงาน
รวมจำนวนเงินค่าแรงของพนักงานแต่ละคน = ค่าแรงของพนักงาน + ค่าล่วงเวลา
ขั้นที่ 4 แสดงผลลัพธ์ให้ผู้ใช้ทราบ
ขั้นที่ 5 จบการทำงาน

แต่ละขั้นตอนต้องมีความชัดเจนว่าจะทำอะไร แล้วได้ผลลัพธ์อะไรในแต่ละขั้น

4. การพัฒนาโปรแกรม (Program development)
ในขั้นตอนนี้นักเขียนโปรแกรมต้องนำเอาคำอธิบายของขั้นตอนการแก้ปัญหาแต่ละขั้นจากอัลกอริธึมมาแปลงเป็นคำสั่งของภาษาโปรแกรมคอมพิวเตอร์ภาษาใดภาษาหนึ่ง เช่น เขียนด้วยภาษา c++ เป็นต้น การพัฒนาโปรแกรมจะทำได้ง่าย ถ้าอัลกอริธึมถูกต้อง และมีความชัดเจน

5. การทดสอบความถูกต้อง (Program Testing)
หลังจากที่เราเขียนคำสั่งของภาษาโปแกรมคอมพิวเตอร์แล้ว ขั้นต่อไป คือ การทดสอบ (Testing) เพื่อหาข้อผิดพลาดจากการเขียนคำสั่งผิดไวยกรณ์ของภาษา หรือข้อผิดพลาดจากการคำนวณการทดสอบควรทดสอบทุกกรณีที่คาดว่าจะเกิดขึ้น ตัวอย่างเช่น การคิดจำนวนเงินที่ต้องจ่ายให้แก่พนักงานเราต้องทดสอบด้วยการป้อนจำนวนชั่วโมงทำงานประมาร 3 ค่า คือ ค่าที่มากกว่า 8 หรือค่าที่น้อยกว่า 8 หรือค่าที่เท่ากับ 8 เพื่อทดสอบว่าถูกต้องทุกกรณีตามสูตรที่ออกแบบไว้หรือไม่

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

7. การบำรุงรักษา และการแก้ไข (Maintenance and modification)
การพัฒนาโปรแกรมขึ้นมาใหม่ถือว่าเป็นเรื่องที่ง่ายการการบำรุงรักษา และการแก้ไข ต้นทุนการบำรุงรักษาโปรแกรมจะเพิ่มมากขึ้นหากการออกแบบโปรแกรมทำ
อ้างอิง//https://sites.google.com/

 
ใส่ความเห็น

Posted by บน กรกฎาคม 28, 2012 นิ้ว บทที่6

 

หลักการแก้ปัญหาด้วยคอมพิวเตอร์

1.อธิบายการแก้ปัญหาด้วยคอมพิวเตอร์
2.ใช้ภาษาโปรแกรมคอมพิวเตอร์และเครื่องมือต่างๆในการแก้ปัญหา
3.ประยุกต์หลักการแก้ปัญหาในรูปแบบที่แตกต่างกัน
4.วิเคราะห์และกำหนดรายละเอียดของปัญหา

 
ใส่ความเห็น

Posted by บน กรกฎาคม 28, 2012 นิ้ว บทที่6