Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore โปรเจ็ค

โปรเจ็ค

Published by Teerawat2543k, 2021-02-18 07:59:59

Description: โปรเจ็ค

Search

Read the Text Version

1.อลั กอริทึม (Algorithm)Algorithm การหา 1.ซูโด พนื ทีส่ ามเหลี่ยมเร่ิมต้น โค้ด (Pseudocodes)Algorithm 2.รบั คำ่ ควำมยำวของฐำนมำเก็บใน TriangleSTART ตวั แปร X 2.READ X 3.รบั คำ่ ควำมยำวของสูงมำเกบ็ ใน 3.READ Y ตวั แปร Y 4.Compute ARRAY = ( X*Y ) / 2 4.คำนวณหำพน้ื ท่ี ARRAY = ( 5.Print ARRAY X*Y ) / 2 6.END 5.แสดงผลพนื้ ที่ 6.จบ

• 7.3 กำรเขยี นซโู ดโคด้ ในกำรเปรียบเทยี บ • ในกำรตดั สินใจจะตอ้งมีกำรเปรียบเทียบเงื่อนไขเกดิ ขึน้ โดย ผลลัพธ์ทีจ่ ะเป็นจริงหรอื เท็จอยำ่ งใด อย่ำงหน่ึงเท่ำนน้ั กำรตัดสนิ ใจเพอื่ เลือกทำง ระหวำ่ งทำงสองทำงจะใช้คำ ว่ำ IF หรือ IF-THEN-ELSEและ END-IF โดยจะเปรียบเทียบเง่อื นไขถ้ำเงื่อนไขเปน็ จรงิ จะทำ กล่มุ คำสั่ง กลุ่มหนงึ่ ถ้ำเปน็ เทจ็ จะทำ กลุ่มคำสง่ั อกี กลุ่มหนงึ่ • 7.4 กำรเขียนซโู ดโคด้ ในกำรทำงำนแบบวนซำ้ • การเขยี นซโู ดโคด้ (Pseudo Code) ในการทางานแบบวนซา • วนซาโดยไมท่ ราบจานวนครงั ของการวนซา • while เป็นกำรวนซ้ำโดยเปรยี บเทียบเง่ือนไขกอ่ น เง่อื นไขเปน็ จรงิ ทำซ้ำไปเรื่อย ๆ เม่ือเง่ือนไขเปน็ เทจ็ จะกระโดดข้ำมไปทำคำสงั่ ต่อไป • repeat - until วนซำ้ กอ่ นแลว้ ค่อยเปรียบเทยี บเงื่อนไข เงื่อนไข เป็นเท็จจะทำซ้ำไปเรอ่ื ย ๆ เงือ่ นไขเป็นจริงจงึ จะขำ้ มไปทำคำสัง่ ตอ่ ไป • For กำรวนซำ้ ท่ีมีกำรเพม่ิ ค่ำในแตล่ ะรอบ จะใช้คำ วำ่ FOR และ ENDFOR โดยมคี ำวำ่ IN STEPS OF เปน็ กำรบอกค่ำทเี่ พิ่ม ในแตล่ ะรอบ ถ้ำไม่มีคำว่ำ IN STEPS OF หมำยควำมว่ำ เพม่ิ คำ่ รอบละ หนง่ึ • • รูปแบบ while • while condition • sequence • endwhile •

• Pseudo Code ของกำรพิมพต์ ัวเลข 1-10 ออกทำงหน้ำจอ โดย ตรวจสอบเง่อื นไขกอ่ นแลว้ คอ่ ยทำคำสั่ง • • ตวั อย่าง while • init num : integer • init num = 1 • while (num <= 10) • print num • increase num (num+1) • endwhile • • รปู แบบ repeat - until • repeat • sequence • until condition • Pseudo Code ของกำรพิมพ์เลข 1-10 ออกทำงหน้ำจอ โดยทำ คำส่ังก่อนคอ่ ยตรวจสอบเง่ือนไข • • ตัวอย่าง repeat - until • init num : integer • init num = 1 • repeat • print num •

