บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค...

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

Upload: others

Post on 12-Feb-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

บทท 4

แนวคดเชงค ำนวณและกระบวนกำรแกปญหำ

จดประสงคกำรเรยนร 1.อธบำยกำรแกปญหำโดยใชกระบวนกำรคดเชงค ำนวณได 2. ออกแบบขนตอนวธเพอแกปญหำโดยใชแนวคดเชงค ำนวณได 3.น ำกระบวนกำรแกปญหำดวยคอมพวเตอรไปประยกตใชได

Page 2: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

การคดเชงค านวณ คออะไร

การคดเชงค านวณ (computational thinking) คอ กระบวนกำรแกปญหำในหลำกหลำยลกษณเชน กำรจดล ำดบเชงตรรกศำสตร กำรวเครำะหขอมล และกำรสรำงสรรควธแกปญหำไปทละขนทละตอน(หรอทเรยกวำอลกอรทม) รวมทงกำรยอยปญหำทชวยใหรบมอกบปญหำทซบซอนหรอมลกษณะเปนค ำถำมปลำยเปดได วธคดเชงค ำนวณมควำมจ ำเปนในกำรพฒนำแอพพลเคชนตำงๆ ส ำหรบคอมพวเตอร แตในขณะเดยวกน วธคดนยงชวยแกปญหำในวชำตำงๆ ไดดวย ดงนนเอง เมอมกำรบรณำกำรวธคดเชงค ำนวณผำนหลกสตรในหลำกหลำยแขนงวชำ นกเรยนจะเหนควำมสมพนธระหวำงแตละวชำ รวมทงสำมำรถน ำวธคดทเปนประโยชนน ไปใชแกปญหำในชวตจรงไดในระยะยำว แบงออกเปน 4 รปแบบ ดงน

รปภาพท 1 รปภาพ 4 เสาหลกของการคดเชงค านวณ

Page 3: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

สรปค าจ ากดความของการคดเชงค านวณ

o ไมไดจ ำกดอยเพยงกำรคดใหเหมอนคอมพวเตอร o ไมไดจ ำกดอยเพยงกำรคดในศำสตรของนกวทยำศำสตรคอมพวเตอร o แตเปนกระบวนกำรคดแกปญหำของมนษย เพอสงใหคอมพวเตอรท ำงำนและชวย

แกปญหำตำมทเรำตองกำรไดอยำงมประสทธภำพ o วธคดเชงค ำนวณ ชวยท ำใหปญหำทซบซอนเขำใจไดงำยขน เปนทกษะทเปน

ประโยชนอยำงยงตอทกๆ สำขำวชำ และทกเรองในชวตประจ ำวน

4 เสาหลก ของการคดเชงค านวณ

การแยกสวนประกอบและการยอยปญหา (Decomposition) หมำยถง กำรยอยปญหำหรอระบบทซบซอนออกเปนสวนเลกๆ เพอใหงำยตอกำรจดกำรและแกปญหำ เชน หำกตองกำรเขำใจวำระบบของจกรยำนท ำงำนยงไง ท ำไดโดยกำรแยกจกรยำนออกเปนสวนๆ แลวสงเกตและทดสอบกำรท ำงำนของแตละองคประกอบ จะเขำใจไดงำยกวำวเครำะหจำกระบบใหญทซบซอน ท ำได 2 รแบบ ดงน

➢ กำรแยกองคประกอบ ➢ กำรแบงขนตอน

การแยกองคประกอบ เชน กำรออกแบบบบำน ดวำบำนจะมหองอะไรบำง และแยกออกแบบหองตำงๆ สำมำรถถออกแบบแตละหองไดอยำงอสระตอกนออกแบบพรอมกนได

รปภาพ การแยกองคประกอบ

Page 4: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

การแบงขนตอน เชน การสรางบาน แบงออกเปนหลายขนตอน ( ออกแบบบาน ลงเสาเขม เดน

ทอน า เดนสายไฟ ทาส ตกแตงภายใน ) ท างานตามล าดบ โดยในแตละขนตอน จะใชวธการใดกได

ตวอยาง กำรแยกองคประกอบ

จกรยำนประกอบดวย ลอ แฮนด โครงจกยำน ระบบขบเคลอน และอนๆ ถำมองในลำยละเอยดของลอจกรยำน จะเหนวำประกอบดวย ยำงลอ วงลอ และซลวด หรอถำพจำรณำชดขบเคลอนกจะพบวำประกอบดวยเฟอง โซ และบนได เมอน ำขอมลดงกลำวมำเขยนเปนแผนภำพจะไดรปดงรปน

ก ำ ร แ บ ง

รปภาพ การแบงขนตอน

องคประกอบยอยของจกรยำน

Page 5: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

สวนประกอบของวตถนน สำมำรถพจำรณำใหละเอยดยอยลงไปไดอกหลำยระดบ แตไมควรแยกยอยรำยละเอยดใหมำกเกนควำมจ ำเปน ทงนใหขนอยกบบรบททสนใจ กำรแยกสวนประกอบอำจเปนขนตอนแรกของกำรพฒนำนวตกรรม เนองจำกท ำใหเหนหนำทกำรท ำงำนของแตละสวนประกอบยอยอยำงชดเจน เมอพจำรณำสวนประกอบยอยตำงๆ เปลำนนอยำงเปนอสระตอกนแลว สำมำรถน ำไปประยกตใชในบรบทอนได เชน จำกกำรแยกสวนจกรยำน นกเรยนอำจแยกระบบขบเคลอนไปใชในกำรปนไฟเพอผลตกระแสไฟฟำได กำรแยกสวนประกอบสำมำรถ

