The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

ชื่อผู้จัดทำ เด็กหญิง เปรมิกา วังคีรี
และเด็กชาย ธนพล วังคีรี
ชั้นมัธยมศึกษาปีที่2โรงเรียนบ้านห้วยงาช้างปีการศึกษา2565

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by wpremika50, 2022-06-17 02:15:05

รายงานเรื่อง แนวคิดเชิงคำนวณ

ชื่อผู้จัดทำ เด็กหญิง เปรมิกา วังคีรี
และเด็กชาย ธนพล วังคีรี
ชั้นมัธยมศึกษาปีที่2โรงเรียนบ้านห้วยงาช้างปีการศึกษา2565

รายงาน เรอ่ื ง แนวคดิ เชงิ คำนวณ

จดั ทำโดย

เดก็ หญงิ เปรมกิ า วงั คีรี
เด็กชายธนพล วงั ครี ี

เสนอ
คุณครูวนั วรุณ นาคดี

รายงานฉบบั นเี้ ปน็ สว่ นของรายวิชาวิทยาการคำนวณ
โรงเรียนบา้ นห้วยงาชา้ ง

ภาคเรยี นที่ 1 ปีการศกึ ษา2565

คำนำ

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

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

สารบัญ

เร่อื ง หนา้
คำนำ
สารบัญ ก
หัวข้อท่ี 1 ข
หวั ขอ้ ที่ 2 1
บรรณานกุ รมนำ 2
ภาคผนวก

แนวคดิ เชงิ คำนวณ (Computational Thinking)

การแยกส่วนประกอบ และการยอ่ ยปญั หา (Decomposition)

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

แนวคิดเชิงคำนวณมีองค์ประกอบที่สำคัญ 4 ส่วน ได้แก่ การแบ่งปัญหาใหญ่เป็นปัญหาย่อย
(Decomposition) การพิจารณารูปแบบ (Pattern Recognition) การคิดเชิงนามธรรม (Abstraction)
การออกแบบอัลกอริทึม (Algorithm) ในบทเรียนนี้จะกล่าวเพียง การแบ่งปัญหาใหญ่เป็นปัญหาย่อย
(Decomposition) เทา่ นัน้

การแบ่งปัญหาใหญ่เปน็ ปญั หายอ่ ย (Decomposition)

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

ว่าประกอบดว้ ย ยางล้อ วงล้อ และซ่ลี วด หรอื ถา้ พจิ ารณาชุด ขบั เคลื่อนก็จะพบว่าประกอบดว้ ยเฟือง โซ่ และ
บนั ได เปน็ ต้น

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

กรณตี วั อยา่ งการแบง่ ปญั หาใหญ่เปน็ ปญั หายอ่ ย (Decomposition)

1. รถของกวิน

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

การแบง่ ปัญหาใหญเ่ ปน็ ปัญหายอ่ ย (Decomposition)

1. แบตเตอรห่ี มด

2. น้ำมนั เชือ้ เพลิงหมด

3. เครอ่ื งยนตม์ ีปญั หา

2. การพาจรวดไปดาวอังคาร

จากเว็บไซต์ https://csunplugged.org/en/topics/kidbots/unit-plan/sending-a-rocket-to-
mars/ เปน็ กิจกรรมที่จะใหจ้ รวดเดนิ ทางไปดาวองั คาร โดยใช้ลูกศรในการเดนิ การหมุน เพอื่ ทำภาระกิจพิชติ ดาว
องั คารใหส้ ำเร็จ เพือ่ ฝึกกระบวนการคดิ เปน็ ขน้ั ตอนของผู้เรียน และกระบวนการแกป้ ัญหา

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

การแบ่งปัญหาใหญเ่ ป็นปัญหายอ่ ย (Decomposition)

1. เดนิ ตรงไป 2 ช่อง
2. เล้ยี วขวา
3. เดนิ ตรงไป 3 ช่อง

3. พดั ลม

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

การแบ่งปญั หาใหญเ่ ป็นปญั หาย่อย (Decomposition) ของพัดลม