• increase num (num+1) • until num > 10 • • รปู แบบ for • for iteration bounds • sequence • endfor • • ตัวอย่าง for • init num : integer • for num = 1 to 10 do • print num • endfor • • สรุป •

รปู แบบท่ี การทางานด้าน รูปแบบคาสัง่ เทยี มท่ีใช้ ความหมาย 1 กำรรัยขอ้ มลู เขำ้ Read อำ่ นเรคคอรด์ จำกแฟม้ ข้อมูล 2 Get รับจำก Keyboard และอปุ กรณ์ นำขอ้ มลู เข้ำอ่นื ๆ 3 กำรแสดงผลข้อมลู Print 4 Write แสดงผลออกทำงเครอ่ื งพิมพ์ Put, Output, Display บนั ทึกขอ้ มูลลงแฟม้ ข้อมลู ดำ้ นกำรคำนวณ +, -, *, /, ^ แสดงผลออกทำงจอภำพ ด้ำนกำรกำหนดคำ่ Initialize, Set คอมพวิ เตอร์ = เป็นตัวดำเนนิ กำรกระทำกบั ขอ้ มูลโดยคำนงึ ถึงลำดบั ของตัว กระทำกอ่ นหลังเป็นสำคญั กำหนดค่ำเรม่ิ ตน้ ให้กบั ข้อมลู ที่ ใช้ เก็บผลลพั ธจ์ ำกกำรทำงำนด้ำน ขวำมือของเครื่องหมำยไปไว้ ทำงดำ้ นซำ้ ยมอื ของเครือ่ งมือ Save, Store กำรกำหนดคำ่ ให้กับตัวแปรเพื่อ นำมำใชง้ ำนภำยหลัง 5 ด้ำนกำรเปรียบเทยี บ IF…Then…Else…Endif เปรบี เทยี บหรือทำกำรเลือก และทำงเลอื ก ทำงเลือกใดทำงเลือกหน่ึง ออกมำ 6 กำรทำงำนซำ้ Do While หรอื While…Do เงื่อนไขเป็นจรงิ ทำกำรวนลูป หำกเป็นเทจ็ ขำ้ มปำคำสั่งถัดไป Repeat…Untill เง่ือนไขเป็นเท็จทำกำรวนลูป หำกเป็นจรงิ ข้ำมไปทำคำสงั่ ถดั ไป

ลาดับความสาคญั ของเครอ่ื งหมาย การใชส้ ัญลักษณ์เขียนประโยคคาส่งั เงื่อนไขแบบ 1 ประโยค

ตวั อยา่ งการเขยี นนิพจน์ใชเ้ ง่ือนไขแบบ 1 ประโยค ตวั อย่างการเขียนนิพจน์ใช้เงื่อนไขแบบ 2 ประโยค

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



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

• 8.1 กำรทำงำนแบบเรยี งลำดับ • หลังจำกที่ทำกำรหำกระบวนกำรทำงำนทั้งหมดของ ผังงำน ขั้นตอนต่อไปคือ กำรเขียนข้อควำมท่ีใช้สำหรับอธิบำยกำร ทำงำนท่ีเหมำะสมกับกระบวนกำรทำงำน ข้อควำมท่ีใช้สำหรับอธิบำย กำรทำงำนของแตล่ ะสญั ลักษณข์ องผงั งำน สำมำรถเขยี นไดด้ ังนี้ •

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