➢ ผสมระหวำงกำรแยกองคประกอบและกำรแบงขนตอนกได ➢ แตละองคประกอบอำจมองคประกอบยอยได ➢ แตละขนตอนอำจมขนตอนยอยได

ตวอยำง ประโยชนของการแยกสวนประกอบและการยอยปญหา

➢ ท ำใหมองเหนปญหำไดครบทกสวน (ครบทกองคประกอบ/ขนตอน) ➢ ท ำใหแกปญหำไดอยำงเปนระบบ ➢ ท ำใหแกปญหำแตละสวนไดอยำงอสระตอกน ➢ ใชแบงหนำท/ควำมรบผดชอบและเวลำทใชในกำรแกปญหำแยกกนได

Page 6: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

ตวอยำง กำรซอคอมพวเตอรแบบประกอบเอง - สำมำรถเลอกควำมสำมำรถของแตละองคประกอบแยกกนได - ท ำใหเหนคำใชจำยทงหมดทจะเกดขน

ตวอยาง การท ารายงานกลม แบงไดหลายขนตอน อาจก าหนดเวลาและความรบผดชอบของสมาชกในกลมได

การหารปแบบ (pattern recognition) การหารปแบบเปนทกษะการหาความสมพนธทเกยวของ แนวโนม และลกษณะ ทวไปของสงตาง ๆ โดยทวไปแลวนกเรยนจะเรมพจารณาปญหาหรอสงทสนใจ จากนนอาจใชทกษะการแยกสวนประกอบท าใหไดองคประกอบภายในอน ๆ แลวจง ใชทกษะการหารปแบบเพอสรางความเขาใจระหวางองคประกอบเหลานน กำรพจำรณำรปแบบของปญหำหรอวธกำรแกปญหำ (pattern recognition) เปนกำรพจำรณำ

รปแบบ แนวโนม และลกษณะทวไปของขอมล โดยพจำรณำวำเคยพบปญหำลกษณะนมำกอนหรอไม หำกมรปแบบของปญหำทคลำยกนสำมำรถน ำวธกำรแกปญหำนนมำประยกตใช และพจำรณำรปแบบปญหำยอยซงอยภำยในปญหำเดยวกนวำมสวนใดทเหมอนกน เพอใชวธกำรแกปญหำเดยวกนได ท ำใหจดกำรกบปญหำไดงำยขน และกำรท ำงำนมประสทธภำพเพมขน

ประโยชนของการหารปแบบ

• ชวยใหท ำควำมเขำใจสงของหรอปญหำไดงำยขน • เมอพบวำปญหำมรแบบเดยวกนกบทเคยพบสำมำรถใชวธเดยวกนแกปญหำได

Page 7: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

ตวอยาง เครองหมายการคาของจนและประเทศญปน

รปแบบทพบเชน เครองหมายการคาของสนคาจนเปนรปสตวของญปนเปนตวอกษร

Page 8: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

ตวอยาง • ดชนรถตดของกรงเทพมหานครและปรมณฑลเกบเปนเวลา 3 สปดาห

(0.0 คอรถไมตดเลย, 10.0 คอรถตดมากทสด)

อาทตย จนทร องคาร พธ พฤหสบด ศกร เสาร 5.0 6.9 5.1 6.6 6.4 6.9 6.2 5.4 6.5 6.3 6.3 6.5 7.0 5.9 4.8 6.0 6.2 6.6 6.5 7.2 6.2

รปแบบทพบ เชน วนศกรมดชนรถตดมากทสด วนอาทตยมดชนรถตดนอยทสด

ปญหายอยทมรปแบบซ าเดม • บางปญหาสามารถแบงเปนปญหายอยทมรปแบบเดมได • สามารถใชวธการเดมในการแกปญหายอยได

ตวอยาง - การลางจาน 4 ใบ - เมอลางจาน 1 ใบ จะเหนวาปญหากลายเปน “การลางจาน 3ใบ” ซงมรปแบบเดม - “การลางจาน 3ใบ” จงเปนปญหายอยของ “การลางจาน 4 ใบ” ซงใชวธเดม ในการแกปญหาได

คอ “ลางจานใบบนสดเพมอก 1 ใบ”

อกตวอยำง - การขบรถจากเชยงใหมไปยะลา อาจแกปญหาโดยการ ขบรถจากเชยงใหมไปล าพน - เกดปญหาใหมคอ “การขบรถจากล าพนไปยะลา ” ซงเปนปญหายอย สามารถแกปญหายอยดวยวธการเดมได คอ “ ขบรถไปยงจงหวดทอยตดกนทางใต”

Page 9: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