1. มอเตอร์พร้อมกะโหลกหลังและฐานพดั ลม
2. ตะแกรงหลงั
3. ใบพดั
4. ตะแกรงหนา้

4. การเดนิ ทาง

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

การแบง่ ปญั หาใหญ่เปน็ ปัญหายอ่ ย (Decomposition) ของพัดลม

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

การออกแบบอลั กอริทมึ (Algorithm)

แนวคิดเชิงคำนวณ (Computational Thinking) เป็นกระบวนการวิเคราะหป์ ัญหา เพอื่ ใหไ้ ด้แนวทาง
หาคำตอบอย่างเป็นข้ันตอนท่ีสามารถนำไปปฏิบตั ไิ ด้โดยบคุ คลหรือคอมพวิ เตอร์อย่างถูกตอ้ ง การคิดเชงิ คำนวณ
เปน็ กระบวนการแกป้ ญั หาในหลากหลายลักษณะ เช่น การจัดลำดับเชงิ ตรรกศาสตร์ การวิเคราะห์ข้อมูล และการ
สร้างสรรค์วธิ แี กป้ ัญหาไปทลี ะข้นั รวมทัง้ การย่อยปญั หาที่ชว่ ยใหร้ ับมอื กบั ปญั หาทซ่ี ับซ้อนหรือมลี ักษณะเป็น
คำถามปลายเปิดได้วิธีคดิ เชงิ คำนวณ จะชว่ ยทำใหป้ ัญหาท่ีซบั ซอ้ นเข้าใจได้งา่ ยขึ้น เปน็ ทักษะทีเ่ ปน็ ประโยชนอ์ ยา่ ง
ยง่ิ ตอ่ ทุก ๆ สาขาวิชา และทุกเรอ่ื งในชวี ติ ประจำวันซง่ึ ไม่ได้จำกดั อยเู่ พยี งการคดิ ให้เหมือนคอมพิวเตอร์แต่เปน็
กระบวนการคดิ แกป้ ัญหาของมนุษย์ เพื่อสั่งใหค้ อมพิวเตอร์ทำงานและชว่ ยแกป้ ัญหาตามทเี่ ราต้องการได้อย่างมี
ประสิทธภิ าพ แนวคดิ เชงิ คำนวณมอี งค์ประกอบท่ีสำคญั 4 สว่ น ไดแ้ ก่ การแบ่งปญั หาใหญเ่ ปน็ ปัญหาย่อย
(Decomposition) การพิจารณารูปแบบ (Pattern Recognition) การคดิ เชงิ นามธรรม (Abstraction) การ
ออกแบบอลั กอริทึม (Algorithm) ในบทเรยี นนจี้ ะกล่าวเพียง การออกแบบอลั กอรทิ ึม (Algorithm) เทา่ นน้ั โดยมี
รายละเอียดดังน้ี

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

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

คณุ สมบตั ขิ องอลั กอริทมึ

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

2. ใชเ้ วลาในการปฏบิ ตั ิงานนอ้ ยท่ีสุด (efficiency) อลั กอริทึมทีด่ ีต้องใชเ้ วลาในการปฏิบตั งิ านน้อย มี
ข้นั ตอนในการปฏบิ ัตงิ านท่ีถกู ต้อง

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

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

5. มีความยดื หยุ่นในการใชง้ าน

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

7. ง่ายต่อการทำความเข้าใจ (readability) อ่านงา่ ยเขา้ ใจลำดบั ขัน้ ตอนได้งา่ ย มีความชัดเจนของข้นั ตอน

เคร่อื งมอื ชว่ ยในการเขียนอัลกอรทิ ึม

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

1. บรรยาย (narrative description) เป็นการอธิบายแบบใช้ภาษาทเ่ี ราส่ือสารกันท่ัวไป เปน็ การ

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

1. เทน้ำสะอาดใส่หม้อ และต้มน้ำจนเดอื ด

2. ฉกี ซองและนำบะหมีก่ ่งึ สำเร็จรปู ใส่ลงในหม้อ