• ดำเนินกำรโดยโมดูลนส้ี ำหรับแต่ละ จำกปัจจัยกำรผลิต) ข้อกำหนดกำร ทำงำนของโมดลู นี้สร้ำงขึน้ ในรูปแบบเดยี วกับขอ้ กำหนดเฉพำะของ MS • ในระหว่ำงกำรพัฒนำโปรแกรมโครงสร้ำง modular สำมำรถสร้ำง และใช้เพ่ือกำหนดลำดับกำรเขียนโปรแกรมและกำรดีบักของโมดูลที่ ระบุไว้ในโครงสร้ำงนี้ได้ ดังน้ันเรำสำมำรถพูดคุยเก่ียวกับวิธีกำรที่ แตกต่ำงกันในกำรพฒั นำโครงสรำ้ งของโปรแกรม โดยปกตใิ นวรรณคดีมี กำรกล่ำวถึงสองวิธี: วิธีกำรพัฒนำด้ำนล่ำงขึ้นและวิธีกำรในกำรพัฒนำ จำกบนลงล่ำง • วิธี กำรพัฒนำด้ำนล่ำงข้ึน มีดังนี้ ก่อนโครงสร้ำงแบบโมดูลของ โปรแกรมถูกสร้ำงขึ้นในรูปแบบของต้นไม้ Zatempoocheredno โมดูลต้ังโปรแกรมของโปรแกรมที่เริ่มต้นด้วยโมดูลระดับต่ำสุด (ใบของ โครงสร้ำงของโปรแกรม modular) ในลกั ษณะดังกล่ำวว่ำสำหรับแต่ละ โมดูลโปรแกรมโมดูลท้ังหมดมีอยู่แล้วรับโปรแกรมซึ่งเขำสำมำรถอ้ำง หลังจำกที่โปรแกรมท้ังหมดได้รับกำรตั้งโปรแกรมไว้แล้วพวกเขำจะ ได้รับกำรทดสอบในทำงกลับกันและมีกำรแก้ไขตำมหลักกำรในลำดับ เดียวกัน (ข้ึนไป) ซ่ึงได้ถูกตั้งโปรแกรมไว้ ได้อย่ำงรวดเร็วก่อนขั้นตอน กำรพัฒนำโปรแกรมนี้ดูเหมือนจะค่อนข้ำงเป็นธรรมชำติ: แต่ละโมดูล จะแสดงในกำรเขียนโปรแกรมผ่ำนโมดูลรองโดยตรงท่ีตั้งโปรแกรมไว้ แล้วและเมื่อกำรทดสอบใช้โมดูลที่แก้ไขแล้ว อย่ำงไรก็ตำมเทคโนโลยี สมัยใหม่ไม่แนะนำให้มีกำรพัฒนำโปรแกรมดังกล่ำว ประกำรแรก สำหรับกำรเขียนโปรแกรมของโมดูลน้ีไม่จำเป็นต้องโมดูลข้อควำมที่ใช้ โดยมัน - มันก็เพยี งพอที่แต่ละโมดูลที่ใช้ระบุเท่ำน้ัน (ในปริมำณมำกซึ่ง จะช่วยในกำรสร้ำงกำรอ้ำงอิงท่ีเหมำะสมกับมัน) และในกำรทดสอบก็ เปน็ ไปได้ (และแมก้ ระท่งั ตำมที่เรำจะแสดงดำ้ นลำ่ งจะเปน็ ประโยชน์

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

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

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



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

• กำรเขยี นขน้ั ตอนวิธสี ำหรบั กำรทำงำนแบบทำซ้ำ ได้รับกำรพัฒนำมำ จำกโครงสร้ำงผงั งำนกำรทำซ้ำ วธิ กี ำรเขยี นอธบิ ำยขั้นตอนวิธีกำรทำงำนและรหัสเทยี มสำหรับ โครงสรำ้ งผงั งำนแบบทำซำ้ มีวธิ ีกำรเขียนต่ำงไปจำกกำรทำงำนแบบ ลำดบั และแบบเลือกทำ แตบ่ ำงครั้งกำรทำงำนของขนั้ ตอนวิธกี ำร แก้ปญั หำทีม่ ขี น้ั ตอนวิธีกำรทำงำนแบบทำซำ้ อำจประกอบดว้ ยข้ันตอน วธิ ีกำรทำงำนแบบลำดับหรือขั้นตอนวธิ ีกำรทำงำนแบบเลือกทำร่วมอยู่ ในขัน้ ตอนวิธกี ำรทำงำน ดงั นน้ั กำรเขยี นอธบิ ำยขั้นตอนวิธีกำรทำงำน แบบทำซ้ำ จะใชก้ ำรเขยี นอธิบำยขัน้ ตอน สำหรบั ขัน้ ตอนวธิ ีกำรทำงำน ในลกั ษณะน้ัน การเขียนขันตอนวิธสี าหรับการทางานแบบทาซา ลักษณะของกำรทำงำนแบบทำซ้ำ มลี กั ษณะกำรทำงำน อยู่ 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 กำรเขียนอธบิ ำยขั้นตอนวธิ ีกำรทำงำนจำกผงั งำนทีม่ ี โครงสร้ำงผงั งำนกำรทำซำ้ ลกั ษณะทำในขณะท่ีเปน็ สว่ นประกอบ

• ตัวอย่างที่ 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 กำรเขียนรหสั เทียมจำกกำรอธิบำยขนั้ ตอนวธิ กี ำรทำงำนที่มี กำรทำซ้ำลักษณะทำจนกระท่ังเป็น

• ส่วนประกอบ • 9.2 แนวทำงกำรประยกุ ต์กำรทำซ้ำ • โปรแกรมแบบวนซำ้ (Loop) นอกจำกโปรแกรมแบบทำงเลอื กที่ นกั เรยี นได้เรยี นมำแล้วนั้นซึ่งถือวำ่ เปน็ หัวใจสำคญั ของกำรเขยี น โปรแกรมแก้ปัญหำต่ำงๆ หวั ใจของกำรเขียนโปรแกรมอกี รูปแบบหน่งึ ที่ มีควำมสำคัญไม่ยงิ หย่อนไปกว่ำกนั น้ันก็คอื โปรแกรม แบบวนซำ้ (Loop) หรอื โปรแกรมแบบทำซำ้ กำรทำงำนแบบวนซ้ำกค็ อื กำรท่ี โปรแกรมสำมำรถทำตำมคำสัง่ ใดๆ ไดม้ ำกกว่ำ 1 ครัง้ สมมตวิ ำเรำ ตอ้ งกำรแสดงคำว่ำ “Hello” จำนวน 3 คร้ัง กำรเขียนโปรแกรมรูป แบบเดิมที่เรำไดเ้ รียนมำแลว้ จะได้รหสั คำสั่ งดงั น้ี Console.WriteLine(\"Hello\"); Console.WriteLine(\"Hello\"); Console.WriteLine(\"Hello\"); จะเห็นวำเรำตอ้ งเขียนคำสง่ั แบบเดียวกันถงึ 3 บรรทดั จึงจะไดผ้ ลลพั ธต์ ำมท่เี รำตอ้ งกำร ทีน่ น้ี ักเรยี นลองคดิ ต่อไปอกี วำ ถ้ำหำก วำ่ เรำต้องกำรแสดงคำน้ี จำนวน 1,000,000 คร้ัง เรำจะตอ้ งเขยี นรหัส คำส่งั อีกกบี่ รรทดั ... ถูกต้องแลว้ ครบั น้ันคอื เรำจะต้องเขยี นรหสั คำสง่ั อกี 1,000,000 บรรทัด ถ้ำเป็นแบบนก้ี ำรเขียนโปรแกรมก็คงจะยุงยำก น่ำดู จำกปัญหำดังกลำ่ ว

• ผพู้ ัฒนำโปรแกรมภำษำทกุ ภำษำจงึ ได้พัฒนำโปรแกรมแบบวนซำ้ มำ เพือ่ ให้กำรเขียน โปรแกรมมีควำมกระชบั สนั้ และมปี ระสทิ ธภิ ำพ กำร เขยี นโปรแกรมเพอ่ื แสดงคำวำ ่ “Hello” จะกลี่ ้ำนครง้ั กไ็ ม่ใช่ ปญั หำอกี ตอ่ ไป นักเรยี นลองดรู หัสคำสั่ งสำหรบั กำรแสดงคำวำ ่ “Hello” จำนวน 3 บรรทัด ดังตอ่ ไปนี้ • for (int i = 1; i <= 3; i++) •{ • Console.WriteLine(\"Hello\"); •} • และรหสั คำสัง่ สำหรบั กำรแสดงผลคำวำ ่ “Hello” จำนวน 1,000,000 บรรทัด • for (int i = 1; i <= 1000000; i++) •{ • Console.WriteLine(\"Hello\"); •} • จะเห็นวำควำมยำวของรหสั คำสงั่ ยังเท่ำเดมิ นี่แหละคอื ประโยชนข์ อง โปรแกรมแบบวนซำ้


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook