SlideShare a Scribd company logo
บทที่ 5
                                                     การจําลองความคิด




                                                                          ที่มา http://www.seubsan.net/th/images/stories/yt/p4_Cap.gif
เนื้อหา
     5.1 ขั้นตอนการพัฒนาซอฟตแวร
              o การวิเคราะหและกําหนดรายละเอียดของปญหา
              o การเลือกเครืองมือและออกแบบขั้นตอนวิธี
                            ่
              o การดําเนินการแกปญหา
              o การตรวจสอบและปรับปรุง
     5.2 การจําลองความคิด
              o ขอความหรือคําบรรยาย (Pseudo code)
              o สัญลักษณหรือแผนภาพ (Flowchart)
                    - แบบลําดับ
                    - แบบทางเลือก
                    - แบบทําซ้ํา
     5.3 การเขียนโปรแกรม
              o โครงสรางแบบลําดับ
              o โครงสรางแบบมีทางเลือก
              o โครงสรางแบบทําซ้ํา

ผลการเรียนรูที่คาดหวัง
  1. อธิบายขั้นตอนการพัฒนาซอฟตแวรและอธิบายถึงวิธการในแตละขันตอนได
                                                  ี           ้
  2. อธิบายความหมายและเหตุผลในการเขียนแผนภาพที่ใชในการออกแบบโปรแกรมได
  3. บอกสัญลักษณและสามารถเขียนผังงานที่ใชในการออกแบบโปรแกรมได
-2-

5.1 ขั้นตอนการพัฒนาซอฟตแวร

          ในชีวิตประจําวันทุกคนตองเคยพบกับปญหาตางๆ ไมวาจะเปนปญหาดานการเรียน การงาน การเงิน หรือ
แมแตการเลนเกม เมื่อพบกับปญหาแตละคนมีวิธีท่จะจัดการหรือแกปญหาเหลานั้นแตกตางกันไป ซึ่งแตละวิธีการอาจ
                                                 ี
ใหผลลัพธที่เหมือนหรือแตกตางกันเล็กนอย ทั้งนี้ขึ้นอยูกับความรู ความสามารถ และประสบการณของบุคคลผูนั้น
อยางไรก็ตาม หากเรานําวิธีการแกปญหาตางวิธีนั้นมาวิเคราะหใหดี จะพบวาสามารถสรุปวิธีการเหลานั้นเปนทฤษฎี
ซึ่งมีรูปแบบที่แนนอนได และบางครั้งตองอาศัยการเรียนรูในระดับสูงเพื่อแกปญหาบางอยางใหสมบูรณแบบ แตกอนที่
เราจะศึกษาตอไป ลองพิจารณาปญหาตอไปนี้

          ตัวอยางที่ 1 เกมทายใจ คือ เกมใหผูเลนทายตัวเลข 3 ตัว ในการเลนเกมตองใชผูเลน 2 คน คนที่หนึ่ง คือ
ผูกําหนด เปนคนกําหนดเลข 3 ตัว ที่ไมซ้ํากันโดยเลือกจากกลุมตัวเลข 1-9 และอีกคนหนึ่งคือ ผูทาย เปนผูทายเลข 3
ตัว ที่ไมซ้ํากัน ที่ผูกําหนดไดกําหนดเอาไวแลว หลังจากที่ผูทายทายเลขแตละครั้ง ผูกําหนดตองใหรายละเอียดวา
ตัวเลขที่ทายมานั้นถูกตองกี่ตัว และในกรณีที่ตัวเลขที่ทายมาถูกตําแหนงดวยก็ตองบอกวาถูกตําแหนงกี่ตัว เชน ถา
ตัวเลขที่กําหนดไวเปน 815 และ ผูทายทายวา 123 ผูกําหนดตองแจงวาตัวเลขที่ทายนั้นถูก 1 ตัว และไมมีตัวใดถูก
ตําแหนง รูปที่ 1 เปนตารางแสดงขอมูลการเลนเกมทายใจ

                 ตัวเลขที่ทาย                    จํานวนตัวเลขที่ถูก          จํานวนตําแหนงที่ถูก
                     123                                 1                            -
                     415                                 2                            2
                     425                                 1                            1
                     416                                 1                            1
                     715                                 2                            2
                     815                                 3                            3
                                        รูปที่ 1 ขอมูลการเลนเกมทายใจ

          จะเห็นวาการแกปญหาดังกลาวขางตน นอกจากจะใชวิธีลองผิดลองถูกในการทายครั้งแรกๆ แลวยังมีการใช
เหตุผลประกอบการแกปญหาซึ่งเราเรียกวิธีการดังกลาววา "วิธีขจัด" (method of elimination) กลาวคือ จะแยกขอมูล
ออกเปนกรณีที่เปนไปไมไดทิ้ง จนเหลือกรณีที่เปนไปได วิธีการดังกลาวสามารถอธิบายไดวาทําไมจึงคิดหรือทํา
เชนนั้น รูปแบบของการใชเหตุผลประกอบการแกปญหาอาจแตกตางกัน ขึ้นอยูกับเงื่อนไข ในปญหาบางปญหา อาจจะ
ขจัดใหเหลือกรณีเดียวไมได ก็อาจจะทําใหเหลือกรณีนอยที่สุด นอกจากเกมทายใจเรายังมีเกมลับสมองที่นาสนใจและ
ทาทายความสามารถในการแกปญหาอยูอีกมากมายที่หาเลนไดตามเว็บไซต
                               

          นอกจากวิธีการแกปญหาที่ยกตัวอยางมาซึ่งไดแก วิธีการลองผิดลองถูก การใชเหตุผล การใชวิธีขจัด
ยังมีวิธี การแกป ญหาอีกมากมายที่ผูแกป ญหาสามารถเลือกใชใ ห เข ากับ ตั ว ปญหาและประสบการณของผู
แกปญหาเอง แตอยางไรก็ตาม วิธการเหลานี้ลวนมีขั้นตอนที่คลายคลึงกัน และจากการศึกษาพฤติกรรมในการ
                                ี
เรียนรูและแกปญหาของมนุษยพบวาโดยปกติมนุษยมีกระบวนการในการแกปญหาประกอบดวย 4 ขั้นตอนดัง
รูปที่ 2
-3-



                                                  วิเคราะหและกําหนด
                                                 รายละเอียดของปญหา

                                               เลือกเครื่องมือ / ออกแบบ


                                                  ดําเนินการแกปญหา


                                                ตรวจสอบและปรับปรุง




                                        รูปที่ 2 แสดงกระบวนการแกปญหา

1) การวิเคราะหและกําหนดรายละเอียดของปญหา (State the problem)
          ขั้นตอนนี้เปนขั้นตอนแรกสุดกอนที่จะลงมือแกปญหา แตผูแกปญหามักจะมองขามความสําคัญของ
  ขั้นตอนนี้อยูเสมอ จุดประสงคของขั้นตอนนี้ คือ การทําความเขาใจกับปญหาเพื่อแยกใหออกวาขอมูลที่
  กําหนดมาในปญหาหรือเงื่อนไขของปญหาคืออะไร และสิ่งที่ตองการคืออะไร อีกทั้งวิธีการที่ใชประมวลผล ใน
  การวิเคราะหปญหาใด กลาวโดยสรุปแลวองคประกอบในการวิเคราะหมีอยู 3 องคประกอบ

           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
-4-

   ตัวอยางที่ 3 แสดงการวิเคราะหและกําหนดรายละเอียดของการหาคา x เมื่อ x คือจํานวนเต็มจํานวนหนึ่ง
   ในกลุมจํานวนเต็ม 5 จํานวนที่มีคาเฉลี่ยเปน 10 และจํานวนอีก 4 จํานวนไดแก 3 4 8 และ 12
            1. การระบุขอมูลเขา จากโจทยขอมูลเขา ไดแก 2.1 จํานวนอีก 4 จํานวน คือ 3 4 8 12 คาเฉลี่ย
            ของจํานวนทั้ง 5 จํานวน คือ 10
            2. การระบุขอมูลออก จากโจทยสิ่งที่เปนผลลัพธ คือ คา x
                        
            3. การกําหนดวิธีการประมวลผล จากโจทยและความหมายของ "คาเฉลี่ย" เราสามารถสรุปขั้นตอน
            ของการประมวลผลไดดังนี้
                    3.1 หาคาผลรวมของจํานวนเต็มทั้ง 5 โดยนําคาเฉลี่ยคูณดวยจํานวนของเลขจํานวนเต็ม
                          นั่นคือ 10 * 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)
               หลังจากที่ไดออกแบบขั้นตอนวิธีเรียบรอยแลว ขั้นตอนนี้เปนขั้นตอนที่ตองลงมือแกปญหาโดยใช
   เครื่ อ งมื อ ที่ไ ด เ ลื อ กไว หากการแก ป ญ หาดั ง กล า วใชค อมพิ ว เตอร เ ข ามาช ว ยงาน ขั้ น ตอนนี้ ก็เ ป น การใช
   โปรแกรมสําเร็จ หรือใชภาษาคอมพิวเตอรเขียนโปรแกรมแกปญหา ขั้นตอนนี้ตองอาศัยความรูเกี่ยวกับ
   เครื่องมือที่เลือกใช ซึ่งผูแกปญหาตองศึกษาที่เขาใจและเชี่ยวชาญ ในการดําเนินการอาจพบแนวทางที่ดีกวาที่
   ออกแบบไวก็สามารถปรับเปลี่ยนได
-5-

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



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

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

           แบบแปลนเหลานั้นจะอยูในรูปลักษณะของการวาดภาพหรือแสดงเครื่องหมายซึ่งเปนที่เขาใจกันระหวาง
ผูเกี่ยวของ แบบแปลนจะตองจัดทําใหเสร็จกอนที่จะลงมือกอสราง โดยผานการตรวจสอบทบทวนและพิจารณาจาก
ผูเกี่ยวของหลายฝาย เมื่อเห็นวาเปนที่ถูกตองและพอใจของทุกฝายแลว จึงกอสรางตามแบบนั้น แตถายังไมเปนที่
พอใจ ก็จะพิจารณาแกไขแบบแปลนสวนนั้น ๆ เสียกอนจะไดไมตองรื้อถอนหรือทุบทิ้งภายหลัง และเมื่อตองการ
ซอมแซมหรือตอเติมก็นําเอาแบบแปลนเดิมมาตรวจสอบและเพิ่มแบบแปลนในสวนนั้นไดโดยงาย การใชแบบแปลนจึง
เปนสิ่งที่จําเปนระหวางชางกอสราง ผูออกแบบและผูเกี่ยวของอื่น ๆ เปนอยางมาก เพราะประหยัดเวลา คาใชจายและ
เขาใจงาย เมื่อสรุปรวมแลวแบบแปลนเหลานั้นก็คื อขอตกลงใหสรางอาคารของผูจางกับผู รับจางที่อ ยูในรูป แบบ
กะทัดรัด แทนที่จะเขียนเปนขอความที่เปนลายลักษณอักษรอยางยืดยาว และยังเปนเครื่องมือใหชางใชในการกอสราง
อีกดวย

         เครื่องมือที่ใชในการจําลองความคิดมักจะประกอบขึ้นดวยเครื่องหมายที่แตกตางกันหลายอยาง แตพอสรุปได