3. เทเครอ่ื งปรงุ ลงในหมอ้

4. ปดิ ฝา

5. รอประมาณ 3 นาที

6. เทใส่ชามรบั ประทานได้

2. ผงั งาน (flowchart) เป็นการใชร้ ูปภาพสัญลกั ษณ์ แทนขัน้ ตอนการเขียนโปรแกรมชว่ ยลำดบั

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

3. รหัสเทยี ม (pseudo code) เป็นการเขียนคำอธิบายข้ันตอนการทำงานของโปรแกรม โดยใช้

ถอ้ ยคำผสมระหว่างภาษาอังกฤษและภาษาการเขียนโปรแกรมแบบโครงสร้าง ซ่ึงจะชว่ ยใหผ้ ู้เขียนโปรแกรม
สามารถพฒั นาขั้นตอนต่าง ๆ ให้เปน็ โปรแกรมได้งา่ ยขึน้ ส่วนใหญม่ ักใชค้ ำเฉพาะ (Reserve Word) ทีม่ ีใน
ภาษาการเขียนโปรแกรมและมกั เขียนดว้ ยตัวอักษรตวั ใหญ่ รหสั เทียมทดี่ ี จะต้องมีความชดั เจน สนั้ และได้
ใจความ ขอ้ มูลตา่ ง ๆ ทใี่ ช้จะถกู เขยี นอยใู่ นรูปของตัวแปร

การออกแบบอัลกอรทิ มึ ในแนวคดิ เชงิ คำนวณจงึ เป็นการพัฒนากระบวนการหาคำตอบใหเ้ ปน็ ขน้ั ตอนทบี่ คุ คล
หรือคอมพิวเตอรส์ ามารถนำไปปฏิบตั ิตามเพ่ือแกป้ ัญหาได้ อัลกอริทึมท่ีดี จะต้องมีความถูกต้อง ต้องมีลำดับ
ขัน้ ตอนท่ีชัดเจน มีความยืดหยุน่ ในการใช้งาน ใช้เวลาในการพฒั นานอ้ ย และงา่ ยต่อการทำความเข้าใจ เครื่องมือ
ทีจ่ ะชว่ ยให้การเขยี นอลั กอริทึมของโปรแกรมทำได้ง่ายขึน้ ช่วยใหโ้ ปรแกรมมขี ้อผดิ พลาดนอ้ ยลง เช่น การเขียน
บรรยาย การเขยี นผังงาน หรือรหสั เทียม จะชว่ ยให้อลั กอริทมึ มคี วามถกู ตอ้ งแม่นยำ และมีข้อผิดพลาด
นอ้ ยลง แนวคิดเชิงคำนวณ (Computational Thinking) เปน็ กระบวนการวิเคราะหป์ ญั หา เพ่ือให้ได้แนวทางหา
คำตอบอยา่ งเป็นขัน้ ตอนทสี่ ามารถนำไปปฏิบัติไดโ้ ดยบคุ คลหรือคอมพวิ เตอร์อยา่ งถกู ต้อง การคิดเชิงคำนวณ เป็น
กระบวนการแก้ปญั หาในหลากหลายลกั ษณะ เชน่ การจัดลำดับเชิงตรรกศาสตร์ การวเิ คราะหข์ ้อมลู และการ
สร้างสรรคว์ ธิ ีแกป้ ัญหาไปทลี ะข้ัน รวมทง้ั การย่อยปัญหาท่ีชว่ ยใหร้ ับมอื กับปัญหาที่ซบั ซ้อนหรอื มีลักษณะเป็น
คำถามปลายเปิดไดว้ ธิ ีคิดเชงิ คำนวณ จะช่วยทำใหป้ ัญหาที่ซบั ซอ้ นเขา้ ใจได้ง่ายขึ้น เป็นทักษะทเ่ี ป็นประโยชน์อยา่ ง
ย่งิ ต่อทุก ๆ สาขาวิชา และทุกเรื่องในชวี ติ ประจำวนั ซ่งึ ไม่ได้จำกัดอยเู่ พียงการคดิ ให้เหมือนคอมพวิ เตอร์แต่เปน็
กระบวนการคิดแก้ปญั หาของมนษุ ย์ เพื่อสั่งใหค้ อมพิวเตอร์ทำงานและชว่ ยแก้ปญั หาตามที่เราต้องการไดอ้ ยา่ งมี
ประสทิ ธิภาพ แนวคดิ เชิงคำนวณมีองค์ประกอบที่สำคญั 4 ส่วน ได้แก่ การแบ่งปญั หาใหญ่เป็นปญั หาย่อย
(Decomposition) การพิจารณารูปแบบ (Pattern Recognition) การคดิ เชิงนามธรรม (Abstraction) การ

