วันพฤหัสบดีที่ 17 มีนาคม พ.ศ. 2559

การทำงานแบบทำซ้ำ

การทำงานแบบทำซ้ำ


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


การเขียนขั้นตอนวิธีสำหรับการทำงานแบบทำซ้ำ


ลักษณะของการทำงานแบบทำซ้ำ มีลักษณะการทำงานอยู่ 2 ลักษณะคือ


        1. ทำการตรวจสอบเงื่อนไขก่อนการทำซ้ำหรือ ทำในขณะที่ ( Do – While )
        2. ทำการตรวจสอบเงื่อนไขหลังจากการทำซ้ำหรือทำจนกระทั่ง ( Do – Until )


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


การเขียนขั้นตอนวิธีสำหรับการทำงานแบบทำซ้ำ ลักษณะทำในขณะที่


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








สามารถทำการเขียนเป็นการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความได้ดังนี้
            1. ในขณะที่ เงื่อนไข ทำ
                    1.1 Process 1


            การเขียนอธิบายขั้นตอนวิธีการทำงานย่อยที่อยู่ภายใต้การทำซ้ำ ขึ้นอยู่กับลักษณะการทำงานของกระบวนการทำงานย่อยที่อยู่ภายใต้การทำซ้ำ ถ้าเป็นลักษณะการทำงานแบบลำดับ ก็ใช้การเขียนอธิบายขั้นตอนวิธีการทำงานสำหรับการทำงานแบบลำดับ ถ้าเป็นลักษณะการทำงานแบบเลือกทำ ก็ใช้การเขียนอธิบายการทำงานแบบเลือกทำ




                จากส่วนของผังงานที่มีโครงสร้างผังงานการทำซ้ำลักษณะทำในขณะที่เป็นส่วนประกอบ สามารถทำการเขียนอธิบายขั้นตอนวิธีการทำงานในลักษณะข้อความ ได้ดังนี้


            1. ในขณะที่ A > B ทำ
                    1.1 A <-- A – 1
                    1.2 B <-- B + 1
                    1.3 แสดงค่าของ A และ B


ตัวอย่างที่ 1 การเขียนอธิบายขั้นตอนวิธีการทำงานจากผังงานที่มีโครงสร้างผังงานการทำซ้ำ ลักษณะทำในขณะที่เป็นส่วนประกอบ




            จากผังงานในตัวอย่างที่ 1 จะมีกระบวนการทำงานหลักทั้งหมด 4 กระบวนการทำงาน โดยในกระบวนการทำงานที่ 3 เป็นการทำงานแบบทำซ้ำ กระบวนการทำงานย่อยที่อยู่ภายใต้การทำซ้ำเป็นการทำงานแบบลำดับ สามารถเขียนอธิบายขั้นตอนวิธีการทำงานได้ดังนี้


            1. เริ่มต้นการทำงาน
            2. กำหนดค่าให้ A เท่ากับ 1
            3. ในขณะที่ A <>
                    3.1 คำนวณค่า A เท่ากับ A + 1
                    3.2 แสดงค่า A
            4. จบการทำงาน


ตัวอย่างที่ 2 การเขียนอธิบายขั้นตอนวิธีการทำงานจากผังงานที่มีโครงสร้างผังงานการทำซ้ำลักษณะทำให้ขณะที่เป็นส่วนประกอบ






            จากผังงานมีกระบวนการทำงานหลักทั้งหมด 6 กระบวนการทำงาน โดยในกระบวนการทำงานที่ 4 เป็นการทำงานแบบทำซ้ำ กระบวนการทำงานที่เป็นการทำงานย่อยที่อยู่ภายใต้การทำซ้ำ มีทั้งการทำงานแบบลำดับและการทำงานแบบเลือกทำ สามารถทำการเขียนการอธิบายขั้นตอนวิธีการทำงาน ได้ดังนี้


            1. เริ่มต้นการทำงาน
            2. กำหนดค่าให้ A เท่ากับ 1
            3. รับค่าของ B
            4. ในขณะที่ A <>
                    4.1 คำนวณค่าของ A เท่ากับ A + 1
                    4.2 ถ้า A <>
                            4.2.1 คำนวณค่าของ A เท่ากับ A + 2 มิฉะนั้นแล้ว
                            4.2.2 คำนวณค่าของ B เท่ากับ B – 1
                    4.3 แสดงค่าของ A
            5. แสดงค่าของ B
            6. จบการทำงาน


รหัสเทียมสำหรับการทำซ้ำลักษณะทำในขณะที่


            รหัสเทียมที่ใช้สำหรับการอธิบายขั้นตอนวิธีการทำงานแบบทำซ้ำลักษณะทำในขณะที่ รหัสเทียมที่ใช้คือ “WHILE – DO” โดยใช้รหัสเทียม “WHILE” แทนคำอธิบายว่า “ในขณะที่” หรือ “ตราบใดที่” และใช้รหัสเทียม “DO” แทนคำอธิบายว่า “ทำ” การเขียนรหัสเทียมสำหรับการทำงานย่อยที่อยู่ภายใต้การทำงานแบบทำซ้ำ จะใช้รหัสเทียมตามการทำงานในแต่ละลักษณะและใช้ย่อหน้าช่วยสำหรับในการบอกว่า รหัสเทียมนี้เป็นการทำงานย่อยของการทำซ้ำนั้น การเขียนรหัสเทียมจากการอธิบายลำดับขั้นตอนวิธีการทำงานในลักษณะข้อความ สามารถทำได้ ดังนี้