เปน 2 ลักษณะ ไดแก
         1. ขอความหรือคําบรรยาย
         2. สัญลักษณ

        5.2.1) ขอความหรือคําบรรยาย
                 เปนการเขียนเคาโครงดวยการบรรยายเปนภาษาที่มนุษยใชสื่อสารกัน เพื่อใหทราบถึงขั้นตอนการ
        ทํางานของโปรแกรมแตละตอน ในบางครั้งอาจใชคําสั่งของภาษาที่ใชเขียนโปรแกรมก็ได
                 การเขียนขอความเพื่อการบรรยายขั้นตอนวิธีในการแกปญหาทางคอมพิวเตอร สามารถเรียกอีก
        อยางหนึ่งไดวา รหัสเทียม (pseudo code)
-6-


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

       หลักการทั่วไปในการเขียนรหัสเทียม
           1. สัญลักษณที่ใชในการดําเนินการทางคณิตศาสตรตางๆ จะถูกใชงานตามปกติ คือ “+” สําหรับ
                                                                
              การบวก “-” สําหรับการลบ “*” สําหรับการคูณ และ “/” สําหรับการหาร
           2. ชื่อขอมูลแทนจํานวนที่จะถูกดําเนินการ
           3. การกําหนดคาใหกับชื่อขอมูล เชน
              เมื่อเราตองการกําหนดให ขอมูล pi มีคาเทากับ 3.14 สามารถเขียนไดดวยขอความ
              pi←3.14 หรือ pi:=3.14 หรือ pi=3.14
              ในการกําหนดคาทางคอมพิวเตอรดานซายของเครื่องหมายมักใชแทน ที่เก็บขอมูล และ
              ดานขวาแทน ขอมูลที่ตองการนําไปเก็บ (ดังนั้นหากใชขอความวา 3.14=pi ถือวาไมถูกตอง
              ตามความหมายนี้)
           4. คําสงวนบางคําที่ใชในภาษาระดับสูงทั่วไปอาจถูกนํามาใช เชน Read หรือ Enter สําหรับ
              การรับขอมูลเขา และ Write หรือ Print สําหรับการแสดงขอมูลออก
           5. การเพิ่ ม หรื อ ลดระยะย อ หน า อย า งเหมาะสม เพื่ อ แสดงระดั บ ของขั้ น ตอนการทํ า งานใน
              โครงสรางควบคุมการทํางานในกลุมเดียวกัน

5.2.2) สัญลักษณหรือแผนภาพ
         เครื่องหมายรูปแบบตางๆ ซึ่งใชสําหรับสื่อสารความหมายใหเขาใจตรงกัน สถาบันมาตรฐานแหงชาติ
อเมริกัน (The American National Standard Institute, ANSI) ไดกําหนดสัญลักษณไวเปนมาตรฐานแลว
สมควรนําไปใชไดตามความเหมาะสมตอไป ซึ่งมีรายละเอียดรูปแบบและความหมายที่ควรทราบตามตาราง
ตอไปนี้

       การนําสัญลักษณไปใชเพื่อแสดงขั้นตอนการทํางานตางๆ ของงานหรือโปรแกรม รวมถึงแสดงการ
ไหลของขอมูลในระบบตั้งแตแรกจนไดผลลัพธตามตองการเรียกวา การเขียนผังงาน(Flowchart) ซึ่งสามารถ
แบงออกไดเปน 2 แบบคือ
-7-

         1. ผังงานระบบ(System Flowchart) หมายถึง ผังงานที่แสดงขั้นตอนตางๆ ในการทํางานของ
            ระบบ ชวยอธิบายลําดับการทํางานของสวนตางๆ ในระบบ เชน การนําขอมูลเขา(Input) ถูกเก็บ
            อยูที่ใดบาง ใช สื่อบัน ทึกขอ มูลแบบใด ลักษณะของการประมวลผล ตลอดจนลักษณะของ
            ผลลัพธ(Output)              ผังงานระบบจะชวยอํานวยความสะดวกใหแกผูเขียนโปรแกรมและผูที่
            เกี่ยวของที่ตองการทําความเขาใจการทํางานของระบบ ตัวอยางดังรูปที่ 3


                                                เอกสารขอมูล


                                           โปรแกรมปรับปรุงขอมูล



                                       แฟมขอมูล              รายงาน



                                         รูปที่ 3 ผังงานระบบ

         2. ผังงานโปรแกรม(Program Flowchart) หมายถึง ผังงานที่ใชในการแสดงการทํางานของ
            โปรแกรมโดยละเอียดในแตละขั้นตอน ผังงานโปรแกรมเปนสิ่งจําเปนสําหรับผูเขียนโปรแกรม
            เพราะตองใชเปนแนวทางในการเขียนโปรแกรมและเมื่อโปรแกรมเกิดขอผิดพลาดการเขาไป
            วิเคราะหผังงานโปรแกรมจะทําไดงายกวาการเขาไปวิเคราะหตัวโปรแกรมโดยตรง

ประโยชนของผังงาน
      1. ใชแทนการจําลองความคิด ชวยใหเขาใจลําดับและความสัมพันธระหวางขั้นตอนในการทํางาน
          ตางๆ
      2. ใช เ ปน สื่ อ กลางในการติ ดต อ ประสานความคิ ด ระหวา งผู ที่เ กี่ ยวข อ ง เชน นั กวิ เ คราะหร ะบบ
          (systems analyst) นักเขียนโปรแกรม(programmer)
      3. ชวยในการทดสอบหรือทบทวนขั้นตอนการทํางาน เพื่อหาขอผิดพลาด
-8-

ตารางที่ 1 แสดงสัญลักษณและความหมายของสัญลักษณ

    สัญลักษณ                             ความหมาย

                          การทํางานดวยมือ ( Manual Operation ) แทนจุดที่มี
                          การทํางานดวยแรงคน



                          การนําขอมูลเขา-ออกโดยทั่วไป(General input/output) แทนจุดที่จะนําขอมูล
                          เขาหรือออกจากระบบคอมพิวเตอรโดยไมระบุชนิดอุปกรณ


                          แถบบันทึกขอมูล(Magnetic          tape) แทนจุดที่จะนําขอมูลเขาหรือออกจาก
                          โปรแกรมดวยแถบบันทึกขอมูล


                          จานบันทึกขอมูล(Magnetic disk) แทนจุดที่จะนําขอมูลเขาหรือออกจากโปรแกรม
                          ดวยจานบันทึกขอมูล


                          การปอนขอมูลเขาดวยมือ ( Manual Input ) แทนจุดที่จะนําขอมูลเขา
                          ดวยมือ


                          การแสดงขอมูล ( Display ) แทนจุดที่จะนําขอมูลเขาดวยจอภาพ


                          การทําเอกสาร ( Document ) แทนจุดที่มีขอมูลเปนเอกสารหรือแสดงขอมูลดวย
                          เครื่องพิมพ


                          การตัดสินใจ ( Decision ) แทนจุดที่จะตองเลือกปฏิบัติอยางใดอยางหนึ่ง


                          การปฏิบัติงาน ( Process) แทนจุดที่มการปฏิบัติงานอยางใดอยางหนึ่ง
                                                             ี
-9-

การเตรียมการ (Preparation) แทนจุดกําหนดชื่อขอมูลหรือคาเริ่มตนตางๆ


การเรียกโปรแกรมภายนอก (External subroutine) แทนจุดเรียกใชโปรแกรม
ยอยที่ไมไดอยูในโปรแกรมนั้น


การเรียกโปรแกรมภายใน (Internal subroutine) แทนจุดเรียกใชโปรแกรมยอยที่
อยูในโปรแกรมนั้น


การเรียงขอมูล (Sort) แทนจุดที่มีการเรียงขอมูลใหมตามขอกําหนด


ทิศทาง (Flow line) แทนทิศทางขั้นตอนการดําเนินงานซึ่งจะปฏิบัติตอเนื่องกัน
ตามหัวลูกศรชี้


หมายเหตุ (Annotation) แทนจุดที่แสดงรายละเอียดเพิ่มเติมหรือหมายเหตุของจุด
ตางๆ ที่แสดงในผังงานดวยสัญลักษณไมชัดเจน


การติดตอทางไกล (Communication Link) แทนชวงที่มีการติดตอหรือการยาย
ขอมูลดวยระบบติดตอทางไกล


จุดเชื่อมตอ (Connector)   แทนจุดเชื่อมตอของผังงานเมื่อใชสัญลักษณเพื่อให
ดูงาย


จุดเชื่อมตอหนากระดาษ (Off      page     Connector)    แทนจุดเชื่อมตอของ
ผังงานที่อยูคนละหนากระดาษ


เริ่มตนและลงทาย (Terminal)        แทนจุดเริ่มตนและลงทายของผังงานของ
โปรแกรมหลักและโปรแกรมยอย
- 10 -

ตัวอยางที่ 5 การวางแผนไปโรงเรียน
        การจําลองความคิดดวยรหัสเทียม                    การจําลองความคิดเปนสัญลักษณ
        เริ่มตน
                   ตื่นนอน                                         เริ่มตน
                   อาบน้ําแตงตัว
                   ไปโรงเรียน                                       ตื่นนอน
        จบ
                                                                 อาบน้ําแตงตัว

                                                                  ไปโรงเรียน


                                                                      จบ


ตัวอยางที่ 6 การคํานวณพื้นที่รปวงกลม
                               ู
        การจําลองความคิดดวยรหัสเทียม                   การจําลองความคิดเปนสัญลักษณ
        เริ่มตน
                   รับคา radius                                  เริ่มตน
                   คํานวณพื้นที่ดวยสูตร
                       area= 22/7*radius*radius               รับคา radius
                   แสดงคา area
        จบ                                             area = 22/7 * radius * radius

                                                               แสดงคา area


                                                                    จบ
- 11 -

ตัวอยางที่ 7 การจําลองความคิดในการหาผลบวก 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 ใหแสดงคําตอบ
                                                       
       จบ

       การจําลองความคิดเปนสัญลักษณ

                              เริ่มตน

                                N=0


                                 K=1




                               N=N+K


                                K=K+1


                                           จริง
                              K≤20
                                   เท็จ
                            แสดงคา N


                                จบ
