ทบทวนความร้กู อ่ นเรียน เฉลย เขียน หน้าขอ้ ความทีถ่ กู แนวคิดเชิงนามธรรม (Abstraction) เปน็ ส่วนหนึง่ ของแนวคิดเชิงคานวณ --------------------------------------------- แนวคิดเชิงนามธรรมเปน็ การคัดแยกรายละเอียด ทีจ่ าเป็นออกจากรายละเอียดทีไ่ ม่จาเป็น
ปัญหาในชีวิตประจาวัน การเดินทางไปสถานที่ไม่รู้จัก การซกั เสื้อผ้าให้สมาชิกทกุ คนในครอบครัว การซ้ือต๋ัวชมภาพยนตร์
ลองทาดู ถ้าผ้เู รียนต้องการเดินทางจากบ้านไปสถานทีท่ ีไ่ ม่ร้จู กั นักเรียนจะเดินทางอย่างไร ระบุปัญหา/ ค้นหาข้อมูล ตั้งคาถาม เพื่อตอบคาถาม
คาถามย่อยและคาตอบ ต้องการเดินทางจากบ้านไปสถานที่ที่ไม่ร้จู ัก 1.ต้องการไปสถานที่ใด หอสมุดประจาจังหวดั 2.เดินทางโดยวิธีการใด 3.ระหว่างทางมีอะไรบ้าง ตึก 2 ชน้ั จกั รยาน 4. สถานที่นั้น มหี ลังคาทรง ตลาด วดั มีลกั ษณะอย่างไร ไทย ร้านขนม คาถาม
คาถามและคาตอบ ต้องการเดินทางจากบ้านไปสถานที่ทีไ่ ม่ร้จู ัก 5. เส้นทางเป็นอย่างไร 1.ปั่นจักรยานไปทางตลาด 2.ผ่านตลาดเลี้ยวขวาที่แยกไฟแดง คาถาม 4.แล้วตรงไปอกี 200 เมตร 3.ตรงไป 500 เมตร แล้วเลยี้ วซ้าย
ช่วยกันคิดคาถามย่อย บัตรชว่ ยกันคิดคาถามย่อย สถานการณ์ แบ่งเป็นกล่มุ กล่มุ ละ 4 คน ------------------------ รบั บัตรช่วยกนั คิดคาถามย่อย คาถามย่อย กาหนดสถานการณ์เอง หรือ --------------------- เลือกสถานการณ์ที่เตรียมให้ วิเคราะห์แล้วตั้งคาถามย่อย คาตอบ ตอบคาถามย่อย ------------------------
ตวั อย่างสถานการณ์ ต้องการซ้อื เมาส์ อ่านหนังสือให้จบ 1 บท ทาการบ้านอย่างไรให้สาเรจ็ เล่นเกม OX ให้เป็นผ้ชู นะ สอนน้องบวกเลข 2 หลัก ซกั ผ้าให้สะอาด มีเงิน 100 ต้องการซ้ือส้ม ใช้เงินให้ประหยัด ซ้อื สินค้าให้คุ้มค่า และฝรง่ั จะได้กีก่ ิโลกรมั การทาข้าวผดั
แบ่งปัญหาใหญ่ การพิจารณา การคิด การออกแบบ เชิงนามธรรม อลั กอริทึม เป็นปญั หายอ่ ย รปู แบบ แนวคิดเชิงคานวณ
ศึกษาเนื้อหาในหนังสือเรียน (5 นาที) ให้ผ้เู รียนแต่ละกล่มุ ศึกษาเน้ือหาในหนงั สือ ตามหัวข้อต่อไปน้ี 1.1 การแบ่งปัญหาใหญ่เปน็ ปญั หาย่อย 1.2 การพิจารณารปู แบบ 1.3 การคิดเชิงนามธรรม 1.4 การออกแบบอัลกอริทึม
ร่วมกนั อภิปรายสรปุ
การแบ่งปัญหาใหญ่เป็นปัญหาย่อย เป็นการแตกปัญหาที่ซับซอนออกเป็นปญั หาย่อยที่มี ความซับซ้อนน้อยลง เพือ่ ช่วยในการวิเคราะห์ปัญหาและ ออกแบบขั้นตอนการแก้ปัญหาย่อยแต่ละปญั หาให้ง่ายข้นั
การแบง่ ปัญหาใหญเ่ ป็นปัญหายอ่ ย ตวั อย่าง การสอนเดก็ ที่สามารถบวกเลขได้เพียงหลกั เดียว ให้สามารถบวกเลขทีม่ ี 2 หลกั ได้ วิธีการบวกเลขหลักสิบ? วิธีการบวกเลขหลักหน่วย? ?
การพิจารณารปู แบบ เป็นการหารปู แบบที่เหมือนหรือคล้ายคลึงกนั ระหว่าง ปัญหาย่อยที่แตกออกมา หรือความคล้ายคลึงกบั ปัญหาอื่น ๆ เพื่อนาวิธีการแก้ปญั หาไปประยุกต์ใช้กบั การแก้ปัญหา ย่อยอื่น ๆ เปน็ การช่วยลดข้ันตอนในการออกแบบวิธีการ แก้ปัญหาได้
การคิดเชิงนามธรรม o การคดั แยกรายละเอียดที่จาเป็นต่อการแก้ปัญหา ออก จากรายละเอียดที่ไม่จาเปน็ ทาให้ออกแบบวิธีการ แก้ปัญหาในภาพรวมทาได้ง่ายขึ้น o การแทนกลุ่มของปัญหา ข้นั ตอน และกระบวนการทีม่ ี รายละเอียดปลีกย่อยหลายข้นั ตอนให้เป็นข้นั ตอนเดียว
อัลกอริทึม รายการคาสง่ั ที่อธิบายขั้นตอนการแก้ปญั หา โดย คาส่งั ทีใ่ ช้จะต้องไม่กากวมผู้อื่นสามารถนาไปปฏบิ ตั ิ ตามได้ ซึ่งคาสัง่ มักอยู่ในรูปของรหัสลาลอง (pseudo code) หรือผงั งาน (flowchart) อลั กอริทมึ ใหค้ นนาไปปฏิบัติ หรอื คอมพิวเตอร์นาไปปฏิบตั ิ
ร่วมกนั สรปุ ตวั อย่าง ภาพวาดหม่บู า้ น โดยใช้แนวคิดเชิงคานวณในการแก้ปัญหา (คลิกเพ่ือเปิ ดไฟลส์ รปุ )
ใบกิจกรรมที่ 3.1 วาดแบบแปลนอาคาร
2.1 การแบ่งปญั หาใหญ่เปน็ ปญั หาย่อย ในภาพมีอาคารกีห่ ลัง ข้นั ตอนในการวาดอาคาร I Shopping Mall เปน็ อย่างไร และอย่ทู ี่ตาแหน่งใด ข้นั ตอนในการวาดอาคาร P IT Center เปน็ อย่างไร และอย่ทู ีต่ าแหน่งใด ข้นั ตอนในการวาดอาคาร S Salon เปน็ อย่างไร และอย่ทู ีต่ าแหน่งใด ข้นั ตอนในการวาดอาคาร T Sport Center เปน็ อย่างไร และอย่ทู ี่ตาแหน่งใด
2.2 การพิจารณารูปแบบ ปัญหาย่อยที่ 1 ในภาพมีอาคารกี่หลัง มีอาคาร 4 หลัง
2.2 การพิจารณารปู แบบ ปัญหาย่อยที่ 2 อาคาร I Shopping Mall มขี ้นั ตอนการวาดอย่างไร และอยู่ที่ตาแหนง่ ใด ตัวอาคาร วาดด้วยรปู สีเ่ หลี่ยมจตุรัสสีเทา ขนาด ด้านละ 40 หน่วย ตั้งอย่บู น มุมลา่ งซ้าย ทีพ่ ิกดั (0,0) ด้านบนสีเ่ หลี่ยมวาด หลงั คา ด้วยรูปสามเหลีย่ ม ด้านเท่าสีเขียวขนาดด้านละ 40 หน่วย
2.2 การพิจารณารูปแบบ ปญั หาย่อยที่ 3 อาคาร P IT Center มขี น้ั ตอนการวาดอยา่ งไร และอยู่ที่ตาแหน่งใด ตัวอาคาร วาดด้วยรปู สี่เหลี่ยมจตรุ สั สีฟ้า ขนาด ด้านละ 20 หน่วย ตั้งอย่บู น มุมลา่ งซ้าย ทีพ่ ิกดั (50,10) ไม่มี หลงั คา
2.2 การพิจารณารูปแบบ ปญั หาย่อยที่ 4 อาคาร S Salon มขี ้นั ตอนการวาดอย่างไร และอย่ทู ีต่ าแหนง่ ใด ตัวอาคาร วาดด้วยรูปสีเ่ หลี่ยมจตุรัสสีฟ้า ขนาด ด้านละ 20 หน่วย ตั้งอย่บู น มุมล่างซ้าย ทีพ่ ิกดั (60,40) ไม่มี หลงั คา
2.2 การพิจารณารปู แบบ ปญั หาย่อยที่ 5 อาคาร T Sport Center มขี น้ั ตอนการวาดอยา่ งไร และอยทู่ ีต่ าแหนง่ ใด ตวั อาคาร วาดด้วยรูปสี่เหลี่ยมจตุรัสสีน้าเงิน ขนาด ด้านละ 30 หน่วย ต้ังอย่บู น มุมลา่ งซา้ ย ทีพ่ ิกดั (80,10) ด้านบนสีเ่ หลีย่ มวาด หลงั คา ด้วยรปู สามเหลีย่ ม ด้านเท่าสีเหลือง ขนาดด้านละ 30 หน่วย
2.2 การพิจารณารปู แบบ สรุปการพิจารณารปู แบบ รูปแบบโครงสร้างอาคารภายในโครงการ มีจดุ ร่วมกัน ดังน้ี ตวั อาคาร เป็นรปู สีเหลีย่ มจตรุ สั หลังคา เป็นรูปสามเหลี่ยมด้านเท่าวางบนตัวอาคาร (มี/ไม่มี) มมุ ล่างซ้าย จดุ พิกดั เริม่ ต้นในการวางตวั อาคาร
2.3 การคิดเชิงนามธรรม อาคาร I Shopping Mall หลงั คา ขนาด 40 หน่วย สีเขียว ตัวอาคาร ขนาด 40 หน่วย สีเทา มุมล่างซ้าย พิกัด (0,0) *
2.3 การคิดเชิงนามธรรม อาคาร P ITCenter หลงั คา ไม่มี ตัวอาคาร ขนาด 20 หน่วย สีฟา้ มุมล่างซ้าย พิกดั (50,10) *
2.3 การคิดเชิงนามธรรม อาคาร S Salon หลงั คา ไม่มี ตัวอาคาร ขนาด 20 หน่วย สีฟา้ มมุ ล่างซา้ ย พิกัด (60,40) *
2.3 การคิดเชิงนามธรรม อาคาร T Sport Center หลงั คา ขนาด 30 หน่วย สีเหลือง ตวั อาคาร ขนาด 30 หน่วย สีน้าเงิน มมุ ลา่ งซา้ ย พิกดั (80,10) *
2.4 การออกแบบอัลกอริทึม ขั้นตอนหลกั เริ่มต้น วาดแปลนอาคาร มีหลงั คา ขนาด 40 หน่วย ทีต่ าแหน่ง (0,0) วาดแปลนอาคาร ไม่มีหลงั คา ขนาด 20 หน่วย ทีต่ าแหน่ง (50,10) วาดแปลนอาคาร ไม่มีหลังคา ขนาด 20 หน่วย ทีต่ าแหน่ง (60,40) วาดแปลนอาคาร มีหลังคา ขนาด 30 หน่วย ที่ตาแหน่ง (80,10) จบ
2.4 การออกแบบอลั กอริทึม ขั้นตอนย่อยที่ 1 วาดรปู สี่เหลี่ยมจัตุรสั ขนาด s หน่วย 1. ทาคาส่ังต่อไปน้ีซ้า 4 รอบ 1.1 เดินหน้า s หน่วย 1.2 หนั ซ้าย 90 องศา
2.4 การออกแบบอัลกอริทึม ข้ันตอนยอ่ ยที่ 2 วาดรูปสามเหลี่ยมด้านเท่าขนาด s หน่วย 1. ทาคาสั่งต่อไปน้ีซ้า 3 รอบ 1.1 เดินหน้า s หน่วย 1.2 หนั ซ้าย 120 องศา
2.4 การออกแบบอัลกอริทึม ขน้ั ตอนยอ่ ยที่ 3 วาดแปลนอาคารขนาด s หน่วยท่ตี าแหน่ง (x, y) หลงั คา (มี/ไม่ม)ี 1. ยกปากกา 6. ถ้ามีหลังคา 2. เคลือ่ นทีไ่ ปยงั ตาแหน่ง (x, y) 6.1 หนั ซ้าย 90 องศา 3. วางปากกา 6.2 เดินหน้า s หน่วย 4. กาหนดทิศทางไปด้านขวา 6.3 หันขวา 90 องศา 5. วาดรปู สี่เหลีย่ มจัตรุ ัสขนาด s 6.4 วาดรปู สามเหลี่ยมด้านเท่า ขนาด s
ลองมาดตู วั อย่างอื่นกนั บา้ ง หาราคารวมสนิ คา้ ต่อไปน้ี
การแบง่ ปญั หาใหญเ่ ปน็ ปญั หาย่อย ลองแบ่งเป็นปญั หาย่อย สบ่กู ี่บาท แก้วกีบ่ าท ยาสระผมกีบ่ าท ไม้บรรทดั กีบ่ าท หนังสือกี่บาท กรรไกรแบบที่ 1 กีบ่ าท แปรงสีฟนั กีบ่ าท กรรไกรแบบที่ 2 กีบ่ าท
การแบง่ ปัญหาใหญ่เปน็ ปญั หายอ่ ย ลองตอบคาถามของปญั หาย่อยราคารวมสินค้า สบกู่ ี่บาท ราคาสบู่ = ราคาสบตู่ ่อหน่วย x จานวนสบู่ ยาสระผมกีบ่ าท ราคายาสระผม = ราคายาสระผมต่อหน่วย x จานวนยาสระผม หนังสือกี่บาท ราคาหนังสือ= ราคาหนงั สือต่อหน่วย x จานวนหนงั สือ กรรไกรแบบที่ 1 กี่บาท ราคากรรไกรแบบที่ 1= ราคากรรไกรแบบที่ 1 ต่อหน่วย x จานวนกรรไกรแบบที่ 1 กรรไกรแบบที่ 2 กีบ่ าท ราคากรรไกรแบบที่ 2= ราคากรรไกรแบบที่ 2 ต่อหน่วย x จานวนกรรไกรแบบที่ 2 …
การพิจารณารปู แบบ จากคาตอบมีอะไรที่เหมือนกันบ้าง สบกู่ ี่บาท ราคาสบู่ = ราคาสบู่ต่อหน่วย x จานวนสบู่ ยาสระผมกีบ่ าท ราคายาสระผม = ราคายาสระผมต่อหน่วย x จานวนยาสระผม หนงั สือกี่บาท ราคาหนงั สือ= ราคาหนงั สือต่อหน่วย x จานวนหนังสือ กรรไกรแบบที่ 1 กีบ่ าท ราคากรรไกรแบบที่ 1= ราคากรรไกรแบบที่ 1 ต่อหน่วย x จานวนกรรไกรแบบที่ 1 กรรไกรแบบที่ 2 กี่บาท ราคากรรไกรแบบที่ 2= ราคากรรไกรแบบที่ 2 ต่อหน่วย x จานวนกรรไกรแบบที่ 2 …
การพิจารณารูปแบบ จากคาตอบมีอะไรทีเ่ หมือนกันบ้าง สบกู่ ีบ่ าท ราคาสบู่ = ราคาสบู่ต่อหน่วย x จานวนสบู่ ยาสระผมกีบ่ าท ราคายาสระผม = ราคายาสระผมต่อหน่วย x จานวนยาสระผม หนังสือกีบ่ าท ราคาหนังสือ= ราคาหนงั สือต่อหน่วย x จานวนหนังสือ กรรไกรแบบที่ 1 กี่บาท ราคากรรไกรแบบที่ 1= ราคากรรไกรแบบที่ 1 ต่อหน่วย x จานวนกรรไกรแบบที่ 1 กรรไกรแบบที่ 2 กีบ่ าท ราคากรรไกรแบบที่ 2= ราคากรรไกรแบบที่ 2 ต่อหน่วย x จานวนกรรไกรแบบที่ 2 …
การพิจารณารูปแบบ ลองเขียนสิ่งเหมือนกัน แล้วขีดเสน้ ใตส้ ่วนทีต่ า่ งกนั สบกู่ ี่บาท ราคาสบู่ = ราคาสบู่ต่อหน่วย x จานวนสบู่ ยาสระผมกีบ่ าท ราคายาสระผม = ราคายาสระผมต่อหน่วย x จานวนยาสระผม หนงั สือกีบ่ าท ราคาหนังสือ= ราคาหนงั สือต่อหน่วย x จานวนหนังสือ กรรไกรแบบที่ 1 กีบ่ าท ราคากรรไกรแบบที่ 1= ราคากรรไกรแบบที่ 1 ต่อหน่วย x จานวนกรรไกรแบบที่ 1 กรรไกรแบบที่ 2 กี่บาท ราคากรรไกรแบบที่ 2= ราคากรรไกรแบบที่ 2 ต่อหน่วย x จานวนกรรไกรแบบที่ 2 … ราคา.....................= ราคา........... ตอ่ หนว่ ย x จานวน........
อัลกอริทึมในการรวมราคาสินค้า ขนั้ ตอนหลัก ขน้ั ตอนย่อย หาราคารวมสินค้า y 1. รบั ราคาสินคา้ y และ จานวนสนิ ค้า y 2. หาราคารวมสินค้า y 1. ราคารวมสินค้า y = ราคา y x จานวน y 3. ราคารวมสินคา้ = ราคารวมสินคา้ + ราคารวม y 4. กลบั ไปทาตั้งแต่ขน้ั ตอนที่ 1 จนกว่าจะครบตามรายการสินคา้
ปญั หาการจัดเรียงหนังสือตามลาดับความสงู
เรียงหนังสอื ตามลาดบั ความสงู ลองคิดวิธีการจดั เรียงหนงั สือด้วยตนเอง (ให้เวลา.......นาที) ส่มุ หาผ้โู ชคดี 2 คน คนที่ 1 เป็นโปรแกรมเมอร์ป้อนคาส่ังจัดเรียงหนงั สือตามวิธีของตนเอง คนที่ 2 เปน็ ห่นุ ยนต์รบั คาสัง่ แล้วปฏิบัติตาม ช่วยกันอภิปรายคาสั่งของโปรแกรมเมอร์ ประเด็นตัวอย่าง เช่น คาสั่งชดั เจนหรือไม่ ปฏิบตั ิได้จริงหรือไม่ มีคาส่งั ซ้าหรือไม่
ใบกิจกรรมที่ 3.2 สอนน้องจัดหนังสือ แบ่งกลุ่ม กล่มุ ละ 4-5 คน ศึกษาตวั อย่างที่ 1.6 แล้วร่วมกันอภิปรายว่าแตกต่างจาก วิธีการที่คิดไปก่อนหนา้ นี้หรอื ไม่ อย่างไร ระดมสมองหาวิธีจดั เรียงหนังสือที่แตกต่างจากตวั อย่าง ตอบลงในใบกิจกรรมที่ 3.2 แสดงบทบาทสมมติตามอลั กอรึทึมสอนน้องจัดหนังสือ
ตวั อย่างที่ 1.6 สอนน้องจดั หนังสือ การแตกปญั หาใหญเ่ ป็นปญั หาย่อย ปญั หายอ่ ยที่ 1 หนังสือเล่มใดควรจดั ไว้เปน็ ลาดับแรก ปัญหายอ่ ยที่ 2 ในกองทีเ่ หลือ หนงั สือเล่มใดควรจดั ไว้เป็นลาดบั 2 ปญั หาย่อยที่ 3 ในกองทีเ่ หลือ หนังสือเล่มใดควรจัดไว้เปน็ ลาดบั 3 . .
ตัวอย่างที่ 1.6 สอนน้องจดั หนงั สือ การพิจารณารูปแบบ ปัญหาย่อยที่ 1 หนงั สือเล่มใดควรจดั ไว้เปน็ ลาดับแรก คาตอบ หนังสือทีม่ ีความสูงมากทีส่ ุด ปญั หาย่อยที่ 2 ในกองทีเ่ หลือ หนังสือเล่มใดควรจดั ไว้เปน็ ลาดบั 2 คาตอบ หนงั สือทีม่ ีความสงู มากทีส่ ดุ ในกองที่เหลือ ปัญหาย่อยที่ 3 ในกองที่เหลือ หนังสือเล่มใดควรจดั ไว้เป็นลาดับ 3 คาตอบ หนังสือทีม่ ีความสูงมากที่สุดในกองทีเ่ หลือ
ตัวอย่างที่ 1.6 สอนน้องจดั หนงั สือ การพิจารณารูปแบบ (ตอ่ ) สรปุ ปัญหายอ่ ย ในกองหนังสือทีม่ ีอยู่ หนงั สือเล่มใดควรจัดไว้เป็นลาดับถัดไป คาตอบ หนังสือทีม่ ีความสูงมากที่สดุ ในกองที่เหลือ
ตวั อย่างที่ 1.6 สอนน้องจดั หนังสือ การคิดเชิงนามธรรม สีปก ชือ่ หนงั สือ ปัญหาการจดั เรียงหนังสือตามความสูง 8 6 7 9 abstraction ความสูง ความหนา
ตวั อย่างที่ 1.6 สอนน้องจดั หนงั สือ อัลกอริทึมสาหรบั สอนนอ้ งจดั หนังสือ (ในหนังสือเรียน) ขั้นตอนหลกั 1. ทาขั้นตอนต่อไปนซี้ ้าจนกระท่ังไม่มีหนงั สือเหลืออยใู่ นกอง 1.1 เลือกหนงั สือที่มคี วามสูงมากทส่ี ุดในกอง 1.2 นาหนงั สือทเ่ี ลือกจากข้ันตอน 1.1 จัดเรยี งไว้บนโต๊ะ โดยวางไว้ถดั จากแถวหนงั สือที่จัดไว้แล้วก่อนหน้านี้ ถา้ ยังไม่มีหนังสือในแถวให้วางหนงั สือเล่มนีไ้ ว้เปน็ เล่มแรก 2. จบถ้ายังไม่มีหนงั สือในแถวให้วางหนงั สือเล่มนี้ไวเ้ ป็นเล่มแรก
ตัวอย่างการจดั เรียง อัลกอริทึม กองหนังสือทีเ่ หลืออยู่ 1.21 เนลาือหกนหงั นสังือสทือเ่ี ลทือีม่ กคี จวากมขส้ันูงมตาอกนท1่สี .1ดุ ในกอง สูงสดุ จดั เรยี งไว้บนโต๊ะ สงู สุด โถดา้ ยยวงั าไมงไ่มวีห้ถนดั งัจสาือกใแนถแวถหวนใังหส้วือางทหีจ่ นัดงัไสว้แือลเล้ว่มนี้ กไวอ่ ้เปนหน็ นเล้า่มนแ้ี รก หนังสือที่จัดเรียงแล้ว
ตัวอยา่ งอลั กอริทึมสาหรับการเรยี งลาดับแบบอืน่ https://www.toptal.com/developers/sorting-algorithms
Search