ออกแบบอลั กอริทึม (Algorithm) ในบทเรยี นน้ีจะกลา่ วเพียง การคดิ เชงิ นามธรรม (Abstraction) เท่าน้ัน โดยมี

รายละเอยี ดดังนี้

การคดิ เชิงนามธรรม (Abstraction)

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

1. การคิดเชิงนามธรรมทเ่ี กยี่ วขอ้ กับรปู ทรง

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

2. การคิดเชิงนามธรรมทีเ่ กย่ี วขอ้ กบั ตวั อกั ษร

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

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

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

3. การคดิ เชงิ นามธรรมจากเกมเลขฐานสอง

การแสดงเลขฐานสอง (เพียงแค่ใช้ 0 และ 1) เปน็ แนวคิดเชงิ นามธรรมทซ่ี ่อนความซับซอ้ นของอุปกรณ์
อเิ ล็กทรอนิกสแ์ ละฮารด์ แวรภ์ ายในคอมพวิ เตอร์ที่เกบ็ ข้อมลู สิ่งทเ่ี ป็นนามธรรมช่วยใหเ้ ราทำให้งา่ ยขน้ึ เพราะเรา

สามารถลดทอนต่อรายละเอียดทเี่ ราไม่จำเป็นตอ้ งรู้ ในกรณีนร้ี ายละเอียดท่ีเราสามารถละเว้นได้ ได้แก่ : อุปกรณ์
คอมพิวเตอร์ เชน่ วงจรอเิ ล็กทรอนกิ สแ์ ละแรงดันไฟฟ้าในวงจร เพอื่ จัดเก็บและย้ายข้อมลู และฟสิ ิกสเ์ ชิงซ้อนและ
ทฤษฎที างคณิตศาสตรท์ เี่ กย่ี วกบั คอมพิวเตอร์ เราไมจ่ ำเปน็ ต้องเข้าใจวา่ วงจรเหล่านที้ ำงานอย่างไรเพื่อใช้ข้อมลู
และแสดงส่ิงตา่ ง ๆ โดยใช้เลขฐานสอง การใชเ้ ลขฐานสองเป็นสิ่งท่เี ป็นนามธรรมของวงจรเหล่านี้และชว่ ยให้เรา
สามารถแทนตัวเลขทที่ ำจากบติ (0s และ 1s) เพื่อทำความเขา้ ใจขอ้ มลู และแก้ไขปัญหาโดยไมต่ อ้ งคดิ เก่ยี วกับส่งิ ที่
เกดิ ข้นึ ภายใต้เคร่ืองคอมพวิ เตอร์ เราสามารถใช้เลขฐานสองเพื่อแสดงข้อมลู ทุกประเภททีเ่ กบ็ ไว้ในคอมพวิ เตอร์
เมอ่ื เราแสดงข้อมลู รปู แบบอนื่ ๆ (เช่น ตัวอักษรรปู ภาพและเสียง) เรายงั ใช้นามธรรมเพราะเราซ่อนรายละเอยี ด
ของตวั เลขไบนาร่ที ้ังหมดท่ีอยู่ด้านลา่ งและเพียงแคด่ ขู ้อมูลท้ังหมด ข้อมลู ทุกรูปแบบถูกแสดงเปน็ ตวั เลข สำหรบั
ขอ้ ความทเ่ี รามีตวั เลขสำหรับตวั อกั ษรแต่ละตวั สำหรบั ภาพที่เราใช้ตวั เลขสำหรับแต่ละสีและอืน่ ๆ เราใชส้ ่ิงทเี่ ป็น
นามธรรมหลายชัน้ การแปลงและเปน็ ตัวแทนของเลขฐานสองโดยใชส้ ิ่งอืน่ ๆ นอกเหนือจาก“ 1 และ 0 ”,“ ขาว
ดำ” และ“ ปิดและเปดิ ” หากคณุ สามารถเปลีย่ นคำเชน่ "ดำ" และ "ขาว" ด้วย 0 และ 1 โดยทผี่ ้เู รยี นไม่ต้องกังวล
เก่ียวกับความแตกต่างผู้เรียนก็กำลังใชส้ ิง่ ทเ่ี ป็นแนวคดิ เชงิ นามธรรม

4. การคัดแยกรายละเอยี ดปลีกย่อย

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

5. การอธบิ ายปญั หาโดยใช้รายละเอียด และแบบซอ่ นรายละเอียด

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

ปัญหาโดยใชร้ ายละเอยี ด การอธิบาย

วาดตัวบา้ นดว้ ยส่เี หลยี่ มจตั รุ ัสสเี หลอื ง ขนาดด้านละ 50 หนว่ ย ตง้ั อยตู่ ำแหนง่ มุมล่างซา้ ยที่พกิ ัด (120,90)
ด้านบนของสเ่ี หล่ยี มวาดหลงั คาเปน็ รูปสามเหลี่ยมด้านเท่าสีเขยี วขนาดด้านละ 50 หน่วย

การอธบิ ายปัญหาแบบซอ่ นรายละเอยี ด

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

การพจิ ารณารปู แบบ (Pattern Recognition)

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

แบบรูป (Pattern)

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

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

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

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

ในการเขยี นโปรแกรมแบบ Blockly ดว้ ยโปรแกรม Scratch หากเราต้องการสรา้ งรปู บันไดเป็นขน้ั ๆ 5
ขน้ั หากเราใชค้ ำสง่ั ดังรูปที่ 3 เราจะต้องเขยี นคำส่ังดังกล่าว ถึง 5 ครั้ง ดังรูปท่ี 4

ภาพที่ 3 การเขยี นโปรแกรมแบบ Blockly

ภาพที่ 4 สร้างรูปบันไดเป็นขั้น ๆ 5 ข้ัน

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

ภาพที่ 5 สร้างรปู บันไดเปน็ ขนั้ ๆ 5 ขัน้ โดยใช้คำส่ัง Repeat

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

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

การแกป้ ญั หา

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

หลกั การและความหมายการแกป้ ัญหา

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

ขั้นตอนการแก้ปัญหา

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

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

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

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

3. กำหนดวิธกี ารประมวลผล (Process Specification) ต้องทราบวธิ กี ารประมวลผล หรือวิธคี ดิ ให้ได้ผลลัพธต์ าม
ต้องการ

1. การเลือกเครื่องมือและออกแบบขนั้ ตอนวิธี

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

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

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

1. การดำเนนิ การแกป้ ญั หา

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

1. การตรวจสอบและปรับปรงุ

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

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

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

แหล่งที่มา

ดนัยเทพ. (2562, 12 กนั ยายน). หลักการแก้ปัญหาดว้ ยคอมพวิ เตอร์. สืบคน้ เมอื่ 12 กันยายน 2562. จาก
https://danaithep.wordpress.com/2012/07/23/บทที่-6-หลกั การแกป้ ัญหาด-2.

ปรดี าภรณ์ ไชยแสง. แนวคดิ เชิงคำนวณ. สืบค้นเมื่อ 12 สิงหาคม 2562. จาก
https://sites.google.com/a/kjn.ac.th/withyakar-khanwn/kh-naewkhid-cheing-khanwn