- 12 -

5.3 การเขียนโปรแกรม
           จากการศึกษาหลักการขั้นตอนการแกปญหา ในหัวขอ 5.1 และ 5.2 หลังจากที่เราสามารถวิเคราะหปญหา
และสรางแบบจําลองความคิดเพื่อแสดงขั้นตอนในการแกปญหาแลว ขั้นตอนตอไปคือ การลงมือแกปญหาตามขั้นตอน
ที่ไดออกแบบไว โดยใชเครื่องมือชวยในการแกปญหา ในที่นี้หากเครื่องมือที่นักเรียนเลือก คือ ภาษาคอมพิวเตอรซึ่ง
ถือไดวาเปนขั้นตอนหนึ่งที่สําคัญในการแกปญหาดวยคอมพิวเตอร
           การเขียนโปรแกรม (programming) หมายถึง กระบวนการใชภาษาคอมพิวเตอรเพื่อกําหนดโครงสรางของ
ข อ มู ล และกํ า หนดขั้ น ตอนวิ ธี เ พื่ อ ใช แ ก ป ญ หาตามที่ ไ ด อ อกแบบไว โ ดยอาศั ย หลั ก เกณฑ ก ารเขี ย นโปรแกรม
คอมพิวเตอรของแตละภาษา
           กอนการเขียนโปรแกรม ผูพัฒนาโปรแกรมจะตองเลือกภาษาที่จะนํามาชวยใชงานโดยพิจารณาจากปจจัย
ตางๆ ในการทํางาน เชน ลักษณะของปญหา ความถนัดของผูเขียนโปรแกรม สภาพแวดลอมในการทํางานของระบบ
ค อ ม พิ ว เ ต อ ร เ ป น ต น เ นื่ อ ง จ า ก ใ น ป จ จุ บั น มี ภ า ษ า ค อ ม พิ ว เ ต อ ร ใ ห เ ลื อ ก ไ ด ห ล า ย ภ า ษ า เ ช น
ภาษาปาสคาล ภาษาซี ภาษาจาวา ภาษาเดลฟาย เปนตน ถึงแมแตละภาษาจะมีรูปแบบและหลักการในการสรางงาน
ที่ แ ตกต า งกั น แต ทุ ก ภาษาจะต อ งมี โ ครงสร า งควบคุ ม หลั ก ทั้ ง 3                  แบบได แ ก โครงสร า งแบบลํ า ดั บ
(sequential structure) โครงสรางแบบมีทางเลือก (selection structure) และโครงสรางแบบทําซ้ํา (repetition
structure)

        5.3.1) โครงสรางแบบลําดับ
                 โครงสรางแบบลําดับ คือโครงสรางแสดงขั้นตอนการทํางานที่เปนไปตามลําดับกอนหลัง และแตละ
ขั้นตอนจะถูกประมวลผลเพียงครั้งเดียวเทานั้น สามารถแสดงการทํางานของโครงสรางนี้โดยใชผงงานไดดังรูป
                                                                                     ั


                                                              คําสั่งที่ 1

                                                              คําสั่งที่ 2

                                                              คําสั่งที่ 3

                                                               …….

                                                              คําสั่งที่ n


                                        รูปที่ 4 แสดงการทํางานของโครงสรางแบบลําดับ
- 13 -

          5.3.2) โครงสรางแบบมีทางเลือก
                  โครงสรางแบบมีทางเลือก คือโครงสรางที่มีเงื่อนไข ขั้นตอนการทํางานบางขั้นตอนตองมีการตัดสินใจ
เพื่อเลือกวิธีการประมวลผลขั้นตอไป และจะมีบางขั้นตอนที่ไมไดรับการประมวลผล การตัดสินใจอาจมี 2 ทางหรือ
มากกวาก็ได โครงสรางที่มีทางเลือกเพียง 2 ทางเราเรียกชื่อวา โครงสรางแบบ if…then…else… และโครงสรางที่มี
ทางเลือกมากกวา 2 ทาง เราเรียกชื่อวาโครงสรางแบบ case ซึ่งสามารถแสดงการทํางานของโครงสรางนี้โดยใชผังงาน
ดังรูป



                                                                   เท็จ
                                           เงื่อนไข
                                                  จริง
                                             คําสั่ง                      คําสั่ง



                             รูปที่ 5 แสดงการทํางานของโครงสราง if…then…else…




                                                       เงื่อนไข

     กรณีท่ี 1           กรณีที่ 2              กรณีที่ 3                                 กรณีที่ n
            คําสั่ง              คําสั่ง                 คําสั่ง                    …..           คําสั่ง



                                     รูปที่ 6 แสดงการทํางานของโครงสราง case
- 14 -

ตัวอยางที่ 8 แสดงผังงานที่จําลองขั้นตอนวิธการเขียนและสงจดหมายใหอยูในรูปของสัญลักษณ
                                           ี

                                     เริ่มตน

                                  เขียนจดหมาย


                                พับจดหมายใสซอง


                                   จาหนาซอง


                                 ปดซองจดหมาย


                                                         เท็จ
                                    มีแสตมป
                                           จริง
                                                                ซื้อแสตมป



                                   ติดแสตมป


                                   สงจดหมาย


                                      จบ
- 15 -

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


                                                เริ่มตน

                                           หยิบลูกบอล 1 ลูก


                                              สีของลูกบอล



     สีแดง                 สีฟา             สีเขียว             สีเหลือง                  สีสม
       ได 10 คะแนน        ได 8 คะแนน         ได 6 คะแนน          ได 4 คะแนน            ได 2 คะแนน




                                                   จบ



          5.3.3) โครงสรางแบบทําซ้า   ํ
                    โครงสรางแบบทําซ้ํา คือโครงสรางที่ขั้นตอนการทํางานบางขั้นตอนไดรับการประมวลผลมากกวา 1
ครั้ง ทังนี้ขนอยูกับเงื่อนไขบางประการ โครงสรางแบบทําซ้ํานี้ตองมีการตัดสินใจในการทํางานซ้ํา และลักษณะการ
        ้ ึ้
ทํางานของโครงสรางแบบนี้มี 2 ลักษณะ ไดแก
                    แบบที่มีการตรวจสอบเงื่อนไขในการทําซ้ําทุกครั้งกอนดําเนินการกิจกรรมใดๆ ถาเงื่อนไขเปนจริงจะ
ทํางานซ้ําไปเรื่อยๆ และหยุดเมื่อเงื่อนไขเปนเท็จ การทํางานลักษณะนี้แบงไดเปน 2 แบบยอย ไดแก การทําซ้ําแบบ
for และแบบ while ลักษณะการทํางานของทั้งสองแบบนี้จะเหมือนกัน โดยสําหรับแบบ for นั้นมักใชกรณีที่ตองการ
กําหนดจํานวนรอบการทํางานที่ชัดเจน
                    แบบที่มีการดําเนินการกิจกรรมใดๆ กอนจํานวนหนึ่งรอบ แลวจึงคอยตรวจสอบเงื่อนไขในการทําซ้ํา
ถาเงื่อนไขเปนจริงจะทํางานซ้ําไปเรื่อยๆ และหยุดเมื่อเงื่อนไขเปนเท็จ เรียกการทํางานแบบนี้วา การทําซ้ําแบบ
do…while ผังงานแสดงขั้นตอนการทํางานซ้ําทั้งสองแบบแสดงดังรูปที่ 7 และ 8
- 16 -




                                                             คําสั่ง

                                                                 …

                                                             คําสั่ง
                                                จริง
                                  เงื่อนไข
                                         เท็จ

                          รูปที่ 7 แสดงการทํางานของการทําซ้ําแบบ for และแบบ while




                                    คําสั่ง

                                      …

                                    คําสั่ง

                                                 จริง
                                  เงื่อนไข
                                         เท็จ
                              รูปที่ 8 แสดงการทํางานของการทําซ้ําแบบ do…while

                  โครงสรางควบคุมทั้ง 2 แบบที่กลาวมาขางตนก็คือ ขั้นตอนที่เราใชในการแกปญหานั้นเอง พิจารณา
ตัวอยางที่ 10 เปนขั้นตอนการเลือกเครื่องมือและการออกแบบขั้นตอนวิธี คือ ขั้นตอนที่ 2 ในหัวขอ 5.1 เราเลือกสราง
ผังงานมาจําลองขั้นตอนวิธีในการหาคาเฉลี่ยของจํานวน 5 จํานวน จากตัวอยางที่ 2 และในตัวอยางที่ 10 มีการแสดง
โครงสรางควบคุมแบบลําดับและแบบทําซ้ําที่ใชในการแกปญหาดวย
- 17 -

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

                       เริ่มตน

                 กําหนดคาเริ่มตน
                       sum=0


                 กําหนดคาเริ่มตน
                        N=1



                                            เพิ่มคาตัวนับจํานวน
                                                  N=N+1


                                              เพิ่มคาผลบวก
                                               sum=sum+data

                                               รับตัวเลขเปนขอมูลเขาทีละตัว
                                              เก็บในตัวแปรชื่อ data

                       N≤5           จริง
                              เท็จ
            คํานวณคาเฉลี่ยเก็บในตัวแปร A
                      A=sum/5


                     แสดงคา A


                         จบ

More Related Content

What's hot

ผลกระทบจากการขยายอิทธิพลของประเทศในยุโรป
ผลกระทบจากการขยายอิทธิพลของประเทศในยุโรปผลกระทบจากการขยายอิทธิพลของประเทศในยุโรป
ผลกระทบจากการขยายอิทธิพลของประเทศในยุโรปNattha Namm
 
ตุ๊กตาล้มลุกจริง
ตุ๊กตาล้มลุกจริงตุ๊กตาล้มลุกจริง
ตุ๊กตาล้มลุกจริงMim Kaewsiri
 
รายงานการศึกษาค้นคว้า
รายงานการศึกษาค้นคว้ารายงานการศึกษาค้นคว้า
รายงานการศึกษาค้นคว้าtanakit pintong
 
กำเนิดรัฐชาติ
กำเนิดรัฐชาติกำเนิดรัฐชาติ
กำเนิดรัฐชาติ
Warinthorn Limpanakorn
 
16แบบทดสอบความหลากหลายทางชีวภาพ
16แบบทดสอบความหลากหลายทางชีวภาพ16แบบทดสอบความหลากหลายทางชีวภาพ
16แบบทดสอบความหลากหลายทางชีวภาพสำเร็จ นางสีคุณ
 
แนวคิดเสรีนิยม
แนวคิดเสรีนิยมแนวคิดเสรีนิยม
แนวคิดเสรีนิยมGolfzie Loliconer
 
แนะนำตัวเอง10 สไลด์
แนะนำตัวเอง10 สไลด์แนะนำตัวเอง10 สไลด์
แนะนำตัวเอง10 สไลด์
098108120511
 