การคดเชงนามธรรม ( Abstraction ) คอกำรมงควำมคดไปทขอมลส ำคญ และคดกรองสวนทไมเกยวของออกไป เพอใหจดจอเฉพำะสงทเรำตองกำรจะท ำ เชน แมวำแมวแตละตวจะมลกษณะเหมอนกน แตมนกมลกษณะเฉพำะตวทตำงกน เชน มตำสเขยว ขนสด ำ ชอบกนปลำท ควำมคดดำนนำมธรรมจะคดกรองลกษณะทไมไดรวมกนกบแมวตวอนๆ เหลำน ออกไป เพรำะรำยละเอยดทไมเกยวของเหลำน ไมไดชวยใหเรำอธบำยลกษณะพนฐำนของแมวในกำรวำดภำพมนออกมำได กระบวนกำรคดกรองสงทไมเกยวของออกไป และมงทรปแบบซงชวยใหเรำแกปญหำไดเรยกวำแบบจ ำลอง(model) เมอเรำมควำมคดดำนนำมธรรม มนจะชวยใหเรำรวำไมจ ำเปนทแมวทกตวตองหำงยำวและมขนสน หรอท ำใหเรำมโมเดลควำมคดทชดเจนขนนนเอง

ตวอยาง แบบจ าลองทนงในหองเรยน

- บอกลกษณะการจดโตะละทนงของนกเรยน - ใชตอบค าถามวามนกเรยนกคน นงทใกบางถาจมโบอยากคยกบนก ตองเดนไปทางใด - ไมสามารถบอกไดวาประตหองอยทใด ในหองมอปกรณอะไรบาง

กระดาน

ตน เจมส นก ฝน

จมโบ พลอย ฟา ดน

Page 10: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

ตวอยาง แบบจ าลองการไหลเวยนเลอดในรางกาย • ใชตอบค ำถำมวำเลอดไหลในทศทำงใด สวนใดเปนเลอดด/เสย • ไมสำมำรถบอกไดวำ รำงกำยประกอบไปดวยอวยวะใดบำง ขนำดของหวใจและปอดเปนอยำงไร

ตวอยาง แบบจ าลองการท างานของโรงไฟฟานวเคลยร ▪ ใชตอบค าถามวาม มการใชน าในกระบวนการอยางไร น าสวนใดรอน/เยน ▪ ไมสามารถบอกไดวาโรงไฟฟามขนาดเทาใด

Page 11: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

ขนตอนวธการ (Algorithm) คอ กำรพฒนำแนวทำงแกปญหำอยำงเปนขนเปนตอน หรอสรำงหลกเกณฑขนมำเพอด ำเนนตำมทละขนตอนในกำรแกไขปญหำ เชน เมอเรำตองกำรสงคอมพวเตอรใหท ำงำนบำงอยำง เรำตองเขยนโปรแกรมค ำสงเพอใหมนท ำงำนไปตำมขนตอน กำรวำงแผนเพอใหคอมพวเตอรท ำงำนตอบสนองควำมตองกำรของเรำนเอง ทเรยกวำวธคดแบบอลกอรทม คอมพวเตอรจะท ำงำนไดดเพยงใด ขนอยกบชดค ำสงอลกอรทมทเรำสงใหมนท ำงำนนนเอง กำรออกแบบอลกอรทมยงเปนประโยชนตอกำรค ำนวณ กำรประมวลผลขอมลและกำรวำงระบบอตโนมตตำงๆ

ลกษณะของขนตอนวธทด

• มความชดเจน ไมก ากวม สามารถปฏบตตามได • มขนตอนการเรมตน และขนตอนการสนสดกระบวนการ • มหนาทชดเจนวาจะแกปญหาใด

การอธบายขนตอนวธการท าไดหลายรปแบบ

1. ตงกระทะบนเตำแกส 2 .เปดเตำแกส 3.ใสน ำมนลงในกระทะ 4. รอใหน ำมนรอน 5.ตอกไขลงในกระทะ 6. รอใหไขสก 7.ตกไขขนมำจำกกระทะ

8.ปดเตำแกส

รหสล าลอง

Page 12: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

ดคะแนนสอบ เรมตน ดคะแนนสอบ คะแนนนอยกวำ 50 ไมใช คะแนนใชไหม ใช ขอสอบแกตว สนสด

เปรยบเทยบจ านวน a = input (“ใสคา a”) b = input (“ใสคา b”) if a>b; print (“a มคามากกวา b”) if a<b; print (“ b มคานอยกวา a”) if = = b; print (“ a มคาเทากบ b”)

ผงงาน

ภำษำโปรแกรม

Page 13: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

ขนตอนวธทใชแกปญหาเดยวกน อาจมไดหลายแบบ

ประโยชนของการออกแบบขนตอนวธการ

• ไดการท างานทเปนระบบ • ผปฏบต( อาจจะเปนคนหรอคอมพวเตอร) สามารถน าไปท าตามไดถกตอง • ไดผลลพธไดถกตองตามทตองการ • สามารถตรวจสอบจดผดพลาดไดงาย

ตวอยาง ขนตอนวธการการแกปญหาทางคณตศาสตรและวทยาศาสตร

Page 14: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

หลกกำรแกปญหำกบภำษำคอมพวเตอร

1.หลกการแกปญหา

ในชวตประจ ำวนทกคนตองเคยพบกบปญหำตำงๆ ไมวำจะเปนปญหำดำนกำรเรยน กำรงำน กำรเงน หรอแมแตกำรเลนเกม เมอพบกบปญหำ แตละคนมวธทจะจดกำรหรอแกปญหำเหลำนนแตกตำงกนไป ซงแตละวธกำรอำจใหผลลพธทเหมอนหรอแตกตำงกนเลกนอย ทงนขนอยกบควำมร ควำมสำมำรถ และประสบกำรณของบคคลผนน อยำงไรกตำม หำกเรำน ำวธกำรแกปญหำตำงวธนนมำวเครำะหใหด จะพบวำสำมำรถสรปวธกำรเหลำนนเปนทฤษฎซงมรปแบบทแนนอนได และบำงครงตองอำศยกำรเรยนรในระดบสงเพอแกปญหำบำงอยำงใหสมบรณแบบ แตกอนทเรำจะศกษำตอไป ลองพจำรณำปญหำตอไปน

ตวอยำงท 1 เกมทำยใจ

คอเกมใหผเลนทำยตวเลข 3 ตว ในกำรเลนเกมตองใชผเลน 2 คน คนทหนงคอ ผก ำหนด เปนคนก ำหนดเลข 3 ตวทไมซ ำกน โดยเลอกจำกกลมตวเลข 1-9 และอกคนหนงคอผทำย เปนผทำยตวเลข 3 ตวทไมซ ำกนทผก ำหนดไดก ำหนดไวแลว หลงจำกทผทำยทำยเลขแตละครง ผก ำหนดตองใหรำยละเอยดวำตวเลขททำยมำนนถกตองกตว และในกรณทตวเลขททำยมำถกต ำแหนงดวยกตองบอกวำถกต ำแหนงกตว เชน ถำตวเลขทก ำหนดไวเปน 815 และผทำยทำยวำ 123 ผก ำหนดตองแจงวำตวเลขททำยนนถก 1 ตว และไมมตวใดถกต ำแหนง ตำรำงท 1 เปนตำรำงแสดงขอมลกำรเลนเกม

ตำรำงท 1 ขอมลกำรเลนเกมทำยใจ

เลขททำย จ ำนวนตวเลขทถก จ ำนวนต ำแหนงทถก

123

415

425

416

715

815

1

2

1

1

2

3

- 2

1

1

2

3

จะเหนวำกำรแกปญหำดงกลำวขำงตน นอกจำกจะใชวธลองผดลองถกในกำรทำยครงแรกๆ แลวยงมกำรใชเหตผลประกอบกำรแกปญหำซงเรำเรยกวธกำรดงกลำววำ “วธขจด” (method of elimination) คอ จะแยกขอมลออกเปนกรณทเปนไปไมไดทง จนเหลอกรณทเปนไปได รปแบบของกำรใชเหตผลประกอบกำรแกปญหำอำจแตกตำงกนขนอยกบเงอนไข ในบำงปญหำอำจจะขจดใหเหลอกรณเดยวไมได แตอำจจะท ำใหเหลอกรณนอยทสด

นอกจำกวธกำรแกปญหำทยกตวอยำงมำซงไดแก วธกำรลองผดลองถก กำรใชเหตผล กำรใชวธขจด ยงมวธกำรแกปญหำอกมำกมำยทผแกปญหำสำมำรถเลอกใชใหเขำกบตวปญหำและประสบกำรณของผแกปญหำเอง แตอยำงไรกตำม วธกำรเหลำนนลวนมขนตอนทคลำยคลงกน และจำกกำรศกษำพฤตกรรมใน

Page 15: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

กำรเรยนรและแกปญหำของมนษยพบวำ โดยปกตมนษยมกระบวนกำรในกำรแกปญหำ ซงประกอบดวย 4 ขนตอน ดงน

1. การวเคราะหและก าหนดรายละเอยดของปญหา

กำรวเครำะหและก ำหนดรำยละเอยดของปญหำ (State the problem) ขนตอนนเปนขนตอนแรกสดกอนทจะลงมอแกปญหำ แตผแกปญหำมกจะมองขำมควำมส ำคญของขนตอนนอยเสมอ จดประสงคของขนตอนน คอกำรท ำควำมเขำใจกบปญหำเพอแยกใหออกวำขอมลทก ำหนดมำในปญหำหรอเงอนไขของปญหำคออะไร และสงทตองกำรคออะไร อกทงวธกำรทใชประมวลผล ในกำรวเครำะหปญหำใด กลำวโดยสรปมองคประกอบในกำรวเครำะห ดงน

1.1 กำรระบขอมลเขำ ไดแก กำรพจำรณำขอมลและเงอนไขทก ำหนดมำในปญหำ 1.2 กำรระบขอมลออก ไดแก กำรพจำรณำเปำหมำยหรอสงทตองหำค ำตอบ 1.3 กำรก ำหนดวธประมวลผล ไดแก กำรพจำรณำขนตอนวธหำค ำตอบหรอขอมลออก

ตวอยางท 2 แสดงกำรวเครำะหและก ำหนดรำยละเอยดของกำรหำคำเฉลยของจ ำนวนเตม 5 จ ำนวน ไดแก 0 3 4 8 และ 12 จำกองคประกอบในกำรวเครำะหและก ำหนดรำยละเอยดของปญหำ (1) กำรระบขอมลเขำ ในทนโจทยก ำหนดใหหำคำเฉลยของจ ำนวนเตม 5 จ ำนวน ดงนน ขอมลเขำไดแก จ ำนวน 0 3 4 8 และ 12