ตัวอย่างที่ 3 การเขียนรหัสเทียมจากการอธิบายขั้นตอนวิธีการทำที่มีการทำซ้ำลักษณะทำในขณะที่เป็นส่วนประกอบ






ตัวอย่างที่ 4 การเขียนรหัสเทียมจากการอธิบายขั้นตอนวิธีการทำที่มีการทำซ้ำลักษณะทำในขณะที่เป็นส่วนประกอบ




การเขียนขั้นตอนวิธีสำหรับการทำซ้ำลักษณะทำจนกระทั่ง


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




            จากส่วนของผังงานที่มีโครงสร้างผังงานเป็นการทำซ้ำลักษณะทำจนกระทั่ง สามารถทำการเขียนเป็นการอธิบายขั้นตอนวิธีการทำงานในลักษณะข้อความได้ดังนี้
                    1. ทำจนกระทั่ง Condition
                            1.1 Process




            จากส่วนของผังงานที่มีโครงสร้างผังงานการทำซ้ำลักษณะทำจนกระทั่ง สามารถทำการเขียนอธิบายขั้นตอนการทำงานในลักษณะของข้อความ ดังนี้
                    1. ทำจนกระทั่ง N เท่ากับ 0
                            1.1 รับค่าของ N
                            1.2 คำนวณค่าของ Sum เท่ากับ Sum + N


ตัวอย่างที่ 5 การเขียนอธิบายขั้นตอนวิธีการทำงานจากผังงานที่มีโครงสร้างผังงานการทำซ้ำลักษณะทำจนกระทั่ง เป็นส่วนประกอบ




            จากผังงานในตัวอย่างที่ 5 จะมีกระบวนการทำงานหลักอยู่ 4 การทำงาน โดยในกระบวนการทำงานที่ 3 เป็นการทำงานแบบทำซ้ำลักษณะทำจนกระทั่ง การทำงานย่อยที่อยู่ภายใต้การทำซ้ำ เป็นการทำงานแบบลำดับ สามารถเขียนอธิบายขั้นตอนวิธีการทำงานได้ดังนี้


                    1. เริ่มต้นการทำงาน
                    2. กำหนดค่าให้ A <-- 1
                    3. ทำซ้ำจนกระทั่ง A <>
                            3.1 แสดงค่า A
                            3.2 คำนวณค่า A เท่ากับ A + 1
                    4. จบการทำงาน


ตัวอย่างที่ 6 การเขียนอธิบายขั้นตอนวิธีการทำงานจากผังงานที่มีโครงสร้างผังงานการทำซ้ำลักษณะทำจนกระทั่ง เป็นส่วนประกอบ




            จากผังงานในตัวอย่างที่ 6 มีกระบวนการทำงานหลักอยู่ทั้งหมด 6 การทำงาน ในขั้นตอนการทำงานที่ 4 เป็นการทำงานแบบทำซ้ำลักษณะทำจนกระทั่ง สามารถเขียนเป็นการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความได้ดังนี้


                    1. เริ่มต้นการทำงาน
                    2. กำหนดให้ ANS มีค่าเท่ากับ 1
                    3. รับค่า N
                    4. ทำจนกระทั่ง N <>
                            4.1 คำนวณค่า ANS เท่ากับ ANS * N
                            4.2 คำนวณค่า N เท่ากับ N – 1
                    5. แสดงค่าของ ANS
                    6. จบการทำงาน


ตัวอย่างที่ 7 การเขียนอธิบายขั้นตอนวิธีการทำงานจากโครงสร้างผังงานการทำซ้ำ




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


                    1. เริ่มต้นการทำงาน
                    2. กำหนดค่าให้ ANS เท่ากับ 0
                    3. ทำจนกระทั่ง N น้อยกว่า 0
                            3.1 รับค่า N
                            3.2 ถ้า N มากกว่า 0 แล้วทำ
                                        3.2.1 คำนวณค่า ANS เท่ากับ ANS + N
                    4. แสดงค่าของ ANS
                    5. จบการทำงาน


รหัสเทียมสำหรับการทำซ้ำลักษณะทำจนกระทั่ง


            รหัสเทียมสำหรับการอธิบายขั้นตอนวิธีการทำซ้ำลักษณะทำจนกระทั่ง รหัสเทียมที่ใช้คือ “DO – UNTIL” แทนคำอธิบายว่า “ทำจนกระทั่ง” จากการอธิบายขั้นตอนวิธีการทำงานในลักษณะของข้อความ รหัสเทียมสำหรับขั้นตอนวิธีที่เป็นการทำงานย่อยภายใต้การทำซ้ำ ขึ้นอยู่กับลักษณะการทำงานถ้าเป็นการทำงานแบบเลือกทำ ก็ใช้รหัสเทียมสำหรับการเลือกทำ ถ้าเป็นการทำงานแบบทำซ้ำ ก็ใช้รหัสเทียมสำหรับการทำซ้ำ


ตัวอย่างที่ 8 การเขียนรหัสเทียมจากการอธิบายขั้นตอนวิธีการทำงานที่มีการทำซ้ำลักษณะทำจนกระทั่งเป็นส่วนประกอบ




ตัวอย่างที่ 9 การเขียนรหัสเทียมจากการอธิบายขั้นตอนวิธีการทำงานที่มีการทำซ้ำลักษณะทำจนกระทั่งเป็นส่วนประกอบ


 
 
 
 

ไม่มีความคิดเห็น:

แสดงความคิดเห็น