03 คลื่นและสมบัติของคลื่นสเปกตรัมของธาตุ
03 คลื่นและสมบัติของคลื่นสเปกตรัมของธาตุ03 คลื่นและสมบัติของคลื่นสเปกตรัมของธาตุ
03 คลื่นและสมบัติของคลื่นสเปกตรัมของธาตุkruannchem
 
แบบทดสอบ ภูมิศาสตร์ ม.3
แบบทดสอบ ภูมิศาสตร์ ม.3แบบทดสอบ ภูมิศาสตร์ ม.3
แบบทดสอบ ภูมิศาสตร์ ม.3teerachon
 
กษัตริย์ไทยสมัยรัตนโกสินทร์กับการพัฒนาชาติไทย
กษัตริย์ไทยสมัยรัตนโกสินทร์กับการพัฒนาชาติไทยกษัตริย์ไทยสมัยรัตนโกสินทร์กับการพัฒนาชาติไทย
กษัตริย์ไทยสมัยรัตนโกสินทร์กับการพัฒนาชาติไทยคุณครูเกตุชัย ปิ่นทอง
 
หลักการทรูแมน
หลักการทรูแมนหลักการทรูแมน
หลักการทรูแมนNattha Namm
 
โครงงาน สิ่งประดิษฐ์ทางวิทยาศาสตร์ ไฟฟ้าจากแผ่นซีดี
โครงงาน สิ่งประดิษฐ์ทางวิทยาศาสตร์  ไฟฟ้าจากแผ่นซีดีโครงงาน สิ่งประดิษฐ์ทางวิทยาศาสตร์  ไฟฟ้าจากแผ่นซีดี
โครงงาน สิ่งประดิษฐ์ทางวิทยาศาสตร์ ไฟฟ้าจากแผ่นซีดี
Thanapat Kamparn
 
ความมั่นคงแห่งชาติ
ความมั่นคงแห่งชาติความมั่นคงแห่งชาติ
ความมั่นคงแห่งชาติ
Teeranan
 
โครงงานเคมีกัญ (1)
โครงงานเคมีกัญ (1)โครงงานเคมีกัญ (1)
โครงงานเคมีกัญ (1)Guntima NaLove
 
ทวีปอเมริกาเหนือ
ทวีปอเมริกาเหนือทวีปอเมริกาเหนือ
ทวีปอเมริกาเหนือพัน พัน
 
ใบงานสถิติและข้อมูล
ใบงานสถิติและข้อมูลใบงานสถิติและข้อมูล
ใบงานสถิติและข้อมูล
peesartwit
 
เล่มที่ 3 การเคลื่อนที่ของสัตว์มีกระดูกสันหลัง
เล่มที่  3 การเคลื่อนที่ของสัตว์มีกระดูกสันหลังเล่มที่  3 การเคลื่อนที่ของสัตว์มีกระดูกสันหลัง
เล่มที่ 3 การเคลื่อนที่ของสัตว์มีกระดูกสันหลัง
กมลรัตน์ ฉิมพาลี
 
แรงเสียดทาน
แรงเสียดทานแรงเสียดทาน

What's hot (20)

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

Viewers also liked

รหัสเทียม ปฏิพัทธ์
รหัสเทียม ปฏิพัทธ์รหัสเทียม ปฏิพัทธ์
รหัสเทียม ปฏิพัทธ์
finverok
 
รหัสเทียม Psuedo code
รหัสเทียม Psuedo codeรหัสเทียม Psuedo code
รหัสเทียม Psuedo code
ปณพล ดาดวง
 
ความหมายของผังงาน
ความหมายของผังงานความหมายของผังงาน
ความหมายของผังงาน9inglobin
 
ทบทวนการประเมินภายนอกรอบสอง
ทบทวนการประเมินภายนอกรอบสองทบทวนการประเมินภายนอกรอบสอง
ทบทวนการประเมินภายนอกรอบสอง
Strisuksa Roi-Et
 
Fathers day
Fathers dayFathers day
Fathers day
amartaindale
 
มอสซี่ บัสเตอร์
มอสซี่ บัสเตอร์มอสซี่ บัสเตอร์
มอสซี่ บัสเตอร์Neannapa Khajornmot
 
Bab 1 nifas 2
Bab 1 nifas 2Bab 1 nifas 2
Bab 1 nifas 2
Arya Ningrat
 
Bersyukurlah
BersyukurlahBersyukurlah
BersyukurlahhamdEy
 
Smarter comm"The Future of Privacy". Aurélie Pols at IBM Smarter Commerce Glo...
Smarter comm"The Future of Privacy". Aurélie Pols at IBM Smarter Commerce Glo...Smarter comm"The Future of Privacy". Aurélie Pols at IBM Smarter Commerce Glo...
Smarter comm"The Future of Privacy". Aurélie Pols at IBM Smarter Commerce Glo...
FLUZO
 
Privacy in Europe eMetrics Summit London2012
Privacy in Europe eMetrics Summit London2012Privacy in Europe eMetrics Summit London2012
Privacy in Europe eMetrics Summit London2012FLUZO
 
Cơ hội kinh doanh cùng qnet việt nam
Cơ hội kinh doanh cùng qnet việt namCơ hội kinh doanh cùng qnet việt nam
Cơ hội kinh doanh cùng qnet việt nam
Jos Trần Danh Đàn
 
Conseqüències de la II Guerra Mundial
Conseqüències de la II Guerra MundialConseqüències de la II Guerra Mundial
Conseqüències de la II Guerra Mundial
malueva
 
Cisco 2014 Midyear Security Report
Cisco 2014 Midyear Security ReportCisco 2014 Midyear Security Report
Cisco 2014 Midyear Security Report
Cisco Security
 

Viewers also liked (20)

รหัสเทียม ปฏิพัทธ์
รหัสเทียม ปฏิพัทธ์รหัสเทียม ปฏิพัทธ์
รหัสเทียม ปฏิพัทธ์
 
Cpg and care map alcohol
Cpg and care map alcoholCpg and care map alcohol
Cpg and care map alcohol
 
รหัสเทียม Psuedo code
รหัสเทียม Psuedo codeรหัสเทียม Psuedo code
รหัสเทียม Psuedo code
 
ความหมายของผังงาน
ความหมายของผังงานความหมายของผังงาน
ความหมายของผังงาน
 
ทบทวนการประเมินภายนอกรอบสอง
ทบทวนการประเมินภายนอกรอบสองทบทวนการประเมินภายนอกรอบสอง
ทบทวนการประเมินภายนอกรอบสอง
 
Fathers day
Fathers dayFathers day
Fathers day
 
มอสซี่ บัสเตอร์
มอสซี่ บัสเตอร์มอสซี่ บัสเตอร์
มอสซี่ บัสเตอร์
 
Dapodik ltj 1
Dapodik  ltj 1Dapodik  ltj 1
Dapodik ltj 1
 
Bab
BabBab
Bab
 
Bab 1 nifas 2
Bab 1 nifas 2Bab 1 nifas 2
Bab 1 nifas 2
 
Jawaban 1
Jawaban  1Jawaban  1
Jawaban 1
 
Bersyukurlah
BersyukurlahBersyukurlah
Bersyukurlah
 
Rizkan
RizkanRizkan
Rizkan
 
Jawaban kuis
Jawaban kuisJawaban kuis
Jawaban kuis
 
Smarter comm"The Future of Privacy". Aurélie Pols at IBM Smarter Commerce Glo...
Smarter comm"The Future of Privacy". Aurélie Pols at IBM Smarter Commerce Glo...Smarter comm"The Future of Privacy". Aurélie Pols at IBM Smarter Commerce Glo...
Smarter comm"The Future of Privacy". Aurélie Pols at IBM Smarter Commerce Glo...
 
Lks cut lah
Lks cut lahLks cut lah
Lks cut lah
 
Privacy in Europe eMetrics Summit London2012
Privacy in Europe eMetrics Summit London2012Privacy in Europe eMetrics Summit London2012
Privacy in Europe eMetrics Summit London2012
 
Cơ hội kinh doanh cùng qnet việt nam
Cơ hội kinh doanh cùng qnet việt namCơ hội kinh doanh cùng qnet việt nam
Cơ hội kinh doanh cùng qnet việt nam
 
Conseqüències de la II Guerra Mundial
Conseqüències de la II Guerra MundialConseqüències de la II Guerra Mundial
Conseqüències de la II Guerra Mundial
 
Cisco 2014 Midyear Security Report
Cisco 2014 Midyear Security ReportCisco 2014 Midyear Security Report
Cisco 2014 Midyear Security Report
 

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

หลักการแก้ปัญหา
หลักการแก้ปัญหาหลักการแก้ปัญหา
หลักการแก้ปัญหาSarun Suksri
 
ใบความรู้ที่ 1 การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
ใบความรู้ที่ 1 การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศใบความรู้ที่ 1 การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
ใบความรู้ที่ 1 การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศNattapon
 
ใบความรู้ที่2
ใบความรู้ที่2ใบความรู้ที่2
ใบความรู้ที่2
Orapan Chamnan
 
ใบความรู้ที่1.2
ใบความรู้ที่1.2ใบความรู้ที่1.2
ใบความรู้ที่1.2Orapan Chamnan
 
งานนำเสนอ1 คอม
งานนำเสนอ1 คอมงานนำเสนอ1 คอม
งานนำเสนอ1 คอมnuknook
 
ใบความรู้ที่ 9
ใบความรู้ที่ 9ใบความรู้ที่ 9
ใบความรู้ที่ 9Rattana Wongphu-nga
 
กระบวนการเทคโนโลยีสารสนเทศ
กระบวนการเทคโนโลยีสารสนเทศกระบวนการเทคโนโลยีสารสนเทศ
กระบวนการเทคโนโลยีสารสนเทศJL'mind Chutimon
 
ใบความรู้ที่1.2
ใบความรู้ที่1.2ใบความรู้ที่1.2
ใบความรู้ที่1.2Orapan Chamnan
 
งานนำเสนอ1 คอม
งานนำเสนอ1 คอมงานนำเสนอ1 คอม
งานนำเสนอ1 คอมPassawan' Koohar
 
งานคอม อลิตา
งานคอม  อลิตางานคอม  อลิตา
งานคอม อลิตาalita122
 
การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศการแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศMeaw Sukee
 
โจทย์ Pbl3
โจทย์ Pbl3โจทย์ Pbl3
โจทย์ Pbl3anusong
 
ความหมายของเทคโนโลยีสารสนเทศ
ความหมายของเทคโนโลยีสารสนเทศความหมายของเทคโนโลยีสารสนเทศ
ความหมายของเทคโนโลยีสารสนเทศPaweena Kittitongchaikul
 
