1 / 35

การจำลองความคิด

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

meira
Download Presentation

การจำลองความคิด

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. การจำลองความคิด

  2. ขั้นตอนการพัฒนาซอฟต์แวร์ขั้นตอนการพัฒนาซอฟต์แวร์ • ปัญหาด้านการเรียน การงาน การเงิน และอื่นๆ • วิธีแก้ปัญหาขึ้นอยู่กับความรู้ ความสามารถ และประสบการณ์ของบุคคล • สรุปวิธีการเหล่านั้นเป็นทฤษฎีซึ่งมีรูปแบบที่แน่นอน • ตัวอย่างการแก้ปัญหา • เกมทายใจ • ใช้วิธีลองผิดลองถูกในการทายครั้งแรกๆ แล้วยังมีการใช้ • เหตุผลประกอบการแก้ปัญหาซึ่งเราเรียกวิธีการดังกล่าวว่า "วิธีขจัด" (method of elimination)

  3. ขั้นตอนการพัฒนาซอฟต์แวร์ขั้นตอนการพัฒนาซอฟต์แวร์ • การลองผิดลองถูก การใช้เหตุผล การใช้วิธีขจัด • มนุษย์มีกระบวนการในการแก้ปัญหาประกอบด้วย 4 ขั้นตอน

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

  5. 2. การเลือกเครื่องมือและออกแบบขั้นตอนวิธี (Tools and Algorithm development) • เป็นขั้นตอนของการวางแผนในการแก้ปัญหา • คาดคะเนวิธีการที่จะใช้ในการแก้ปัญหา • เลือกเครื่องมือที่ใช้ในการแก้ปัญหา • ยุทธวิธีที่ใช้ในการแก้ปัญหาหรือที่เราเรียกว่า ขั้นตอนวิธี(algorithm) • ผังงาน(flowchart) รหัสลำลอง (pseudo code) • เครื่องมือช่วยออกแบบ สามารถหาข้อผิพลาดของวิธีการที่ใช้ได้ง่ายและแก้ไขได้อย่างรวด

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

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

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

  9. ข้อความหรือคำบรรยาย • เป็นการเขียนเค้าโครงด้วยการบรรยายเป็นภาษาที่มนุษย์ใช้สื่อสารกันเพื่อให้ทราบถึงขั้นตอนการทำงานของโปรแกรมแต่ละตอน • อาจใช้คำสั่งของภาษาที่ใช้เขียนโปรแกรม • เรียกอีกอย่างว่า รหัสเทียม (pseudo code)

  10. ข้อความหรือคำบรรยาย • ตัวอย่างคำบรรยายแสดงขั้นตอนการเปลี่ยนยางรถเมื่อยางแตกขณะขับรถ • 1. จอดรถหลบข้างทาง • 2. นำแม่แรงออกยกรถ • 3. คลายสกรูยึดล้อ • 4. ถอดล้อออก นำยางอะไหล่มาเปลี่ยน • 5. ขันสกรูเข้า เก็บยางที่ชำรุดเพื่อไปซ่อม • 6. คลายแม่แรง เก็บแม่แรง

  11. หลักการทั่วไปในการเขียนรหัสเทียมหลักการทั่วไปในการเขียนรหัสเทียม • 1. สัญลักษณ์ที่ใช้ในการดำเนินการทางคณิตศาสตร์ต่างๆ จะถูกใช้งานตามปกติ • 2. ชื่อข้อมูลแทนจำนวนที่จะถูกดำเนินการ • 3. การกำหนดค่าให้กับชื่อข้อมูล เช่น pi←3.14 หรือ pi:=3.14 หรือ pi=3.14 • คำสงวนบางคำที่ใช้ในภาษาระดับสูงทั่วไปอาจถูกนำมาใช้ • การเพิ่มหรือลดระยะย่อหน้าอย่างเหมาะสม

  12. สัญลักษณ์หรือแผนภาพ • เครื่องหมายรูปแบบต่างๆ กำหนดโดย สถาบันมาตรฐานแห่งชาติอเมริกัน (The American National Standard Institute, ANSI) • การเขียนผังงาน(Flowchart) สามารถแบ่งออกได้เป็น 2 แบบ • ผังงานระบบ(System Flowchart) • ผังงานโปรแกรม(Program Flowchart)

  13. ผังงานระบบ(System Flowchart) • แสดงขั้นตอนต่างๆ ในการทำงานของระบบ • อธิบายลำดับการทำงานของส่วนต่างๆ ในระบบ

  14. ผังงานโปรแกรม(Program Flowchart) • ใช้ในการแสดงการทำงานของโปรแกรมโดยละเอียดในแต่ละขั้นตอน • จำเป็นสำหรับผู้เขียนโปรแกรม • เป็นแนวทางในการเขียนโปรแกรม • ประโยชน์ของผังงาน • ใช้แทนการจำลองความคิด • ใช้เป็นสื่อกลางในการติดต่อประสานความคิดระหว่างผู้ที่เกี่ยวข้อง เช่น นักวิเคราะห์ระบบ(systems analyst) นักเขียนโปรแกรม(programmer) • ช่วยในการทดสอบหรือทบทวนขั้นตอนการทำงาน เพื่อหาข้อผิดพลาด

  15. สัญลักษณ์และความหมายของสัญลักษณ์สัญลักษณ์และความหมายของสัญลักษณ์

  16. สัญลักษณ์และความหมายของสัญลักษณ์สัญลักษณ์และความหมายของสัญลักษณ์

  17. สัญลักษณ์และความหมายของสัญลักษณ์สัญลักษณ์และความหมายของสัญลักษณ์

  18. สัญลักษณ์และความหมายของสัญลักษณ์สัญลักษณ์และความหมายของสัญลักษณ์

  19. ตัวอย่าง การวางแผนไปโรงเรียน • การจำลองความคิดด้วยรหัสเทียม การจำลองความคิดเป็นสัญลักษณ์ • เริ่มต้น ตื่นนอน อาบน้ำแต่งตัว ไปโรงเรียน • จบ

  20. ตัวอย่าง การคำนวณพื้นที่รูปวงกลม • การจำลองความคิดด้วยรหัสเทียม การจำลองความคิดเป็นสัญลักษณ์ • เริ่มต้น รับค่า radius คำนวณพื้นที่ด้วยสูตร area= 22/7*radius*radius แสดงค่า area • จบ

  21. ตัวอย่าง การจำลองความคิดในการหาผลบวก 1,2,3,4,5,… จนถึง 20 • การจำลองความคิดด้วยรหัสเทียม • เริ่มต้น 1. กำหนดให้ N มีค่าเริ่มต้นเป็น 0 2. กำหนดให้ K มีค่าเริ่มต้นเป็น 1 3. นำค่า K มารวมกับค่า N เดิม ได้ผลลัพธ์เท่าไรเก็บไว้ที่ N 4. นำค่า 1 มารวมกับค่า K เดิม ได้ผลลัพธ์เท่าไรเก็บไว้ที่ K 5. เปรียบเทียบค่า K กับ 20 ถ้า K น้อยกว่าหรือเท่ากับ 20 ให้วนกลับไปทำในขั้น 3 และทำคำสั่งถัดลงมาตามลำดับ แต่ถ้า K มากกว่า 20 ให้แสดงคำตอบ • จบ

  22. การเขียนโปรแกรม • การเขียนโปรแกรม (programming) หมายถึง กระบวนการใช้ภาษาคอมพิวเตอร์เพื่อกำหนดโครงสร้างของข้อมูล และกำหนดขั้นตอนวิธีเพื่อใช้แก้ปัญหาตามที่ได้ออกแบบไว้โดยอาศัยหลักเกณฑ์การเขียนโปรแกรมคอมพิวเตอร์ของแต่ละภาษา • ผู้พัฒนาโปรแกรมจะต้องเลือกภาษา • ทุกภาษาจะต้องมีโครงสร้างควบคุมหลักทั้ง 3 แบบได้แก่ โครงสร้างแบบลำดับ(sequential structure) โครงสร้างแบบมีทางเลือก (selection structure) และโครงสร้างแบบทำซ้ำ (repetitionstructure)

  23. โครงสร้างแบบลำดับ • แสดงขั้นตอนการทำงานที่เป็นไปตามลำดับก่อนหลัง • แต่ละขั้นตอนจะถูกประมวลผลเพียงครั้งเดียว

  24. โครงสร้างแบบมีทางเลือกโครงสร้างแบบมีทางเลือก • โครงสร้างที่มีเงื่อนไข ขั้นตอนการทำงานบางขั้นตอนต้องมีการตัดสินใจ • มีบางขั้นตอนที่ไม่ได้รับการประมวลผล • อาจมี 2 ทางหรือมากกว่า • มีทางเลือกเพียง 2 ทาง เรียกว่า โครงสร้างแบบ if…then…else… • มีทางเลือกมากกว่า 2 ทาง เรียกชื่อว่าโครงสร้างแบบ case

  25. โครงสร้างแบบ if…then…else…

  26. โครงสร้างแบบ case

  27. ตัวอย่าง แสดงผังงานที่จำลองขั้นตอนวิธีการเขียนและส่งจดหมายให้อยู่ในรูปของสัญลักษณ์

  28. ตัวอย่าง • แสดงผังงานที่จำลองขั้นตอนวิธีของเกมหยิบลูกบอลให้อยู่ในรูปของสัญลักษณ์ โดยมีเงื่อนไขว่ามีลูกบอลซึ่ง มี 5 สี • กรณีหยิบได้สีแดง จะได้ 10 คะแนน • กรณีหยิบได้สีฟ้า จะได้ 8 คะแนน • กรณีหยิบได้สีเขียว จะได้ 6 คะแนน • กรณีหยิบได้สีเหลือง จะได้ 4 คะแนน • กรณีหยิบได้สีส้ม จะได้ 2 คะแนน

  29. ตัวอย่าง

  30. โครงสร้างแบบทำซ้ำ • คือโครงสร้างที่ขั้นตอนการทำงานบางขั้นตอนได้รับการประมวลผลมากกว่า 1 ครั้ง • ขึ้นอยู่กับเงื่อนไข • ต้องมีการตัดสินใจในการทำงานซ้ำ • ลักษณะการทำงานของโครงสร้างแบบนี้มี 2 ลักษณะ

  31. โครงสร้างแบบทำซ้ำ • แบบที่มีการตรวจสอบเงื่อนไขในการทำซ้ำทุกครั้งก่อนดำเนินการกิจกรรม • ถ้าเงื่อนไขเป็นจริงจะทำงานซ้ำไปเรื่อยๆ และหยุดเมื่อเงื่อนไขเป็นเท็จ • แบ่งได้เป็น 2 แบบย่อย ได้แก่ การทำซ้ำแบบ for และแบบ while • ทั้งสองแบบเหมือนกัน แบบ for นั้นมักใช้กรณีที่ต้องการกำหนดจำนวนรอบการทำงานที่ชัดเจน

  32. โครงสร้างแบบทำซ้ำ • แบบที่มีการดำเนินการกิจกรรมใดๆ ก่อนจำนวนหนึ่งรอบ แล้วจึงค่อยตรวจสอบเงื่อนไขในการทำซ้ำ • ถ้าเงื่อนไขเป็นจริงจะทำงานซ้ำไปเรื่อยๆ และหยุดเมื่อเงื่อนไขเป็นเท็จ • เรียกการทำงานแบบนี้ว่า การทำซ้ำแบบ do…while

  33. โครงสร้างแบบทำซ้ำ

  34. โครงสร้างแบบทำซ้ำ

  35. ตัวอย่างแสดงผังงานที่จำลองขั้นตอนวิธีการหาค่าเฉลี่ยของจำนวนเต็ม 5 จำนวน ให้อยู่ในรูปของสัญลักษณ์

More Related