สถาบันส่งเสริมการสอนวิทยาศาสตร์และเทคโนโลยี. (2562). เทคโนโลยี (วทิ ยาการคำนวณ). สำนกั พิมพ์
จฬุ าลงกรณ์ : กรงุ เทพมหานคร.

การเขียนรหสั ลำลองและการเขยี นผงั งาน

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

รหสั ลำลอง

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

หลกั เกณฑ์การเขียนรหัสลำลอง

มีการสรุปหลกั เกณฑ์ ในการเขียนรหัสลำลองดงั นี้

1. ถ้อยคำหรอื ประโยคคำสง่ั (statement) ใหเ้ ขียนอยใู่ นรปู แบบของภาษาอังกฤษอย่างง่าย
2. ในหนง่ึ บรรทัด ใหเ้ ขยี นประโยคคำสงั่ เพียงคำสัง่ เดยี ว
3. ควรใชย้ อ่ หนา้ ใหเ้ ปน็ ประโยชน์เพื่อแยกคำเฉพาะ (Keywords) ได้อย่างชดั เจน รวมถึงจดั โครงสร้างการ

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

เหล่าน้นั ด้วย เพือ่ ให้สามารถเรียกใชโ้ มดูลเหล่านน้ั ได้

ประโยชน์ของการเขยี นรหัสลำลอง

1. เป็นเคร่อื งมอื ในการกำหนดโครงร่างกระบวนการทำงานของการเขียนโปรแกรมแตล่ ะโปรแกรม
2. เปน็ ตน้ แบบในการทบทวน ปรับปรงุ แก้ไข และพฒั นาโปรแกรมของโปรแกรมเมอร์ และนกั วเิ คราะห์

ระบบ
3. เปน็ ตวั กำหนดงานเขยี นโปรแกรม เพ่ือใหโ้ ปรแกรมเมอร์นำไปพัฒนาเปน็ โปรแกรมคอมพิวเตอร์ เพื่อสง่ั ให้

คอมพวิ เตอร์ทำงานตามกระบวนการที่ได้จำลองกระบวนการจรงิ ไวใ้ นรหสั ลำลอง

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

การเขยี นผังงาน

ความหมายของการเขยี นผงั งาน

ผังงาน (Flowchart) คอื รปู ภาพ (Image) หรือสัญลักษณ(์ Symbol) ทใี่ ช้เขียนแทนข้ันตอน คำอธบิ าย
ขอ้ ความหรือคำพดู ที่ใช้ในอัลกอรทิ ึม (Algorithm) เพราะการนำเสนอขน้ั ตอนของงานให้เขา้ ใจตรงกนั ระหว่าง
ผ้เู ก่ยี วข้อง ดว้ ยคำพูด หรอื ข้อความ ทำไดย้ ากกว่าเมื่อใชร้ ูปภาพ หรือสัญลกั ษณ์

ประเภทของผังงาน

ในการเขียนผังงานน้ันสามารถจำแนกแบบของผังงานออกเปน็ 2 แบบใหญ่ ๆ คือ

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

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

สญั ลกั ษณ์ผงั งานโปรแกรม ( Program Flowchart )

การเขยี นผงั โปรแกรมจะประกอบไปดว้ ยการใช้สัญลักษณม์ าตรฐานต่าง ๆ ที่เรยี กว่า สญั ลักษณ์ ANSI ( American
National Standards Institute ) ในการสร้างผังงาน ดังตัวอยา่ งทแ่ี สดงในรปู ตอ่ ไปนี้

ลกั ษณะโครงสร้างของผงั งาน
ผงั งานทว่ั ไปจะประกอบดว้ ยโครงสร้างพื้นฐาน 3 รูปแบบต่อไปน้ีคือ

1. โครงสรา้ งแบบเป็นลำดับ (Sequence structure)
2. โครงสร้างแบบมีการเลอื ก (Selection structure)
3. โครงสรา้ งแบบทำซำ้ (Iteration structure)