ความหมายของเทคโนโลยีสารสนเทศ
ความหมายของเทคโนโลยีสารสนเทศความหมายของเทคโนโลยีสารสนเทศ
ความหมายของเทคโนโลยีสารสนเทศ
Paweena Kittitongchaikul
 

Similar to การจำลองความคิด (20)

หลักการแก้ปัญหา
หลักการแก้ปัญหาหลักการแก้ปัญหา
หลักการแก้ปัญหา
 
ใบความรู้ที่ 1 การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
ใบความรู้ที่ 1 การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศใบความรู้ที่ 1 การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
ใบความรู้ที่ 1 การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
 
Ch1
Ch1Ch1
Ch1
 
ใบความรู้ที่2
ใบความรู้ที่2ใบความรู้ที่2
ใบความรู้ที่2
 
ใบความรู้ที่1.2
ใบความรู้ที่1.2ใบความรู้ที่1.2
ใบความรู้ที่1.2
 
งานนำเสนอ1 คอม
งานนำเสนอ1 คอมงานนำเสนอ1 คอม
งานนำเสนอ1 คอม
 
ใบความรู้ที่ 9
ใบความรู้ที่ 9ใบความรู้ที่ 9
ใบความรู้ที่ 9
 
กระบวนการเทคโนโลยีสารสนเทศ
กระบวนการเทคโนโลยีสารสนเทศกระบวนการเทคโนโลยีสารสนเทศ
กระบวนการเทคโนโลยีสารสนเทศ
 
ใบความรู้ที่1.2
ใบความรู้ที่1.2ใบความรู้ที่1.2
ใบความรู้ที่1.2
 
11
1111
11
 
งานนำเสนอ1 คอม
งานนำเสนอ1 คอมงานนำเสนอ1 คอม
งานนำเสนอ1 คอม
 
งานคอม อลิตา
งานคอม  อลิตางานคอม  อลิตา
งานคอม อลิตา
 
Chepter3
Chepter3Chepter3
Chepter3
 
Pbl8.2
Pbl8.2Pbl8.2
Pbl8.2
 
การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศการแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
 
โจทย์ Pbl3
โจทย์ Pbl3โจทย์ Pbl3
โจทย์ Pbl3
 
โจทย์ Pbl3
โจทย์ Pbl3โจทย์ Pbl3
โจทย์ Pbl3
 
โจทย์ Pbl3
โจทย์ Pbl3โจทย์ Pbl3
โจทย์ Pbl3
 
ความหมายของเทคโนโลยีสารสนเทศ
ความหมายของเทคโนโลยีสารสนเทศความหมายของเทคโนโลยีสารสนเทศ
ความหมายของเทคโนโลยีสารสนเทศ
 
ความหมายของเทคโนโลยีสารสนเทศ
ความหมายของเทคโนโลยีสารสนเทศความหมายของเทคโนโลยีสารสนเทศ
ความหมายของเทคโนโลยีสารสนเทศ
 

Recently uploaded

4_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลไทยเป็นมคธ ประโยค ป.ธ.4 (2505-2567).pdf
4_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลไทยเป็นมคธ ประโยค ป.ธ.4 (2505-2567).pdf4_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลไทยเป็นมคธ ประโยค ป.ธ.4 (2505-2567).pdf
4_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลไทยเป็นมคธ ประโยค ป.ธ.4 (2505-2567).pdf
สุเมธี​​​​ ตี่พนมโอรัล / សុមេធី ទីភ្នំឱរ៉ាល់ (Sumedhi TyPhnomAoral)
 
3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค ป.ธ.3 (2500-2567).pdf
3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค ป.ธ.3 (2500-2567).pdf3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค ป.ธ.3 (2500-2567).pdf
3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค ป.ธ.3 (2500-2567).pdf
สุเมธี​​​​ ตี่พนมโอรัล / សុមេធី ទីភ្នំឱរ៉ាល់ (Sumedhi TyPhnomAoral)
 
รายงานโครงงานการออกแบบลายเสื่อโดยใช้รูปเรขาคณิต ระดับประเทศ.pdf
รายงานโครงงานการออกแบบลายเสื่อโดยใช้รูปเรขาคณิต ระดับประเทศ.pdfรายงานโครงงานการออกแบบลายเสื่อโดยใช้รูปเรขาคณิต ระดับประเทศ.pdf
รายงานโครงงานการออกแบบลายเสื่อโดยใช้รูปเรขาคณิต ระดับประเทศ.pdf
NitayataNuansri
 
1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค 1-2 (2510-2567).pdf
1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค 1-2 (2510-2567).pdf1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค 1-2 (2510-2567).pdf
1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค 1-2 (2510-2567).pdf
สุเมธี​​​​ ตี่พนมโอรัล / សុមេធី ទីភ្នំឱរ៉ាល់ (Sumedhi TyPhnomAoral)
 
แนวความเชื่อ วิธีการปฎิบัติ พระพุทธศาสนามหายาน.pdf
แนวความเชื่อ วิธีการปฎิบัติ พระพุทธศาสนามหายาน.pdfแนวความเชื่อ วิธีการปฎิบัติ พระพุทธศาสนามหายาน.pdf
แนวความเชื่อ วิธีการปฎิบัติ พระพุทธศาสนามหายาน.pdf
Faculty of BuddhismMahachulalongkornrajavidyalaya Roi Et Buddhist College
 
การเขียนข้อเสนอโครงการวิจัย (Research Proposal)
การเขียนข้อเสนอโครงการวิจัย (Research Proposal)การเขียนข้อเสนอโครงการวิจัย (Research Proposal)
การเขียนข้อเสนอโครงการวิจัย (Research Proposal)
Prachyanun Nilsook
 
ภาษาอังกฤษเพื่อการปฏิบัติกรรมฐานในพระพุทธศาสนา
ภาษาอังกฤษเพื่อการปฏิบัติกรรมฐานในพระพุทธศาสนาภาษาอังกฤษเพื่อการปฏิบัติกรรมฐานในพระพุทธศาสนา
ภาษาอังกฤษเพื่อการปฏิบัติกรรมฐานในพระพุทธศาสนา
Faculty of BuddhismMahachulalongkornrajavidyalaya Roi Et Buddhist College
 
1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา บาลีไวยากรณ์ ประโยค 1-2 (2511-2567).pdf
1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา บาลีไวยากรณ์ ประโยค 1-2 (2511-2567).pdf1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา บาลีไวยากรณ์ ประโยค 1-2 (2511-2567).pdf
1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา บาลีไวยากรณ์ ประโยค 1-2 (2511-2567).pdf
สุเมธี​​​​ ตี่พนมโอรัล / សុមេធី ទីភ្នំឱរ៉ាល់ (Sumedhi TyPhnomAoral)
 
3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา สัมพันธ์ไทย ประโยค ป.ธ.3 (2500-2567).pdf
3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา สัมพันธ์ไทย ประโยค ป.ธ.3 (2500-2567).pdf3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา สัมพันธ์ไทย ประโยค ป.ธ.3 (2500-2567).pdf
3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา สัมพันธ์ไทย ประโยค ป.ธ.3 (2500-2567).pdf
สุเมธี​​​​ ตี่พนมโอรัล / សុមេធី ទីភ្នំឱរ៉ាល់ (Sumedhi TyPhnomAoral)
 

Recently uploaded (9)

4_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลไทยเป็นมคธ ประโยค ป.ธ.4 (2505-2567).pdf
4_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลไทยเป็นมคธ ประโยค ป.ธ.4 (2505-2567).pdf4_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลไทยเป็นมคธ ประโยค ป.ธ.4 (2505-2567).pdf
4_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลไทยเป็นมคธ ประโยค ป.ธ.4 (2505-2567).pdf
 
3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค ป.ธ.3 (2500-2567).pdf
3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค ป.ธ.3 (2500-2567).pdf3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค ป.ธ.3 (2500-2567).pdf
3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค ป.ธ.3 (2500-2567).pdf
 
รายงานโครงงานการออกแบบลายเสื่อโดยใช้รูปเรขาคณิต ระดับประเทศ.pdf
รายงานโครงงานการออกแบบลายเสื่อโดยใช้รูปเรขาคณิต ระดับประเทศ.pdfรายงานโครงงานการออกแบบลายเสื่อโดยใช้รูปเรขาคณิต ระดับประเทศ.pdf
รายงานโครงงานการออกแบบลายเสื่อโดยใช้รูปเรขาคณิต ระดับประเทศ.pdf
 
1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค 1-2 (2510-2567).pdf
1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค 1-2 (2510-2567).pdf1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค 1-2 (2510-2567).pdf
1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา แปลมคธเป็นไทย ประโยค 1-2 (2510-2567).pdf
 
แนวความเชื่อ วิธีการปฎิบัติ พระพุทธศาสนามหายาน.pdf
แนวความเชื่อ วิธีการปฎิบัติ พระพุทธศาสนามหายาน.pdfแนวความเชื่อ วิธีการปฎิบัติ พระพุทธศาสนามหายาน.pdf
แนวความเชื่อ วิธีการปฎิบัติ พระพุทธศาสนามหายาน.pdf
 
การเขียนข้อเสนอโครงการวิจัย (Research Proposal)
การเขียนข้อเสนอโครงการวิจัย (Research Proposal)การเขียนข้อเสนอโครงการวิจัย (Research Proposal)
การเขียนข้อเสนอโครงการวิจัย (Research Proposal)
 
ภาษาอังกฤษเพื่อการปฏิบัติกรรมฐานในพระพุทธศาสนา
ภาษาอังกฤษเพื่อการปฏิบัติกรรมฐานในพระพุทธศาสนาภาษาอังกฤษเพื่อการปฏิบัติกรรมฐานในพระพุทธศาสนา
ภาษาอังกฤษเพื่อการปฏิบัติกรรมฐานในพระพุทธศาสนา
 
1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา บาลีไวยากรณ์ ประโยค 1-2 (2511-2567).pdf
1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา บาลีไวยากรณ์ ประโยค 1-2 (2511-2567).pdf1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา บาลีไวยากรณ์ ประโยค 1-2 (2511-2567).pdf
1-2_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา บาลีไวยากรณ์ ประโยค 1-2 (2511-2567).pdf
 