(2) กำรระบขอมลออก จำกโจทยสงทเปนค ำตอบของปญหำคอ คำเฉลย (X) ของจ ำนวนทงหำ

(3) กำรก ำหนดวธประมวลผล จำกสงทโจทยตองกำร “คำเฉลย” หมำยถง ผลรวมของจ ำนวนทง 5 หำรดวย 5 ดงนน ขนตอนของ

กำรประมวลผลประกอบดวย 3.1) รบคำจ ำนวนทง 5 จ ำนวน 3.2) น ำจ ำนวนเตมทง 5 มำบวกเขำดวยกน 3.3) น ำผลลพธจำกขอ 3.2) มำหำรดวย 5

ตวอยางท 3 แสดงกำรวเครำะหและก ำหนดรำยละเอยดของกำรหำคำ X เมอ X คอจ ำนวนเตมจ ำนวนหนงในกลมจ ำนวนเตม 5 จ ำนวน ทมคำเฉลยเปน 10 และจ ำนวนอก 4 จ ำนวนไดแก 3 4 8 และ 12 จำกองคประกอบในกำรวเครำะหและก ำหนดรำยละเอยดของปญหำ

(1) กำรระบขอมลเขำ จำกโจทยขอมลเขำ ไดแก 1.1) จ ำนวนอก 4 จ ำนวน คอ 3 4 8 12 1.2) คำเฉลยของจ ำนวนทง 5 จ ำนวน คอ 10

Page 16: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

(2) กำรระบขอมลออก จำกโจทยสงทเปนผลลพธ คอ คำ X

(3) กำรก ำหนดวธประมวลผล จำกโจทยและควำมหมำยของ “คำเฉลย” เรำสำมำรถสรปขนตอนของกำรประมวลผลไดดงน 3.1) หำคำผลรวมของจ ำนวนเตมทง 5 โดยน ำคำเฉลยคณดวยจ ำนวนของเลขจ ำนวนเตม นนคอ 10 x 5 = 50 3.2) จำกควำมหมำยของ “ผลรวม” จะได 3+4+8+12+X = 50 3.3) แกสมกำร 27+X = 50 (จะได X = 23 ซงคอผลลพธ)

2. การเลอกเครองมอและออกแบบขนตอนวธ กำรเลอกเครองมอและออกแบบขนตอนวธ (Tools and Algorithm development) ขนตอนนเปนขนตอนของกำรวำงแผนในกำรแกปญหำอยำงละเอยดถถวน หลงจำกทเรำท ำควำมเขำใจกบปญหำ พจำรณำขอมลและเงอนไขทมอย และสงทตองกำรหำในขนตอนท 1 แลว เรำสำมำรถคำดคะเนวธกำรทจะใชในกำรแกปญหำ ขนตอนนจ ำเปนตองอำศยประสบกำรณของผแกปญหำเปนหลก หำกผแกปญหำเคยพบกบปญหำท ำนองนมำแลวกสำมำรถด ำเนนกำรตำมแนวทำงทเคยปฏบตมำ

ขนตอนนจะเรมจำกกำรเลอกเครองมอทใชในกำรแกปญหำ โดยพจำรณำควำมเหมำะสมระหวำงเครองมอกบเงอนไขตำงๆ ของปญหำซงหมำยรวมถงควำมสำมำรถของเครองมอในกำรแกปญหำดงกลำว และสงทส ำคญคอควำมคนเคยในกำรใชงำนเครองมอนนๆ ของผแกปญหำ

อกสงหนงทส ำคญในกำรแกปญหำ คอยทธวธทใชในกำรแกปญหำหรอทเรำเรยกวำ ขนตอนวธ (algorithm) ในกำรแกปญหำ หลงจำกทเรำไดเครองมอชวยแกปญหำแลว ผแกปญหำตองวำงแผนวำจะใชเครองมอดงกลำวเพอใหไดผลลพธทถกตองและดทสด กำรออกแบบขนตอนวธในกำรแกปญหำ ผแกปญหำควรใชแผนภำพหรอเครองมอในกำรแสดงขนตอนกำรท ำงำนเพอใหงำยตอควำมเขำใน เชน ผงงำน (flowchart) ทจ ำลองขนตอนวธกำรแกปญหำในรปของสญลกษณ รหสล ำลอง (pseudo code) ซงเปนกำรจ ำลองขนตอนวธกำรแกปญหำในรปของค ำบรรยำย กำรใชเครองมอชวยออกแบบดงกลำวนอกจำกแสดงกระบวนกำรทชดเจนแลว ยงชวยใหผแกปญหำสำมำรถหำขอผดพลำดของวธกำรทใชไดงำยและแกไขไดอยำงรวดเรว

3. การด าเนนการแกปญหา

กำรด ำเนนกำรแกปญหำ (Implementation) หลงจำกทไดออกแบบขนตอนวธเรยบรอยแลว ขนตอนน เปนขนตอนทตองลงมอแกปญหำโดยใชเครองมอทไดเลอกไว หำกกำรแกปญหำดงกลำวใชคอมพวเตอรเขำมำชวยงำน ขนตอนนกเปนกำรใชโปรแกรมส ำเรจหรอใชภำษำคอมพวเตอรเขยนโปรแกรมแกปญหำ ขนตอนน ตองอำศยควำมรเกยวกบเครองมอทเลอกใชซงผแกปญหำตองศกษำใหเขำใจและเชยวชำญ ในขณะทด ำเนนกำรหำกพบแนวทำงทดกวำทออกแบบไวกสำมำรถปรบเปลยนได