โครงสรา้ งแบบเปน็ ลำดับ (Sequence Structure)

เป็นโครงสร้างพ้ืนฐานของผงั งาน และเป็นลกั ษณะขน้ั ตอนการทำงานท่ีพบมากท่ีสดุ คอื ทำงานทลี ะ
ขั้นตอนลำดบั

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

ประโยชนข์ องผังงาน

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

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

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

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

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

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

บรรณนานุกรม

ชาญวทิ ย์ ศรอี ดุ ม. (2562, 12 สิงหาคม). แนวคดิ เชงิ คำนวณ. สืบคน้ เมื่อ 12 สงิ หาคม 2562. จาก
http://charnwit.in.th/?p=1302#.XX8Q4dUzbIU.

สถาบนั สง่ เสริมการสอนวิทยาศาสตร์และเทคโนโลยี. (2562). เทคโนโลยี (วทิ ยาการคำนวณ). สำนกั พิมพ์
จฬุ าลงกรณ์ : กรงุ เทพมหานคร.

csunplugged.org. (2562, 12 สงิ หาคม). กจิ กรรมส่งจรวดไปดาวอังคาร สืบค้นเม่ือ 12 สิงหาคม 2562, จาก
https://csunplugged.org/en/topics/kidbots/unit-plan/sending-a-rocket-to-mars.

Tim Bell, Ian H. Witten and Mike Fellows. (2562). ซีเอส อนั ปล๊ักโปรแกรมเสรมิ สมรรถนะและขยาย
ความสามารถของเดก็ ระดับประถมศกึ ษา. สถาบนั เทคโนโลยีนานาชาติสิรินธร มหาวทิ ยาลัยธรรมศาสตร์
: ปทมุ ธานี

เจ๊ะมาดีนา กรมเมือง. (2562, 12 สิงหาคม). การออกแบบและการเขยี นอลั กอริทมึ . สบื ค้นเม่ือ 12 สิงหาคม
2562, จาก https://sites.google.com/site/computernanajang/bth-reiyn-

hnwy-kar-reiyn-ru-thi-1-kar-xxkbaeb-laea-kar-kheiyn-xal-kx-ri-thum.

รตั นา วงศภ์ ูงา. (2562, 12 สงิ หาคม). อลั กอริทมึ . สบื คน้ เม่อื 12 สงิ หาคม 2562, จาก
https://sites.google.com/a/wwk.ac.th/googlesites/hnwy-thi-2/xal-kx-ri-thum.

สถาบนั สง่ เสริมการสอนวทิ ยาศาสตรแ์ ละเทคโนโลยี. (2562). เทคโนโลยี (วิทยาการคำนวณ). สำนกั พมิ พ์
จฬุ าลงกรณ์ : กรุงเทพมหานคร.

csunplugged.org. (2562, 12 สิงหาคม). กิจกรรมส่งจรวดไปดาวอังคาร. สบื ค้นเมือ่ 12 สิงหาคม 2562,จาก
https://csunplugged.org/en/topics/kidbots/unit-plan/sending-a-rocket-to-mars.

Tim Bell, Ian H. Witten and Mike Fellows. (2562). ซเี อส อนั ปลกั๊ โปรแกรมเสริมสมรรถนะและขยาย
ความสามารถของเด็กระดับประถมศึกษา. สถาบันเทคโนโลยนี านาชาตสิ ิรินธร มหาวทิ ยาลยั ธรรมศาสตร์
: ปทุมธานี

สถาบันสง่ เสริมการสอนวทิ ยาศาสตร์และเทคโนโลยี. (2562). เทคโนโลยี (วทิ ยาการคำนวณ). สำนกั พิมพ์
จุฬาลงกรณ์ : กรงุ เทพมหานคร.

csunplugged.org. (2562, 12 สิงหาคม). กิจกรรมสง่ จรวดไปดาวองั คาร สบื คน้ เมื่อ 12 สิงหาคม 2562,จาก
https://csunplugged.org/en/topics/kidbots/unit-plan/sending-a-rocket-to-mars.

Tim Bell, Ian H. Witten and Mike Fellows. (2562). ซีเอส อันปลกั๊ โปรแกรมเสรมิ สมรรถนะและขยาย
ความสามารถของเด็กระดับประถมศกึ ษา. สถาบันเทคโนโลยนี านาชาติสริ นิ ธร
มหาวทิ ยาลยั ธรรมศาสตร์ : ปทมุ ธานี

Warayuphat Panumphan. (2562, 12 สิงหาคม). Algorithm. สบื ค้นเม่อื 12 สิงหาคม 2562, จาก
http://jsbg.joseph.ac.th/6150/index.php?option=com_content&view=article&id=95&Item
id=95

นาถลดา มนต์ทอง. (8 ตุลาคม 2562). แบบฝกึ ทักษะคณิตศาสตร์ ม.1 เรอื่ ง แบบรูปและความสัมพันธ์. สืบค้น
เมอื่ 8 ตุลาคม 2562, จาก http://www.tup.ac.th/tup/learning.

อนวุ ฒั น์ พานิพัด. (8 ตุลาคม 2562). แนวคดิ เชิงคำนวณ. สืบค้นเม่ือ 8 ตลุ าคม 2562,จาก
https://www.teachernu.com/2019/01/02/แนวคดิ เชิงคำนวณสถาบนั ส่งเสรมิ การสอน
วทิ ยาศาสตรแ์ ละเทคโนโลยี. (2562). เทคโนโลยี (วิทยาการคำนวณ). สำนักพิมพ์จุฬาลงกรณ์ :
กรงุ เทพมหานคร.

Tim Bell, Ian H. Witten and Mike Fellows. (2562). ซีเอส อันปลัก๊ โปรแกรมเสรมิ สมรรถนะและขยาย
ความสามารถของเด็กระดับประถมศกึ ษา. สถาบันเทคโนโลยีนานาชาตสิ ิรินธร มหาวทิ ยาลัยธรรมศาสตร์
: ปทมุ ธานี

ดนยั เทพ. (2562, 12 กนั ยายน). หลักการแกป้ ัญหาดว้ ยคอมพิวเตอร.์ สบื ค้นเมือ่ 12 กันยายน 2562. จาก
https://danaithep.wordpress.com/2012/07/23/บทท่ี-6-หลักการแกป้ ญั หาด-2.

ปรดี าภรณ์ ไชยแสง. แนวคิดเชิงคำนวณ. สบื ค้นเมอ่ื 12 สิงหาคม 2562. จาก
https://sites.google.com/a/kjn.ac.th/withyakar-khanwn/kh-naewkhid-cheing-khanwn

สถาบนั สง่ เสรมิ การสอนวิทยาศาสตร์และเทคโนโลย.ี (2562). เทคโนโลยี (วิทยาการคำนวณ). สำนกั พมิ พ์
จุฬาลงกรณ์ : กรงุ เทพมหานคร.

เจษฎา กอ้ งสาคร. (2562, 12 กันยายน). การเขียนผงั งาน. สบื คน้ เม่อื 12 กนั ยายน 2562. จาก
https://www.cmarea3.go.th/2562/การเขยี นผงั งาน-flowchart/

นริ ุธ อำนวยศลิ ป์ (2548.) โครงสรา้ งข้อมลู : การเขียนโปรแกรมและการประยุกต์. ดวงกมลสมัย : กรุงเทพฯ.

สถาบนั สง่ เสรมิ การสอนวทิ ยาศาสตร์และเทคโนโลยี. (2562). เทคโนโลยี (วิทยาการคำนวณ). สำนกั พมิ พ์
จฬุ าลงกรณ์ : กรุงเทพมหานคร.

โอภาส เอย่ี มสิริวงศ.์ (2549.). โครงสรา้ งขอ้ มลู เพ่ือการออกแบบโปรแกรมคอมพิวเตอร.์ ซีเอด็ ยเู คชั่น :
กรุงเทพฯ.


Click to View FlipBook Version