3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา สัมพันธ์ไทย ประโยค ป.ธ.3 (2500-2567).pdf
3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา สัมพันธ์ไทย ประโยค ป.ธ.3 (2500-2567).pdf3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา สัมพันธ์ไทย ประโยค ป.ธ.3 (2500-2567).pdf
3_ปัญหาและเฉลยข้อสอบบาลีสนามหลวง วิชา สัมพันธ์ไทย ประโยค ป.ธ.3 (2500-2567).pdf
 

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

  • 1. บทที่ 5 การจําลองความคิด ที่มา http://www.seubsan.net/th/images/stories/yt/p4_Cap.gif เนื้อหา 5.1 ขั้นตอนการพัฒนาซอฟตแวร o การวิเคราะหและกําหนดรายละเอียดของปญหา o การเลือกเครืองมือและออกแบบขั้นตอนวิธี ่ o การดําเนินการแกปญหา o การตรวจสอบและปรับปรุง 5.2 การจําลองความคิด o ขอความหรือคําบรรยาย (Pseudo code) o สัญลักษณหรือแผนภาพ (Flowchart) - แบบลําดับ - แบบทางเลือก - แบบทําซ้ํา 5.3 การเขียนโปรแกรม o โครงสรางแบบลําดับ o โครงสรางแบบมีทางเลือก o โครงสรางแบบทําซ้ํา ผลการเรียนรูที่คาดหวัง 1. อธิบายขั้นตอนการพัฒนาซอฟตแวรและอธิบายถึงวิธการในแตละขันตอนได ี ้ 2. อธิบายความหมายและเหตุผลในการเขียนแผนภาพที่ใชในการออกแบบโปรแกรมได 3. บอกสัญลักษณและสามารถเขียนผังงานที่ใชในการออกแบบโปรแกรมได
  • 2. -2- 5.1 ขั้นตอนการพัฒนาซอฟตแวร ในชีวิตประจําวันทุกคนตองเคยพบกับปญหาตางๆ ไมวาจะเปนปญหาดานการเรียน การงาน การเงิน หรือ แมแตการเลนเกม เมื่อพบกับปญหาแตละคนมีวิธีท่จะจัดการหรือแกปญหาเหลานั้นแตกตางกันไป ซึ่งแตละวิธีการอาจ ี ใหผลลัพธที่เหมือนหรือแตกตางกันเล็กนอย ทั้งนี้ขึ้นอยูกับความรู ความสามารถ และประสบการณของบุคคลผูนั้น อยางไรก็ตาม หากเรานําวิธีการแกปญหาตางวิธีนั้นมาวิเคราะหใหดี จะพบวาสามารถสรุปวิธีการเหลานั้นเปนทฤษฎี ซึ่งมีรูปแบบที่แนนอนได และบางครั้งตองอาศัยการเรียนรูในระดับสูงเพื่อแกปญหาบางอยางใหสมบูรณแบบ แตกอนที่ เราจะศึกษาตอไป ลองพิจารณาปญหาตอไปนี้ ตัวอยางที่ 1 เกมทายใจ คือ เกมใหผูเลนทายตัวเลข 3 ตัว ในการเลนเกมตองใชผูเลน 2 คน คนที่หนึ่ง คือ ผูกําหนด เปนคนกําหนดเลข 3 ตัว ที่ไมซ้ํากันโดยเลือกจากกลุมตัวเลข 1-9 และอีกคนหนึ่งคือ ผูทาย เปนผูทายเลข 3 ตัว ที่ไมซ้ํากัน ที่ผูกําหนดไดกําหนดเอาไวแลว หลังจากที่ผูทายทายเลขแตละครั้ง ผูกําหนดตองใหรายละเอียดวา ตัวเลขที่ทายมานั้นถูกตองกี่ตัว และในกรณีที่ตัวเลขที่ทายมาถูกตําแหนงดวยก็ตองบอกวาถูกตําแหนงกี่ตัว เชน ถา ตัวเลขที่กําหนดไวเปน 815 และ ผูทายทายวา 123 ผูกําหนดตองแจงวาตัวเลขที่ทายนั้นถูก 1 ตัว และไมมีตัวใดถูก ตําแหนง รูปที่ 1 เปนตารางแสดงขอมูลการเลนเกมทายใจ ตัวเลขที่ทาย จํานวนตัวเลขที่ถูก จํานวนตําแหนงที่ถูก 123 1 - 415 2 2 425 1 1 416 1 1 715 2 2 815 3 3 รูปที่ 1 ขอมูลการเลนเกมทายใจ จะเห็นวาการแกปญหาดังกลาวขางตน นอกจากจะใชวิธีลองผิดลองถูกในการทายครั้งแรกๆ แลวยังมีการใช เหตุผลประกอบการแกปญหาซึ่งเราเรียกวิธีการดังกลาววา "วิธีขจัด" (method of elimination) กลาวคือ จะแยกขอมูล ออกเปนกรณีที่เปนไปไมไดทิ้ง จนเหลือกรณีที่เปนไปได วิธีการดังกลาวสามารถอธิบายไดวาทําไมจึงคิดหรือทํา เชนนั้น รูปแบบของการใชเหตุผลประกอบการแกปญหาอาจแตกตางกัน ขึ้นอยูกับเงื่อนไข ในปญหาบางปญหา อาจจะ ขจัดใหเหลือกรณีเดียวไมได ก็อาจจะทําใหเหลือกรณีนอยที่สุด นอกจากเกมทายใจเรายังมีเกมลับสมองที่นาสนใจและ ทาทายความสามารถในการแกปญหาอยูอีกมากมายที่หาเลนไดตามเว็บไซต  นอกจากวิธีการแกปญหาที่ยกตัวอยางมาซึ่งไดแก วิธีการลองผิดลองถูก การใชเหตุผล การใชวิธีขจัด ยังมีวิธี การแกป ญหาอีกมากมายที่ผูแกป ญหาสามารถเลือกใชใ ห เข ากับ ตั ว ปญหาและประสบการณของผู แกปญหาเอง แตอยางไรก็ตาม วิธการเหลานี้ลวนมีขั้นตอนที่คลายคลึงกัน และจากการศึกษาพฤติกรรมในการ ี เรียนรูและแกปญหาของมนุษยพบวาโดยปกติมนุษยมีกระบวนการในการแกปญหาประกอบดวย 4 ขั้นตอนดัง รูปที่ 2
  • 3. -3- วิเคราะหและกําหนด รายละเอียดของปญหา เลือกเครื่องมือ / ออกแบบ ดําเนินการแกปญหา ตรวจสอบและปรับปรุง รูปที่ 2 แสดงกระบวนการแกปญหา 1) การวิเคราะหและกําหนดรายละเอียดของปญหา (State the problem) ขั้นตอนนี้เปนขั้นตอนแรกสุดกอนที่จะลงมือแกปญหา แตผูแกปญหามักจะมองขามความสําคัญของ ขั้นตอนนี้อยูเสมอ จุดประสงคของขั้นตอนนี้ คือ การทําความเขาใจกับปญหาเพื่อแยกใหออกวาขอมูลที่ กําหนดมาในปญหาหรือเงื่อนไขของปญหาคืออะไร และสิ่งที่ตองการคืออะไร อีกทั้งวิธีการที่ใชประมวลผล ใน การวิเคราะหปญหาใด กลาวโดยสรุปแลวองคประกอบในการวิเคราะหมีอยู 3 องคประกอบ 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
  • 4. -4- ตัวอยางที่ 3 แสดงการวิเคราะหและกําหนดรายละเอียดของการหาคา x เมื่อ x คือจํานวนเต็มจํานวนหนึ่ง ในกลุมจํานวนเต็ม 5 จํานวนที่มีคาเฉลี่ยเปน 10 และจํานวนอีก 4 จํานวนไดแก 3 4 8 และ 12 1. การระบุขอมูลเขา จากโจทยขอมูลเขา ไดแก 2.1 จํานวนอีก 4 จํานวน คือ 3 4 8 12 คาเฉลี่ย ของจํานวนทั้ง 5 จํานวน คือ 10 2. การระบุขอมูลออก จากโจทยสิ่งที่เปนผลลัพธ คือ คา x  3. การกําหนดวิธีการประมวลผล จากโจทยและความหมายของ "คาเฉลี่ย" เราสามารถสรุปขั้นตอน ของการประมวลผลไดดังนี้ 3.1 หาคาผลรวมของจํานวนเต็มทั้ง 5 โดยนําคาเฉลี่ยคูณดวยจํานวนของเลขจํานวนเต็ม นั่นคือ 10 * 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) หลังจากที่ไดออกแบบขั้นตอนวิธีเรียบรอยแลว ขั้นตอนนี้เปนขั้นตอนที่ตองลงมือแกปญหาโดยใช เครื่ อ งมื อ ที่ไ ด เ ลื อ กไว หากการแก ป ญ หาดั ง กล า วใชค อมพิ ว เตอร เ ข ามาช ว ยงาน ขั้ น ตอนนี้ ก็เ ป น การใช โปรแกรมสําเร็จ หรือใชภาษาคอมพิวเตอรเขียนโปรแกรมแกปญหา ขั้นตอนนี้ตองอาศัยความรูเกี่ยวกับ เครื่องมือที่เลือกใช ซึ่งผูแกปญหาตองศึกษาที่เขาใจและเชี่ยวชาญ ในการดําเนินการอาจพบแนวทางที่ดีกวาที่ ออกแบบไวก็สามารถปรับเปลี่ยนได
  • 5. -5- 4) การตรวจสอบและปรับปรุง (Refinement) หลังจากที่ลงมือแกปญหาแลว ตองตรวจสอบใหแนใจวาวิธีการนี้ใหผลลัพธที่ถูกตอง โดยผูแกปญหาตอง ตรวจสอบวาขั้นตอนวิธีที่สรางขึ้นสอดคลองกับรายละเอียดของปญหา ซึ่งไดแก ขอมูลเขา และขอมูลออก เพื่อใหมั่นใจ วาสามารถรองรับขอมูลเขาไดในทุกกรณีอยางถูกตองและสมบูรณ ในขณะเดียวกันก็ตองปรับปรุงวิธีการเพื่อใหการ แกปญหานี้ไดผลลัพธที่ดีท่สุด ี 5.2 การจําลองความคิด ขั้นตอนที่สําคัญในการแกปญหาคือการวางแผน การวางแผนที่ดีจะชวยใหการแกปญหาเปนไปไดโดยงาย ผูที่ สามารถวางแผนในการแกปญหาไดดีนอกจากจะตองใชประสบการณ ความรู และความมีเหตุผลแลว ยังควรรูจัก วางแผนใหเปนขั้นตอนอยางเปนระเบียบดวย การจําลองความคิดเปนสวนหนึ่งในขั้นตอนที่สองของการแกปญหา การ จําลองความคิดออกมาในลักษณะเปนขอความ หรือเปนแผนภาพจะชวยใหสามารถแกปญหาไดดีโดยเฉพาะปญหาที่ ยุงยากซับซอน การวางแผนจะเปนแนวทางในการดําเนินการแกปญหาตอไป อีกทั้งเปนการแสดงแบบเพื่อใหผูที่ เกี่ยวของไดเขาใจ และสามารถปฏิบัติตามในแนวทางเดียวกัน ทั้งนี้ก็ดวยวัตถุประสงคอยางเดียวกับกลุมกิจการ กอสราง ซึ่งจําเปนตองมีแบบแปลนเปนเครื่องมือติดตอสื่อสารระหวางผูออกแบบและผูกอสราง แบบแปลนเหลานั้นจะอยูในรูปลักษณะของการวาดภาพหรือแสดงเครื่องหมายซึ่งเปนที่เขาใจกันระหวาง ผูเกี่ยวของ แบบแปลนจะตองจัดทําใหเสร็จกอนที่จะลงมือกอสราง โดยผานการตรวจสอบทบทวนและพิจารณาจาก ผูเกี่ยวของหลายฝาย เมื่อเห็นวาเปนที่ถูกตองและพอใจของทุกฝายแลว จึงกอสรางตามแบบนั้น แตถายังไมเปนที่ พอใจ ก็จะพิจารณาแกไขแบบแปลนสวนนั้น ๆ เสียกอนจะไดไมตองรื้อถอนหรือทุบทิ้งภายหลัง และเมื่อตองการ ซอมแซมหรือตอเติมก็นําเอาแบบแปลนเดิมมาตรวจสอบและเพิ่มแบบแปลนในสวนนั้นไดโดยงาย การใชแบบแปลนจึง เปนสิ่งที่จําเปนระหวางชางกอสราง ผูออกแบบและผูเกี่ยวของอื่น ๆ เปนอยางมาก เพราะประหยัดเวลา คาใชจายและ เขาใจงาย เมื่อสรุปรวมแลวแบบแปลนเหลานั้นก็คื อขอตกลงใหสรางอาคารของผูจางกับผู รับจางที่อ ยูในรูป แบบ กะทัดรัด แทนที่จะเขียนเปนขอความที่เปนลายลักษณอักษรอยางยืดยาว และยังเปนเครื่องมือใหชางใชในการกอสราง อีกดวย เครื่องมือที่ใชในการจําลองความคิดมักจะประกอบขึ้นดวยเครื่องหมายที่แตกตางกันหลายอยาง แตพอสรุปได เปน 2 ลักษณะ ไดแก 1. ขอความหรือคําบรรยาย 2. สัญลักษณ 5.2.1) ขอความหรือคําบรรยาย เปนการเขียนเคาโครงดวยการบรรยายเปนภาษาที่มนุษยใชสื่อสารกัน เพื่อใหทราบถึงขั้นตอนการ ทํางานของโปรแกรมแตละตอน ในบางครั้งอาจใชคําสั่งของภาษาที่ใชเขียนโปรแกรมก็ได การเขียนขอความเพื่อการบรรยายขั้นตอนวิธีในการแกปญหาทางคอมพิวเตอร สามารถเรียกอีก อยางหนึ่งไดวา รหัสเทียม (pseudo code)
  • 6. -6- ตัวอยางที่ 4 คําบรรยายแสดงขั้นตอนการเปลี่ยนยางรถเมื่อยางแตกขณะขับรถ 1. คลายสกรูยึดลอ 2. จอดรถหลบขางทาง 3. นําแมแรงออกยกรถ 4. ถอดลอออก นํายางอะไหลมาเปลี่ยน 5. ขันสกรูเขา เก็บยางที่ชํารุดเพื่อไปซอม 6. คลายแมแรง เก็บแมแรง หลักการทั่วไปในการเขียนรหัสเทียม 1. สัญลักษณที่ใชในการดําเนินการทางคณิตศาสตรตางๆ จะถูกใชงานตามปกติ คือ “+” สําหรับ  การบวก “-” สําหรับการลบ “*” สําหรับการคูณ และ “/” สําหรับการหาร 2. ชื่อขอมูลแทนจํานวนที่จะถูกดําเนินการ 3. การกําหนดคาใหกับชื่อขอมูล เชน เมื่อเราตองการกําหนดให ขอมูล pi มีคาเทากับ 3.14 สามารถเขียนไดดวยขอความ pi←3.14 หรือ pi:=3.14 หรือ pi=3.14 ในการกําหนดคาทางคอมพิวเตอรดานซายของเครื่องหมายมักใชแทน ที่เก็บขอมูล และ ดานขวาแทน ขอมูลที่ตองการนําไปเก็บ (ดังนั้นหากใชขอความวา 3.14=pi ถือวาไมถูกตอง ตามความหมายนี้) 4. คําสงวนบางคําที่ใชในภาษาระดับสูงทั่วไปอาจถูกนํามาใช เชน Read หรือ Enter สําหรับ การรับขอมูลเขา และ Write หรือ Print สําหรับการแสดงขอมูลออก 5. การเพิ่ ม หรื อ ลดระยะย อ หน า อย า งเหมาะสม เพื่ อ แสดงระดั บ ของขั้ น ตอนการทํ า งานใน โครงสรางควบคุมการทํางานในกลุมเดียวกัน 5.2.2) สัญลักษณหรือแผนภาพ เครื่องหมายรูปแบบตางๆ ซึ่งใชสําหรับสื่อสารความหมายใหเขาใจตรงกัน สถาบันมาตรฐานแหงชาติ อเมริกัน (The American National Standard Institute, ANSI) ไดกําหนดสัญลักษณไวเปนมาตรฐานแลว สมควรนําไปใชไดตามความเหมาะสมตอไป ซึ่งมีรายละเอียดรูปแบบและความหมายที่ควรทราบตามตาราง ตอไปนี้ การนําสัญลักษณไปใชเพื่อแสดงขั้นตอนการทํางานตางๆ ของงานหรือโปรแกรม รวมถึงแสดงการ ไหลของขอมูลในระบบตั้งแตแรกจนไดผลลัพธตามตองการเรียกวา การเขียนผังงาน(Flowchart) ซึ่งสามารถ แบงออกไดเปน 2 แบบคือ
  • 7. -7- 1. ผังงานระบบ(System Flowchart) หมายถึง ผังงานที่แสดงขั้นตอนตางๆ ในการทํางานของ ระบบ ชวยอธิบายลําดับการทํางานของสวนตางๆ ในระบบ เชน การนําขอมูลเขา(Input) ถูกเก็บ อยูที่ใดบาง ใช สื่อบัน ทึกขอ มูลแบบใด ลักษณะของการประมวลผล ตลอดจนลักษณะของ ผลลัพธ(Output) ผังงานระบบจะชวยอํานวยความสะดวกใหแกผูเขียนโปรแกรมและผูที่ เกี่ยวของที่ตองการทําความเขาใจการทํางานของระบบ ตัวอยางดังรูปที่ 3 เอกสารขอมูล โปรแกรมปรับปรุงขอมูล แฟมขอมูล รายงาน รูปที่ 3 ผังงานระบบ 2. ผังงานโปรแกรม(Program Flowchart) หมายถึง ผังงานที่ใชในการแสดงการทํางานของ โปรแกรมโดยละเอียดในแตละขั้นตอน ผังงานโปรแกรมเปนสิ่งจําเปนสําหรับผูเขียนโปรแกรม เพราะตองใชเปนแนวทางในการเขียนโปรแกรมและเมื่อโปรแกรมเกิดขอผิดพลาดการเขาไป วิเคราะหผังงานโปรแกรมจะทําไดงายกวาการเขาไปวิเคราะหตัวโปรแกรมโดยตรง ประโยชนของผังงาน 1. ใชแทนการจําลองความคิด ชวยใหเขาใจลําดับและความสัมพันธระหวางขั้นตอนในการทํางาน ตางๆ 2. ใช เ ปน สื่ อ กลางในการติ ดต อ ประสานความคิ ด ระหวา งผู ที่เ กี่ ยวข อ ง เชน นั กวิ เ คราะหร ะบบ (systems analyst) นักเขียนโปรแกรม(programmer) 3. ชวยในการทดสอบหรือทบทวนขั้นตอนการทํางาน เพื่อหาขอผิดพลาด
  • 8. -8- ตารางที่ 1 แสดงสัญลักษณและความหมายของสัญลักษณ สัญลักษณ ความหมาย การทํางานดวยมือ ( Manual Operation ) แทนจุดที่มี การทํางานดวยแรงคน การนําขอมูลเขา-ออกโดยทั่วไป(General input/output) แทนจุดที่จะนําขอมูล เขาหรือออกจากระบบคอมพิวเตอรโดยไมระบุชนิดอุปกรณ แถบบันทึกขอมูล(Magnetic tape) แทนจุดที่จะนําขอมูลเขาหรือออกจาก โปรแกรมดวยแถบบันทึกขอมูล จานบันทึกขอมูล(Magnetic disk) แทนจุดที่จะนําขอมูลเขาหรือออกจากโปรแกรม ดวยจานบันทึกขอมูล การปอนขอมูลเขาดวยมือ ( Manual Input ) แทนจุดที่จะนําขอมูลเขา ดวยมือ การแสดงขอมูล ( Display ) แทนจุดที่จะนําขอมูลเขาดวยจอภาพ การทําเอกสาร ( Document ) แทนจุดที่มีขอมูลเปนเอกสารหรือแสดงขอมูลดวย เครื่องพิมพ การตัดสินใจ ( Decision ) แทนจุดที่จะตองเลือกปฏิบัติอยางใดอยางหนึ่ง การปฏิบัติงาน ( Process) แทนจุดที่มการปฏิบัติงานอยางใดอยางหนึ่ง ี
  • 9. -9- การเตรียมการ (Preparation) แทนจุดกําหนดชื่อขอมูลหรือคาเริ่มตนตางๆ การเรียกโปรแกรมภายนอก (External subroutine) แทนจุดเรียกใชโปรแกรม ยอยที่ไมไดอยูในโปรแกรมนั้น การเรียกโปรแกรมภายใน (Internal subroutine) แทนจุดเรียกใชโปรแกรมยอยที่ อยูในโปรแกรมนั้น การเรียงขอมูล (Sort) แทนจุดที่มีการเรียงขอมูลใหมตามขอกําหนด ทิศทาง (Flow line) แทนทิศทางขั้นตอนการดําเนินงานซึ่งจะปฏิบัติตอเนื่องกัน ตามหัวลูกศรชี้ หมายเหตุ (Annotation) แทนจุดที่แสดงรายละเอียดเพิ่มเติมหรือหมายเหตุของจุด ตางๆ ที่แสดงในผังงานดวยสัญลักษณไมชัดเจน การติดตอทางไกล (Communication Link) แทนชวงที่มีการติดตอหรือการยาย ขอมูลดวยระบบติดตอทางไกล จุดเชื่อมตอ (Connector) แทนจุดเชื่อมตอของผังงานเมื่อใชสัญลักษณเพื่อให ดูงาย จุดเชื่อมตอหนากระดาษ (Off page Connector) แทนจุดเชื่อมตอของ ผังงานที่อยูคนละหนากระดาษ เริ่มตนและลงทาย (Terminal) แทนจุดเริ่มตนและลงทายของผังงานของ โปรแกรมหลักและโปรแกรมยอย
  • 10. - 10 - ตัวอยางที่ 5 การวางแผนไปโรงเรียน การจําลองความคิดดวยรหัสเทียม การจําลองความคิดเปนสัญลักษณ เริ่มตน ตื่นนอน เริ่มตน อาบน้ําแตงตัว ไปโรงเรียน ตื่นนอน จบ อาบน้ําแตงตัว ไปโรงเรียน จบ ตัวอยางที่ 6 การคํานวณพื้นที่รปวงกลม ู การจําลองความคิดดวยรหัสเทียม การจําลองความคิดเปนสัญลักษณ เริ่มตน รับคา radius เริ่มตน คํานวณพื้นที่ดวยสูตร area= 22/7*radius*radius รับคา radius แสดงคา area จบ area = 22/7 * radius * radius แสดงคา area จบ
  • 11. - 11 - ตัวอยางที่ 7 การจําลองความคิดในการหาผลบวก 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 ใหแสดงคําตอบ  จบ การจําลองความคิดเปนสัญลักษณ เริ่มตน N=0 K=1 N=N+K K=K+1 จริง K≤20 เท็จ แสดงคา N จบ
  • 12. - 12 - 5.3 การเขียนโปรแกรม จากการศึกษาหลักการขั้นตอนการแกปญหา ในหัวขอ 5.1 และ 5.2 หลังจากที่เราสามารถวิเคราะหปญหา และสรางแบบจําลองความคิดเพื่อแสดงขั้นตอนในการแกปญหาแลว ขั้นตอนตอไปคือ การลงมือแกปญหาตามขั้นตอน ที่ไดออกแบบไว โดยใชเครื่องมือชวยในการแกปญหา ในที่นี้หากเครื่องมือที่นักเรียนเลือก คือ ภาษาคอมพิวเตอรซึ่ง ถือไดวาเปนขั้นตอนหนึ่งที่สําคัญในการแกปญหาดวยคอมพิวเตอร การเขียนโปรแกรม (programming) หมายถึง กระบวนการใชภาษาคอมพิวเตอรเพื่อกําหนดโครงสรางของ ข อ มู ล และกํ า หนดขั้ น ตอนวิ ธี เ พื่ อ ใช แ ก ป ญ หาตามที่ ไ ด อ อกแบบไว โ ดยอาศั ย หลั ก เกณฑ ก ารเขี ย นโปรแกรม คอมพิวเตอรของแตละภาษา กอนการเขียนโปรแกรม ผูพัฒนาโปรแกรมจะตองเลือกภาษาที่จะนํามาชวยใชงานโดยพิจารณาจากปจจัย ตางๆ ในการทํางาน เชน ลักษณะของปญหา ความถนัดของผูเขียนโปรแกรม สภาพแวดลอมในการทํางานของระบบ ค อ ม พิ ว เ ต อ ร เ ป น ต น เ นื่ อ ง จ า ก ใ น ป จ จุ บั น มี ภ า ษ า ค อ ม พิ ว เ ต อ ร ใ ห เ ลื อ ก ไ ด ห ล า ย ภ า ษ า เ ช น ภาษาปาสคาล ภาษาซี ภาษาจาวา ภาษาเดลฟาย เปนตน ถึงแมแตละภาษาจะมีรูปแบบและหลักการในการสรางงาน ที่ แ ตกต า งกั น แต ทุ ก ภาษาจะต อ งมี โ ครงสร า งควบคุ ม หลั ก ทั้ ง 3 แบบได แ ก โครงสร า งแบบลํ า ดั บ (sequential structure) โครงสรางแบบมีทางเลือก (selection structure) และโครงสรางแบบทําซ้ํา (repetition structure) 5.3.1) โครงสรางแบบลําดับ โครงสรางแบบลําดับ คือโครงสรางแสดงขั้นตอนการทํางานที่เปนไปตามลําดับกอนหลัง และแตละ ขั้นตอนจะถูกประมวลผลเพียงครั้งเดียวเทานั้น สามารถแสดงการทํางานของโครงสรางนี้โดยใชผงงานไดดังรูป ั คําสั่งที่ 1 คําสั่งที่ 2 คําสั่งที่ 3 ……. คําสั่งที่ n รูปที่ 4 แสดงการทํางานของโครงสรางแบบลําดับ
  • 13. - 13 - 5.3.2) โครงสรางแบบมีทางเลือก โครงสรางแบบมีทางเลือก คือโครงสรางที่มีเงื่อนไข ขั้นตอนการทํางานบางขั้นตอนตองมีการตัดสินใจ เพื่อเลือกวิธีการประมวลผลขั้นตอไป และจะมีบางขั้นตอนที่ไมไดรับการประมวลผล การตัดสินใจอาจมี 2 ทางหรือ มากกวาก็ได โครงสรางที่มีทางเลือกเพียง 2 ทางเราเรียกชื่อวา โครงสรางแบบ if…then…else… และโครงสรางที่มี ทางเลือกมากกวา 2 ทาง เราเรียกชื่อวาโครงสรางแบบ case ซึ่งสามารถแสดงการทํางานของโครงสรางนี้โดยใชผังงาน ดังรูป เท็จ เงื่อนไข จริง คําสั่ง คําสั่ง รูปที่ 5 แสดงการทํางานของโครงสราง if…then…else… เงื่อนไข กรณีท่ี 1 กรณีที่ 2 กรณีที่ 3 กรณีที่ n คําสั่ง คําสั่ง คําสั่ง ….. คําสั่ง รูปที่ 6 แสดงการทํางานของโครงสราง case
  • 14. - 14 - ตัวอยางที่ 8 แสดงผังงานที่จําลองขั้นตอนวิธการเขียนและสงจดหมายใหอยูในรูปของสัญลักษณ ี เริ่มตน เขียนจดหมาย พับจดหมายใสซอง จาหนาซอง ปดซองจดหมาย เท็จ มีแสตมป จริง ซื้อแสตมป ติดแสตมป สงจดหมาย จบ
  • 15. - 15 - ตัวอยางที่ 9 แสดงผังงานทีจําลองขั้นตอนวิธีของเกมหยิบลูกบอลใหอยูในรูปของสัญลักษณ โดยมีเงื่อนไขวา ่  มีลูกบอลซึ่ง มี 5 สี กรณีหยิบไดสีแดง จะได 10 คะแนน กรณีหยิบไดสีฟา จะได 8 คะแนน กรณีหยิบไดสีเขียว จะได 6 คะแนน กรณีหยิบไดสีเหลือง จะได 4 คะแนน กรณีหยิบไดสีสม จะได 2 คะแนน เริ่มตน หยิบลูกบอล 1 ลูก สีของลูกบอล สีแดง สีฟา สีเขียว สีเหลือง สีสม ได 10 คะแนน ได 8 คะแนน ได 6 คะแนน ได 4 คะแนน ได 2 คะแนน จบ 5.3.3) โครงสรางแบบทําซ้า ํ โครงสรางแบบทําซ้ํา คือโครงสรางที่ขั้นตอนการทํางานบางขั้นตอนไดรับการประมวลผลมากกวา 1 ครั้ง ทังนี้ขนอยูกับเงื่อนไขบางประการ โครงสรางแบบทําซ้ํานี้ตองมีการตัดสินใจในการทํางานซ้ํา และลักษณะการ ้ ึ้ ทํางานของโครงสรางแบบนี้มี 2 ลักษณะ ไดแก แบบที่มีการตรวจสอบเงื่อนไขในการทําซ้ําทุกครั้งกอนดําเนินการกิจกรรมใดๆ ถาเงื่อนไขเปนจริงจะ ทํางานซ้ําไปเรื่อยๆ และหยุดเมื่อเงื่อนไขเปนเท็จ การทํางานลักษณะนี้แบงไดเปน 2 แบบยอย ไดแก การทําซ้ําแบบ for และแบบ while ลักษณะการทํางานของทั้งสองแบบนี้จะเหมือนกัน โดยสําหรับแบบ for นั้นมักใชกรณีที่ตองการ กําหนดจํานวนรอบการทํางานที่ชัดเจน แบบที่มีการดําเนินการกิจกรรมใดๆ กอนจํานวนหนึ่งรอบ แลวจึงคอยตรวจสอบเงื่อนไขในการทําซ้ํา ถาเงื่อนไขเปนจริงจะทํางานซ้ําไปเรื่อยๆ และหยุดเมื่อเงื่อนไขเปนเท็จ เรียกการทํางานแบบนี้วา การทําซ้ําแบบ do…while ผังงานแสดงขั้นตอนการทํางานซ้ําทั้งสองแบบแสดงดังรูปที่ 7 และ 8
  • 16. - 16 - คําสั่ง … คําสั่ง จริง เงื่อนไข เท็จ รูปที่ 7 แสดงการทํางานของการทําซ้ําแบบ for และแบบ while คําสั่ง … คําสั่ง จริง เงื่อนไข เท็จ รูปที่ 8 แสดงการทํางานของการทําซ้ําแบบ do…while โครงสรางควบคุมทั้ง 2 แบบที่กลาวมาขางตนก็คือ ขั้นตอนที่เราใชในการแกปญหานั้นเอง พิจารณา ตัวอยางที่ 10 เปนขั้นตอนการเลือกเครื่องมือและการออกแบบขั้นตอนวิธี คือ ขั้นตอนที่ 2 ในหัวขอ 5.1 เราเลือกสราง ผังงานมาจําลองขั้นตอนวิธีในการหาคาเฉลี่ยของจํานวน 5 จํานวน จากตัวอยางที่ 2 และในตัวอยางที่ 10 มีการแสดง โครงสรางควบคุมแบบลําดับและแบบทําซ้ําที่ใชในการแกปญหาดวย
  • 17. - 17 - ตัวอยางที่ 10 แสดงผังงานที่จําลองขั้นตอนวิธีการหาคาเฉลี่ยของจํานวนเต็ม 5 จํานวน ใหอยูในรูปของ สัญลักษณ เริ่มตน กําหนดคาเริ่มตน sum=0 กําหนดคาเริ่มตน N=1 เพิ่มคาตัวนับจํานวน N=N+1 เพิ่มคาผลบวก sum=sum+data รับตัวเลขเปนขอมูลเขาทีละตัว เก็บในตัวแปรชื่อ data N≤5 จริง เท็จ คํานวณคาเฉลี่ยเก็บในตัวแปร A A=sum/5 แสดงคา A จบ