Page 17: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

4. กำรตรวจสอบและปรบปรง

กำรตรวจสอบและปรบปรง (Refinement) หลงจำกทลงมอแกปญหำแลว ตองตรวจสอบใหแนใจวำวธกำรนใหผลลพธทถกตอง โดยผแกปญหำตองตรวจสอบวำขนตอนวธทสรำงขนสอดคลองกบรำยละเอยดของปญหำ ซงไดแก ขอมลเขำ และขอมลออก เพอใหมนใจวำสำมำรถรองรบขอมเขำไดในทกกรณอยำงถกตองและสมบรณ ในขณะเดยวกนกตองปรบปรงวธกำรเพอใหกำรแกปญหำนไดผลลพธทดทสด

ขนตอนทง 4 ขนตอนดงกลำวขำงตน เปนเสมอนขนบนได (stair) ทท ำใหมนษยสำมำรถประสบควำมส ำเรจในกำรแกปญหำตำงๆ ได รวมทงกำรเขยนหรอพฒนำโปรแกรมคอมพวเตอรเพอแกปญหำกตองใชกระบวนกำรตำมขนตอนทง 4 นเชนกน

2. การจ าลองความคด

ขนตอนทส ำคญในกำรแกปญหำคอกำรวำงแผน กำรวำงแผนทดจะชวยใหกำรแกปญหำเปนไปไดโดยงำย ผทสำมำรถวำงแผนในกำรแกปญหำไดดนอกจำกจะตองใชประสบกำรณควำมร และควำมมเหตผลแลว ยงควรรจกวำงแผนใหเปนขนตอนอยำงเปนระเบยบดวย

กำรจ ำลองควำมคดเปนสวนหนงในขนตอนทสองของกำรแกปญหำ กำรจ ำลองควำมคดออกมำในลกษณะเปนขอควำม หรอเปนแผนภำพจะชวยใหสำมำรถแกปญหำไดด โดยเฉพำะปญหำทยงยำกซบซอน กำรวำงแผนจะเปนแนวทำงในกำรด ำเนนกำรแกปญหำตอไป อกทงเปนกำรแสดงแบบเพอใหผทเก ยวของไดเขำใจและสำมำรถปฏบตตำมในแนวทำงเดยวกน

ทงนกดวยวตถประสงคอยำงเดยวกบกลมกจกำรกอสรำง ซงจ ำเปนตองมแบบแปลนเปนเครองมอตดตอสอสำรระหวำงผออกแบบและผกอสรำง แบบแปลนเหลำนนจะอยในรปลกษณะของกำรวำดภำพหรอแสดงเครองหมำยซงเปนทเขำใจกนระหวำงผเกยวของ แบบแปลนจะตองจดท ำใหเสรจกอนทจะลงมอกอสรำง โดยผำนกำรตรวจสอบ ทบทวนและพจำรณำจำกผเทยวของหลำยฝำย เมอเหนวำเปนทถกตองและพอใจของทกฝำยแลว จงกอสรำงตำมแบบนน แตถำยงไมเปนทพอใจ กจะพจำรณำแกไขแบบแปลนสวนนนๆ เสยกอนจะไดไมตองรอถอนหรอทบทงภำยหลง และเมอตองกำรซอมแซมหรอตอเตมกน ำเอำแบบแปลนเดมมำตรวจสอบและเพมแบบแปลนในสวนนนไดโดยงำย กำรใชแบบแปลนจงเปนสงทจ ำเปนระหวำงชำงกอสรำง ผออกแบบและผเกยวของอนๆ เปนอยำงมำก เพรำะประหยดเวลำ คำใชจำยและเขำใจงำย เมอสรปรวมแลวแบบแปลนเหลำนนกคอขอตกลงใหสรำงอำคำรของผจำงกบผรบจำงทอยในรปแบบกะทดรด แทนทจะเขยนเปนขอควำมทเปนลำยลกษณอกษรอยำงยดยำว และยงเปนเครองมอใหชำงใชในกำรกอสรำงอกดวย

Page 18: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

เครองมอทใชในกำรจ ำลองควำมคดมกจะประกอบขนดวยเครองหมำยทแตกตำงกนหลำยอยำง แตพอสรปไดเปน 2 ลกษณะ คอ

1.ขอความหรอค าบรรยาย

เปนกำรเขยนเคำโครงดวยกำรบรรยำยเปนภำษำทมนษยใชสอสำรกน เพอใหทรำบถงขนตอนกำรท ำงำนของกำรแกปญหำแตละตอน ในบำงครงอำจใชค ำสงของภำษำทใชเขยนโปรแกรมกได

ตวอยำงท 4 ค ำบรรยำยแสดงขนตอนกำรเปลยนยำงรถเมอยำงแตกขณะขบรถ (1) จอดรถหลบขำงทำง (2) คลำยสกรยดลอ (3) น ำแมแรงออกยกรถ (4) ถอดลอออก น ำยำงอะไหลมำเปลยน (5) ขนสกรเขำ เกบยำงทช ำรดเพอไปซอม (6) คลำยแมแรง เกบแมแรง

2. สญลกษณ

เครองหมำยรปแบบตำงๆ ซงใชส ำหรบสอสำรควำมหมำยใหเขำใจตรงกน สถำบนมำตรฐำนแหงชำตอเมรกำ (The American National Standard Institute, ANSI) ไดก ำหนดสญลกษณไวเปนมำตรฐำนแลว สำมำรถน ำไปใชไดตำมควำมเหมำะสมตอไป ซงมรำยละเอยด รปแบบและควำมหมำยทควรทรำบตำมตำรำงตอไปน

ตำรำงท 2 ควำมหมำยของสญลกษณ

สญลกษณ ชอเรยก ความหมาย

กำรท ำงำนดวยมอ (manual operation)

แทนจดทมกำรท ำงำนดวยแรงคน

กำรน ำขอมลเขำ – ออกโดยทวไป (general input/output)

แทนจดทจ ำน ำขอมลเขำหรอออกจำกระบบคอมพวเตอรโดยไมระบชนดของอปกรณ

แถบบนทกขอมล (magnetic tape)

แทนจดทน ำขอมลเขำหรอออกจำกโปรแกรมดวยแถบบนทกขอมล

จำนบนทกขอมล (magnetic disk)

แทนจดทน ำขอมลเขำหรอออกจำกโปรแกรมดวยจำนบนทกขอมล

กำรน ำขอมลเขำดวยมอ (manual input)

แทนจดทจะน ำขอมลเขำดวยมอ

Page 19: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

กำรแสดงขอมล (display)

แทนจดทแสดงขอมลดวยจอภำพ

กำรท ำเอกสำร (document)

แทนจดทมขอมลเปนเอกสำรหรอแสดงขอมลดวยเครองพมพ

กำรตดสนใจ (decision)

แทนจดทจะตองเลอกปฏบตอยำงใดอยำงหนง

กำรปฏบตงำน (process)

แทนจดทมกำรปฏบตงำนอยำงใดอยำงหนง

กำรเตรยมกำร (preparation)

แทนจดก ำหนดชอขอมลหรอคำเรมตนตำงๆ

กำรเรยกโปรแกรมภำยนอก (external subroutine)

แทนจดเรยกใชโปรแกรมยอยทไมไดอยในโปรแกรมนน

กำรเรยกโปรแกรมภำยใน (internal subroutine)

แทนจดเรยกใชโปรแกรมยอยทอยในโปรแกรมนน

กำรเรยงขอมล (sort) แทนจดทมกำรเรยงขอมลใหมตำมขอก ำหนด

ทศทำง (flow line)

แทนทศทำงขนตอนกำรด ำเนนงำนซงจะปฏบตตอเนองกนตำมหวลกศรช

หมำยเหต (annotation)

แทนจดทแสดงรำยละเอยดเพมเตมหรอหมำยเหตของจดตำงๆ ทแสดงในผงงำนดวยสญลกษณไมชดเจน

กำรตดตอทำงไกล (communication link)

แทนชวงทมกำรตดตอหรอยำยขอมลดวยระบบกำรตดตอทำงไกล

จดเชอมตอ (connector)

แทนจดเชอมตอของผงงำนเมอใชสญลกษณเพอใหดงำย

จดเชอมตอหนำกระดำษ (off page connector)

แทนจดเชอมตอของผงงำนทอยคนละหนำกระดำษ

เรมตนและลงทำย (terminal)

แทนจดเรมตนและลงทำยของผงงำนของโปรแกรมห

Page 20: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

ตวอยางท 5 กำรวำงแผนกำรไปโรงเรยน การจ าลองความคดเปนขอความ เรมตน ตนนอน อำบน ำ ไปโรงเรยน จบ การจ าลองความคดเปนสญลกษณ

Page 21: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

ตวอยางท 6 กำรจ ำลองควำมคดในกำรหำผลบวกของ 1, 2, 3, …, 20 (นนคอ จะหำคำ 1+2+3+…+20) การจ าลองความคดเปนขอความ เรมตน

1. ก ำหนดให N มคำเรมตนเปน 0 2. ก ำหนดให K มคำเรมตนเปน 1 3. น ำคำ K มำรวมกบคำ N เดม ไดผลลพธเทำไรไปเกบไวท N 4. น ำคำ 1 มำรวมกบคำ K เดม ไดผลลพธเทำไรไปเกบไวท K 5. เปรยบเทยบคำ K กบ 20 ถำ K นอยกวำหรอเทำกบ 20 ใหวนกลบไปท ำในขน

ท 3 และท ำค ำสงถดลงมำตำมล ำดบ แตถำ K มำกกวำ 20 ใหแสดงค ำตอบ จบ การจ าลองความคดเปนสญลกษณ

Page 22: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

3. การเขยนโปรแกรม

จำกกำรศกษำหลกกำรขนตอนกำรแกปญหำในหวขอท 1 และ 2 ทผำนมำ หลงจำกทเรำสำมำรถวเครำะหปญหำ และสรำงแบบจ ำลองควำมคดเพอแสดงขนตอนในกำรแกปญหำแลว ขนตอนตอไปคอกำรลงมอแกปญหำตำมขนตอนทออกแบบไว โดยใชเครองมอชวยในกำรแกปญหำ ในทนหำกเครองมอทนกเรยนเลอกคอภำษำคอมพวเตอร ขนตอนในกำรลงมอแกปญหำกคอขนตอนของกำรเขยนโปรแกรมคอมพวเตอรซงถอไดวำเปนขนตอนหนงทส ำคญในกำรแกปญหำดวยคอมพวเตอร

กำรเขยนโปรแกรม (Programming) หมำยถง กระบวนกำรใชภำษำคอมพวเตอรเพอก ำหนดโครงสรำงของขอมล และก ำหนดขนตอนวธเพอใชแกปญหำตำมทไดออกแบบไว โดยอำศยหลกเกณฑกำรเขยนโปรแกรมคอมพวเตอรของแตละภำษำ

กอนกำรเขยนโปรแกรม ผพฒนำโปรแกรมจะตองเลอกภำษำคอมพวเตอรทจะน ำมำใชชวยงำนโดยพจำรณำจำกปจจยตำงๆ ในกำรท ำงำน เชน ลกษณะของปญหำ ควำมถนดของผเขยนโปรแกรม สภำพแวดลอมในกำรท ำงำนของระบบคอมพวเตอร เปนตน เนองจำกในปจจบนมภำษำคอมพวเตอรใหเลอกใชไดหลำยภำษำ เชน ภำษำปำสคำล ภำษำซ ภำษำจำวำ ภำษำเดลฟำย เปนตน ถงแมแตละภำษำจะมรปแบบและหลกกำรในกำรสรำงงำนทแตกตำงกน แตทกภำษำจะตองมโครงสรำงควบคมหลกทง 3 แบบ ไดแก โครงสรำงแบบล ำดบ (sequential structure) โครงสรำงแบบมทำงเลอก (selection structure) และโครงสรำงแบบท ำซ ำ (repetition structure)

1. โครงสรางแบบล าดบ (Sequential structure)

คอ โครงสรำงแสดงขนตอนกำรท ำงำนทเปนไปตำมล ำดบกอนหลง และแตละขนตอนจะถกประมวลผลเพยงครงเดยวทำนน สำมำรถแสดงกำรท ำงำนของโครงสรำงน โดยใชผงงำนไดดงรปท 1

รปท 1 กำรท ำงำนของโครงสรำงแบบล ำดบ

Page 23: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

2. โครงสรางแบบมทางเลอก (Selection structure)

คอ โครงสรำงทมเงอนไข ขนตอนกำรท ำงำนบำงขนตอนตองมกำรตดสนใจเพอเลอกวธกำรประมวลผลขนตอไป และจะมบำงขนตอนทไมไดรบกำรประมวลผล กำรตดสนใจอำจมทำงเลอก 2 ทำงหรอมำกกวำกได โครงสรำงทมทำงเลอกเพยง 2 ทำง เรำเรยกชอวำโครงสรำงแบบ if…then…else และโครงสรำงทมทำงเลอกมำกกวำ 2 ทำง เรำเรยกชอวำ โครงสรำงแบบ case ซงสำมำรถแสดงกำรท ำงำนของโครงสรำงนโดยใชผงงำนไดดงรปท 2 และ 3

รปท 2 กำรท ำงำนของโครงสรำงแบบมทำงเลอก if…then…else

รปท 3 กำรท ำงำนของโครงสรำงแบบมทำงเลอก case

3. โครงสรำงแบบท ำซ ำ (Repetition structure)

คอ โครงสรำงทขนตอนกำรท ำงำนบำงขนตอนไดรบกำรประมวลผลมำกกวำ 1 ครง ทงนขนอยกบเงอนไขบำงประกำร โครงสรำงแบบท ำซ ำนตองมกำรตดสนใจในกำรท ำงำนซ ำ และลกษณะกำรท ำงำนของโครงสรำงแบบนม 2 ลกษณะ ไดแก

· แบบทมกำรตรวจสอบเงอนไขในกำรท ำซ ำทกครงกอนด ำเนนกำรกจกรรมใดๆ ถำเงอนไขเปนจรงจะท ำงำนซ ำไปเรอยๆ และหยดเมอเงอนไขเปนเทจ เรยกกำรท ำงำนลกษณะนวำ กำรท ำซ ำแบบ do while

Page 24: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

· แบบทท ำกจกรรมซ ำเรอยๆ จนกระทงเงอนไขทก ำหนดเปนจรงแลวจงหยดกำรท ำงำน โดยแตละครงทเสรจสนกำรด ำเนนกำรแตละรอบจะตองมกำรตรวจสอบเงอนไข เรยกกำรท ำซ ำลกษณะนวำ กำรท ำซ ำแบบ do until ผงงำนแสดงขนตอนกำรท ำงำนของโครงสรำงแบบท ำซ ำทงสองแบบ แสดงดงรปท 4 และ 5

รปท 4 กำรท ำงำนของกำรท ำซ ำแบบ do while

รปท 5 กำรท ำงำนของกำรท ำซ ำแบบ do until

Page 25: บทที่ 4putth.pccpl.ac.th/documents/บทที่ 4-1-2562.pdfบทท 4 แนวค ดเช งค ำนวณและกระบวนกำรแก ป ญหำ

ตวอยำงท 7 แสดงผงงำนทจ ำลองขนตอนวธกำรหำคำเฉลยของจ ำนวนเตม 5 จ ำนวน ใหอยในรปของสญลกษณ