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 chulalak thachaila, 2019-09-08 23:14:22

Description: โครงสร้างการทำงานแบบเลือกทำ
การอธิบายขั้นตอนวิธีการทำงานแบบเลือกทำ
การปรับโครงสร้างผังงานการทำงานแบบเลือกทำ
การเขียนคำสั่งเทียมจากโครงสร้างแบบเลือกทำ
ตัวอย่างการทำงานแบบเลือกทำ

Search

Read the Text Version

[หปนี ]ว่ ยท่ี 7 โครงสร้างโปรแกรมแบบเลอื กทา TOP Ezy [เลือกวนั ที่] จุฬาลกั ษณ์ ถาไชยลา ภาควิชาคอมพวิ เตอรธ์ ุรกิจ วิทยาลยั อาชีวศึกษามหาสารคาม

หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา 121 หน่วยที่ 7 โครงสร้างการทางานแบบเลอื กทา สาระการเรียนรู้ 1. โครงสรา้ งการทางานแบบเลือกทา 2. การอธิบายข้นั ตอนวธิ ีการทางานแบบเลือกทา 3. การปรับโครงสรา้ งผงั งานการทางานแบบเลือกทา 4. การเขียนคาสงั่ เทยี มจากโครงสร้างแบบเลือกทา 5. ตวั อยา่ งการทางานแบบเลือกทา จดุ ประสงค์การเรียนรู้ 1. อธิบายลกั ษณะการทางานของข้นั ตอนวธิ ีการทางานแบบเลือกทาได้ 2. เขียนข้นั ตอนวธิ ีการทางานแบบเลือกทาจากผงั งานได้ 3. ปรบั โครงสร้างผงั งานการทางานแบบเลือกทาได้ 4. เขียนคาสง่ั เทยี มจากข้นั ตอนวธิ ีการทางานได้ 5. เขียนผงั งานการทางานแบบเลือกทาได้ 5. มีความสนใจใฝ่ เรียนรู้ ต้งั ใจเรียน 6. มีวนิ ยั เขา้ เรียนทนั เวลา ปฏิบตั ิตามกฎระเบียบของวทิ ยาลยั ฯ 7. มีความรบั ผดิ ชอบงานทไ่ี ดร้ บั มอบหมาย 8. มีความคิดริเร่ิมสร้างสรรค์ มีความเชื่อมนั่ กลา้ ลองผดิ ลองถูก 9. มีความซ่ือสตั ยต์ อ่ ตนเองและผอู้ ่ืน จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

122 หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา โครงสร้างผงั งานแบบเลอื กทา โครงสร้างผงั งานแบบเลือกทา ใชใ้ นกรณีทีต่ อ้ งการเลือกข้นั ตอนในการทางานให้ เหมาะสมในขณะน้นั โครงสรา้ งแบบเลือกทาประกอบดว้ ยสญั ลกั ษณ์ของการตดั สินใจ 1 สญั ลกั ษณ์ เพอ่ื ใชใ้ นการตรวจสอบและตดั สินใจเลือกกระทาข้นั ตอนตอ่ ไป มีอยู่ 2 กรณี คือ กรณีทีเ่ ง่ือนไขเป็ น จริงและกรณีทเี่ งือ่ นไขเป็ นเทจ็ ลกั ษณะโครงสรา้ งผงั งานแบบเลือกทาจะมีลกั ษณะดงั น้ี รูปแบบที่ 1 Y เงื่อนไข N Process 2 Process 1 รูปแบบที่ 2 N Y Process 1 เงื่อนไข Process 2 ผลท่ไี ดจ้ ากการตรวจสอบเงือ่ นไข ถา้ เป็นจริง ไม่จาเป็นจะตอ้ งอยดู่ า้ นซา้ ยเสมอไปอาจจะ ไปอยดู่ า้ นขวากไ็ ด้ และถา้ ผลการตรวจสอบเป็ นเทจ็ กไ็ ม่จาเป็นจะตอ้ งอยดู่ า้ นขวาเสมอไปอาจจะอยู่ ดา้ นซา้ ยกไ็ ด้ จาผงั งานขา้ งตน้ ในข้นั ตอนแรกจะพจิ ารณาเงอ่ื นไขท่ใี ชส้ าหรบั ตดั สินใจเพอื่ เลือก ข้นั ตอนการทางานตอ่ ไป ถา้ เงอื่ นไขทไี่ ดเ้ ป็นจริง ข้นั ตอนตอ่ ไปก็คอื ข้นั ตอนของ Process 1 ถา้ เงื่อนไขท่ไี ดเ้ ป็นเทจ็ ข้นั ตอนท่จี ะทาตอ่ ไป คอื ข้นั ตอนของ Process 2 การทางานของโครงสรา้ ง ผงั งานแบบเลือกทาน้ีจะทาทลี ะ Process จะไมท่ าพรอ้ ม ๆกนั หลาย ๆ Process Process แตล่ ะ process อาจจะเป็นโครงสร้างผงั งานแบบลาดบั หรือโครงสร้างผงั งาน แบบเลือกทา หรือโครงสร้างผงั งานแบบทาซ้าก็ได้ จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา 123 ลกั ษณะโครงสรา้ งผงั งานแบบเลือกทาอาจจะไม่จาเป็นตอ้ งทาครบท้งั 2 กรณี กไ็ ด้ เช่น กรณีที่ผลของการตรวจสอบเงอื่ นไขเป็นจริง อาจจะมีข้นั ตอนการทางานท่ีตอ้ งทาต่อไป เพยี งกรณี เดียวกไ็ ด้ ส่วนถา้ ผลการตรวจสอบเงอ่ื นไขเป็นเทจ็ กจ็ ะไม่มีข้นั ตอนการทางานทีต่ อ้ งการกระทา ต่อไปกไ็ ด้ Y เงื่อนไข N Process 1 กรณีน้ีถา้ ตรวจสอบเง่ือนไขแลว้ เป็นจริง ทา Process 1 เป็ นลาดบั ถดั ไป แตถ่ า้ เงือ่ นไขเป็ น เทจ็ ไม่มีข้นั ตอนการทางานใดท่ีตอ้ งทาตอ่ ไป ตวั อย่างท่ี 1 Start Y Read A X  (A + 1) 2 N X  (A – 1)2 A=0 Write X , A Stop จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

124 หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา ตวั อย่างท่ี 2 Start Read a, b , c N Y M  b2 X  p2 Write “หาค่าไม่ได้” N 4*a*c P M-N P>0 X1  (-b + x) / (2 * a) X1  (+b + x) / (2 * a) Write X1 ,X2 Stop ตวั อย่างที่ 3 Start Y Read Score N Grade  “G” Score > 80 Y N Score > 60 Grade  “P” Grade  “F” Write Score ,Grade Stop จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา 125 การอธิบายข้นั ตอนวธิ ีการทางานแบบเลอื กทา การอธิบายลาดบั ข้นั ตอนวธิ ีการแกป้ ัญหา หรืออลั กอริทึม (Algorithm) ในข้นั ตอนการ ทางานแบบเลือกทาจะถูกพฒั นามาจากผงั งาน (Flowchart) ทมี่ ีโครงสร้างผงั งานเป็นแบบ โครงสรา้ งการเลือกทา (Selection) จากน้นั นาไปพฒั นาใหเ้ ป็นคาสง่ั เทียม และโปรแกรม คอมพวิ เตอร์ตามข้นั ตอนตอ่ ไป วธิ ีการเขียนอธิบายข้นั ตอนวธิ ีการแกป้ ัญหาของการทางานแบบเลือกทา จะใชก้ ารอธิบาย ข้นั ตอนวธิ ีการทางานแบบลาดบั เป็นพ้นื ฐานประกอบดว้ ย การเลือกทาจะใชค้ าวา่ “ถา้ ” ตามดว้ ย เงือ่ นไขทีใ่ ชใ้ นการพจิ ารณาตดั สินใจทอี่ ยภู่ ายในสญั ลกั ษณ์ผงั งานการตดั สินใจ ตามดว้ ยคาอธิบาย วา่ “แลว้ ทา” จากน้นั จะเป็นข้นั ตอนการทางานที่จะตอ้ งทาในกรณีทผ่ี ลการตรวจสอบเง่อื นไขแลว้ เป็นจริง โดยทาการแบ่งเป็นขอ้ ยอ่ ยๆ ตามลาดบั เม่ือสิ้นสุดการทางานในทกุ ข้นั ตอนแลว้ ในกรณีที่ ผลการตรวจสอบเงอ่ื นไขเป็ นจริงแลว้ จะใชค้ าอธิบายวา่ “มิฉะน้นั แลว้ ” ตามดว้ ยข้นั ตอนการทางาน ทีต่ อ้ งทาในกรณีทเ่ี งอ่ื นไขเป็นเทจ็ Y เงื่อนไข N Process 1 Process 2 จากส่วนของผงั งานดงั รูป สามารถเขียนอธิบายข้นั ตอนการทางานไดด้ งั น้ี ถา้ เงอ่ื นไขจริง แลว้ ทา Process 1 มิฉะน้นั แลว้ Process 2 จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

126 หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา ตวั อยา่ งการเปลี่ยนจากส่วนของผงั งานให้เป็นการอธิบายข้นั ตอนวธิ ีการทางานในลกั ษณะ ของขอ้ ความ เช่น Y N X  A2 Write X A>5 X  A + 10 A  A+2 จากรูปผงั งาน การทางานสาหรับกรณีทผ่ี ลการตรวจสอบเงือ่ นไขเป็ นจริง มีข้นั ตอนการ ทางานหรือกระบวนการทางานทีต่ อ้ งทาจานวน 2 การทางาน คอื การคานวณคา่ ของ X เท่ากบั A2 และแสดงค่า X อีกกระบวนการหน่ึงคอื สาหรบั กรณีท่ีผลการตรวจสอบเงือ่ นไขเป็นเท็จ มีข้นั ตอน การทางานหรือกระบวนการทางานท่ีตอ้ งทาจานวน 2 กระบวนการ คือ การคานวณคา่ ของ X เท่ากบั A + 10 และคานวณคา่ A เทา่ กบั A + 2 จากส่วนของผงั งานตามตวั อยา่ งทีม่ ีโครงสรา้ งการทางานแบบเลือกทา สามารถทาการ เขียนเป็นการอธิบายข้นั ตอนวธิ ีการทางานในลกั ษณะของขอ้ ความ (Algorithm) ไดด้ งั น้ี ถา้ A > 5 แลว้ ทา 1.1 คานวณ X  A2 1.2 แสดงคา่ X มิฉะน้นั แลว้ 1.3 คานวณ X A + 10 1.4 เพมิ่ ค่าใหก้ บั A ทลี ะ 2 จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา 127 ในการเขียนผงั งานอาจจะไม่ตอ้ งมีลาดบั ข้นั ตอนการทางานที่ตอ้ งทาท้งั 2 กรณีกไ็ ด้ คอื อาจจะมีลาดบั ขน้ ตอนการทางานเพยี งในกรณีที่ผลการตรวจสอบเง่ือนไขเป็นจริงเท่าน้นั ส่วนกรณี ทผี่ ลการตรวจสอบเงอื่ นไขเป็นเทจ็ จะไม่มีข้นั ตอนการทางานใดๆ เลยก็ได้ การเขยี นอธิบายข้นั ตอนวธิ ีการทางานสาหรบั ผงั งานทมี่ ีลกั ษณะการทางานดงั กล่าว จะทา การตดั ส่วนของคาอธิบาย “มิฉะน้นั แลว้ ” ทิง้ ไป วธิ ีการเขียนอธิบายข้นั ตอนวธิ ีการทางานสามารถ ทาไดด้ งั น้ี คือ ข้นึ ตน้ ดว้ ยคาอธิบาย “ถา้ ” ตามดว้ ยเงอ่ื นไขท่ใี ชพ้ จิ ารณาการตดั สินใจ จากน้นั เขียน คาอธิบายวา่ “แลว้ ทา” ถดั จากน้นั เป็นลาดบั ข้นั ตอนการทางานทต่ี อ้ งทากรณีทผี่ ลการตรวจสอบ เง่อื นไขเป็นจริง แลว้ จบการอธิบายข้นั ตอนวธิ ีการทางานสาหรับการทางานแบบเลือกทาในส่วนน้นั Y N Sum  Sum + X Write X , Sum X>0 จากส่วนของผงั งานท่ีมีลกั ษณะโครงสรา้ งผงั งานเป็นแบบเลือก ทาเม่ือผลการตรวจสอบ เง่ือนไขเป็นจริง จะมีลกั ษณะโครงสร้างแบบลาดบั ซอ้ นอยู่ โดยมีการทางาน 2 กระบวนการ คอื เมื่อเงือ่ นไข X > 0 เป็ นจริง จะสะสมค่าจอง X ไวท้ ่ตี วั แปร Sum และแสดงคา่ ของ X และ Sum ส่วนในกรณีท่ีเงอ่ื นไขเป็นเทจ็ ไม่มีลาดบั ข้นั ตอนการทางานใด ๆ สามารถเขยี นอธิบายลาดบั ข้นั ตอนการทางานในลกั ษณะขอ้ ความ (Algorithm) ไดด้ งั น้ี ถา้ X > 0 แลว้ ทา Sum  Sum + X แสดงค่า X , Sum จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

128 หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา การปรับโครงสร้างผงั งานการทางานแบบเลอื กทา ในกรณีท่เี ขียนผงั งานแลว้ มีลาดบั ข้นั ตอนการทางานทต่ี อ้ งทาเป็ นลาดบั ถดั ไปเฉพาะกรณีท่ี ผลการตรวจสอบเงอื่ นไขเป็ นเทจ็ แลว้ การพฒั นาใหเ้ ป็ นการอธิบายลาดบั ข้นั ตอนการทางานใน ลกั ษณะขอ้ ความ(Algorithm) น้นั ไม่สามารถทาได้ จะตอ้ งปรับโครงสรา้ งของผงั งานก่อน แลว้ จึง ค่อยใหเ้ ป็นการอธิบายลาดบั ข้นั ตอนการทางานในลกั ษณะขอ้ ความตอ่ ไป ข้นั ตอนการปรับโครงสร้างของผังงานการเลือกทา 1. ทาการเปลี่ยนเงือ่ นท่ีใชใ้ นการตดั สินใจในสญั ลกั ษณ์การตดั สินใจ (Decision) ใหเ้ ป็น เงอ่ื นไขทีต่ รงกนั ขา้ ม เพอื่ ใหก้ ารปรับโครงสร้างผงั งานการเลือกทาเป็ นไปอยา่ งสมบรู ณ์ ดงั น้ี เงื่อนไข เงื่อนไขตรงกนั ขา้ ม A =B A < >B A>B A <=B A<B A >=B 2. เปลี่ยนสญั ลกั ษณ์ทใ่ี ชใ้ นการกากบั ทศิ ทาง หลงั จากการตรวจสอบเงือ่ นไขจาก Yes เป็น No และจาก No เป็น Yes หลงั จากทาการปรับโครงสรา้ งผงั งานแลว้ จึงทาการพฒั นาให้เป็ นการอธิบายลาดบั ข้นั ตอน การทางานในลกั ษณะขอ้ ความ (Algorithm) เช่นเดียวกบั โครงสร้างผงั งานการเลือกทาในกรณีทผี่ ล การตรวจสอบเงอื่ นไขเป็นจริง จะมีลาดบั ข้นั ตอนการทางานที่ตอ้ งทาเป็ นลาดบั ถดั ไปและกรณีทผ่ี ล การตรวจสอบเง่อื นไขเป็นเทจ็ จะไม่มีลาดบั ข้นั ตอนการทางานใดทีต่ อ้ งทาตอ่ ไป จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา 129 ตวั อย่างผังงานก่อนปรับโครงสร้าง N Y Sum  OT + Salary I > 10 Tax  Sum * 0.05 Net Sum - Tax Sum , Tax , Net ตัวอย่างผังงานท่ที าการปรับโครงสร้างเรียบร้อยแล้ว Y N Sum  OT + Salary I <= 10 Tax  Sum * 0.05 Net Sum - Tax Sum , Tax , Net จากโครงสร้างผงั งานทท่ี าการปรับโครงสร้างเรียบร้อยแลว้ ในส่วนของกรณีท่ผี ลการ ตรวจสอบเง่ือนไขเป็นจริง จะมีลาดบั ข้นั ตอนการทางานแบบลาดบั 3 ข้นั ตอน สามารถพฒั นาเป็ น การอธิบายลาดบั ข้นั ตอนการทางานในลกั ษณะขอ้ ความไดด้ งั น้ี ถา้ I <= 10 แลว้ ทา Sum  OT + Salary Tax  Sum * 0.05 Net  Salary – Tax แสดงคา่ Sum , Tax , Net จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

130 หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา จากตัวอย่างท่ี 1 มีโครงสรา้ งผงั งาน 2 แบบ คือ แบบลาดบั และแบบเลือกทา เขียนอธิบายข้นั ตอน การทางานในลกั ษณะขอ้ ความ (Algorithm) มีดงั น้ี 1. เร่ิมตน้ 2. รบั คา่ A 3. ตรวจสอบเง่ือนไข ถา้ A เทา่ กบั 0 แลว้ ทา 3.1 คานวณค่า X  (A + 1)2 มิฉะน้นั แลว้ 3.2 คานวณค่า X  (A - 1)2 4. แสดงคา่ X ,A 5. จบการทางาน จากตวั อย่างที่ 2 มีโครงสร้างผงั งาน 2 แบบ คือ แบบลาดบั และแบบเลือกทา เขยี นอธิบายข้นั ตอน การทางานของผงั งานในลกั ษณะขอ้ ความ (Algorithm) มีดงั น้ี 1. เริ่มตน้ การทางาน 2. รับค่า a , b , c 3. กาหนดให้ m  b2 4. กาหนดให้ n  4 * a * c 5. กาหนดให้ p  m - n 6. ตรวจสอบเง่ือนไข ถา้ p มีค่ามากกวา่ 0 แลว้ ทา 6.1 X  p2 6.2 x1  (-b + x) / (2 * a) 6.3 x2  (-b - x) / (2 * a) มิฉะน้นั แลว้ 6.4 แสดงค่า “หาค่าไมไ่ ด”้ 7. แสดงค่า X1 ,X2 8. จบการทางาน จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา 131 จากตวั อย่างท่ี 3 มีโครงสรา้ งผงั งาน 2 แบบ คอื แบบลาดบั และแบบเลือกทา เขียนอธิบายข้นั ตอน การทางานในลกั ษณะขอ้ ความ (Algorithm) มีดงั น้ี 1. เริ่มตน้ การทางาน 2. รบั คา่ Score 3. ตรวจสอบเงื่อนไข ถา้ Score > 80 แลว้ ทา 3.1 กาหนดค่า Grade  “G” มิฉะน้นั แลว้ ตรวจสอบเงอ่ื นไข ถา้ Score > 60 แลว้ ทา 3.2 กาหนดค่า Grade  “P” มิฉะน้นั แลว้ 3.3 กาหนดค่า Grade  “F” 4. แสดงค่า Score , Grade 5. จบการทางาน ตัวอย่างท่ี 4 การเขยี นอธิบายข้นั ตอนวธิ ีการทางานในลกั ษณะของขอ้ ความจากผงั งาน Start Read A , B Y A>B N Num  A - B Num  B - A Write Num End จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

132 หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา จากตวั อยา่ งที่ 4 เมื่อพจิ ารณาจานวนกระบวนการทางานหรือข้นั ตอนการทางานหลกั ของ ผงั งาน มีกระบวนการทางานท้งั หมด 5 การทางาน โดยในข้นั ตอนการทางานที่ 3 เป็นลกั ษณะ โครงสรา้ งแบบเลือกทา สามารถเขียนเป็นการอธิบายข้นั ตอนวธิ ีการทางานในลกั ษณะของขอ้ ความ ไดด้ งั น้ี 1. เร่ิมตน้ การทางาน 2. รับคา่ ของ A , B 3. ถา้ A > B แลว้ ทา 3.1 คานวณ Num  A – B มิฉะน้นั แลว้ 3.2 คานวณ Num  B -A 4. แสดงค่าของ Num 5. จบการทางาน ตวั อย่างท่ี 5 จากผงั งานการหาขอ้ มูลทม่ี ากท่สี ุดระหวา่ งขอ้ มูลจานวน 3 ขอ้ มูลท่ีรบั เขา้ มา จากน้นั ทาการแสดงคา่ ท่มี ากท่ีสุด Start Read A ,B ,C Y N A>B Y NY N A>C A>C Max  A Max  C Max  B Max  C Write Max End จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา 133 จากผงั งานตวั อยา่ งท่ี 5 สามารถแยกกระบวนการทางานหลกั ได้ 5 ข้นั ตอนการทางาน โดย ข้นั ตอนท่ี 3 เป็ นโครงสร้างผงั งานแบบเลือกทา และมีโครงสร้างผงั งานการเลือกทาซอ้ นยอ่ ยอยู่ ภายใน สามารถเขียนเป็ นการอธิบายข้นั ตอนวธิ ีการทางานในลกั ษณะของขอ้ ความ ไดด้ งั น้ี 1. เร่ิมตน้ 2. รบั ค่า A , B , C 3. ถา้ A > B แลว้ ทา 3.1 ถา้ A > C แลว้ ทา 3.1.1 กาหนดค่าของ Max  A มิฉะน้นั แลว้ 3.1.2 กาหนดค่าของ Max  C มิฉะน้นั แลว้ 3.2 ถา้ B > C แลว้ ทา 3.2.1 กาหนดค่าของ Max  B มิฉะน้นั แลว้ 3.2.2 กาหนดคา่ ของ Max  C 4. แสดงค่าของ Max 5. จบการทางาน จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

134 หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา การเขยี นคาสั่งเทยี มจากโครงสร้างแบบเลอื กทา คาสง่ั เทยี ม (Pseudo Code) ที่ใชส้ าหรับการพฒั นาจากลาดบั ข้นั ตอนวธิ ีการทางาน แบบเลือกทา คอื คาสง่ั เทยี ม “IF – THEN –ELSE” โดยใชค้ าสงั่ เทียม “IF” แทนขอ้ ความอธิบาย “ถา้ ” ใชค้ าสง่ั เทียม “THEN” แทนขอ้ ความอธิบาย “แลว้ ทา” และใชค้ าสงั่ เทยี ม “ELSE” แทน ขอ้ ความอธิบาย “มิฉะน้นั แลว้ ” คาสงั่ เทยี มสาหรับส่วนของข้นั ตอนวธิ ีการทางานทตี่ อ้ งทา หลงั จากตรวจสอบ เงือ่ นไข ใชค้ าสงั่ เทียมตามลกั ษณะการทางานของข้นั ตอนวธิ ีการทางานน้นั คือ ถา้ เป็ นการทางาน แบบลาดบั คาสงั่ เทียมที่ใชค้ อื คาสง่ั เทียมสาหรับการทางานแบบลาดบั ถา้ เป็ นการทางานแบบเลือก ทาคาสงั่ เทียมท่ีใชค้ ือ คาสงั่ เทียมสาหรับการทางานแบบเลือกทา จากการอธิบายลาดบั ข้นั ตอนการทางานในลกั ษณะของขอ้ ความ (Algorithm) ดงั น้ี ถา้ a > 5 แลว้ ทา 1.1 ans  a + b มิฉะน้นั แลว้ 1.2 ans  a - b สามารถพฒั นาใหเ้ ป็ นคาสงั่ เทียม (Pesudo Code) ไดด้ งั น้ี If a > 5 Then Ans  a + b Else Ans  a – b การเขยี นคาสง่ั เทยี มทเ่ี ป็นคาสงั่ เทยี มของการทางานยอ่ ยภายใน การทางานแบบเลือกทา จะ ใชย้ อ่ หนา้ เพอ่ื ใหเ้ ห็นชดั เจนวา่ เป็นคาสงั่ เทียมทเ่ี ป็นการทางานยอ่ ยของคาสงั่ เทยี มใด จากการอธิบายลาดบั ข้นั ตอนการทางานในลกั ษณะของขอ้ ความ (Algorithm) ดงั น้ี ถา้ X มากกวา่ 5 แลว้ ทา 1.1 รบั ค่า A ,B 1.2 คานวณค่าของ X เทา่ กบั A + B มิฉะน้นั แลว้ 1.3 คานวณคา่ ของ X เทา่ กบั X + 10 1.4 แสดงคา่ ของ X จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา 135 สามารถพฒั นาใหเ้ ป็ นคาสงั่ เทยี ม (Pesudo Code) ไดด้ งั น้ี If X > 5 Then Read A ,B X  A+B Else X  X + 10 Write X กรณีที่เขียนการอธิบายข้นั ตอนวธิ ีการทางานไมม่ ีส่วนของคาอธิบาย “มิฉะน้นั แลว้ ” การ เขยี นคาสงั่ เทยี มสาหรับการทางานในกรณีน้ีจะไม่มีส่วนของคาสง่ั เทยี ม “ELSE” จากการอธิบายลาดบั ข้นั ตอนการทางานในลกั ษณะของขอ้ ความ (Algorithm) ดงั น้ี ถา้ N มากกวา่ 0 แลว้ ทา 1.1 รบั คา่ A ,B 1.2 คานวณคา่ ของ X เท่ากบั A2 + B2 สามารถเขียนเป็ นคาสง่ั เทยี มไดด้ งั น้ี If N > 0 Then Read A ,B X  A2 + B2 ตัวอย่างที่ 6 การเขียนคาสงั่ เทยี มจากอลั กอริทึม 1. เริ่มตน้ การทางาน 2. รบั คา่ ของ A และ B 3. ถา้ A มากกวา่ B แลว้ ทา 3.1 คานวณค่าของ Num เท่ากบั A - B มิฉะน้นั แลว้ 3.2 คานวณค่าของ Num เทา่ กบั B - A 4. แสดงค่าของ Num จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

136 หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา 5. จบการทางาน จากการอธิบายลาดบั ข้นั ตอนการทางานในลกั ษณะของขอ้ ความ (Algorithm) สามารถเขียน เป็นคาสง่ั เทียมไดด้ งั น้ี Begin A–B Read A , B B–A IF A > B THEN Num  ELSE Num  Write Num End ตัวอย่างท่ี 7 การเขียนคาสงั่ เทียมจากอลั กอริทึม 1. เริ่มตน้ 2. รับค่า A , B , C 3. ถา้ A มากกวา่ B แลว้ ทา 3.1 ถา้ A มากกวา่ C แลว้ ทา 3.1.1 กาหนดค่าของ Max เทา่ กบั A มิฉะน้นั แลว้ 3.1.2 กาหนดค่าของ Max เทา่ กบั C มิฉะน้นั แลว้ 3.2 ถา้ B มากกวา่ C แลว้ ทา 3.2.1 กาหนดคา่ ของ Max เท่ากบั B มิฉะน้นั แลว้ 3.2.2 กาหนดคา่ ของ Max เทา่ กบั C 4. แสดงค่าของ Max 5. จบการทางาน จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา 137 จากการอธิบายลาดบั ข้นั ตอนการทางานในลกั ษณะของขอ้ ความ (Algorithm) สามารถเขยี น เป็นคาสงั่ เทียมไดด้ งั น้ี Begin Read A , B , C IF A > B THEN Max A IF A > C THEN Max  A ELSE Max  C ELSE IF B > C then Max  B ELSE Max  C Write Max End ตวั อย่างที่ 8 การเขียนคาสงั่ เทยี มจากอลั กอริทึม หลกั การเขียนโปรแกรม 1. เร่ิมตน้ การทางาน 2. รบั ค่า A , B 3. ถา้ A > B แลว้ ทา 3.1 ถา้ B > 20 แลว้ ทา 3.1.1 รบั ค่า A 3.1.2 คานวณคา่ ของ B เทา่ กบั B + 15 มิฉะน้นั แลว้ 3.1.3 รับคา่ B 3.1.4 คานวณค่าของ A เทา่ กบั A + 10 3.2 คานวณคา่ ของ A เท่ากบั A - B จุฬาลกั ษณ์ ถาไชยลา วอศ.มค.

138 หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา มิฉะน้นั แลว้ 3.3 คานวณค่าของ Num เทา่ กบั A + B 3.4 แสดงคา่ ของ Num 3.5 คานวณคา่ ของ A เทา่ กบั A + 10 4. แสดงค่าของ A , B 5. จบการทางาน จากการอธิบายลาดบั ข้นั ตอนการทางานในลกั ษณะของขอ้ ความ (Algorithm) สามารถเขียน เป็นคาสง่ั เทยี มไดด้ งั น้ี Begin Read A, B If A > B THEN IF B > 20 THEN Read A B  B + 15 ELSE Read B A  A + 10 A A- B ELSE Num  A + B Write A , B A  A + 10 Write A , B End จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา 139 ตัวอย่างท่ี 9 จงเขียนพฒั นาคาสง่ั เทียมจากการอธิบายลาดบั ข้นั ตอนการทางานในลกั ษณะของ ขอ้ ความตอ่ ไปน้ี Algorithm 1. เร่ิมตน้ 2. รับคา่ NAME, TEST1 ,TEST2 , MID , FIN 3. SCORE = TEST1 + TEST2 + MID + FIN 4. ถา้ SCORE < 50 แลว้ 4.1 แสดงคา่ NAME และคาวา่ “สอบตก” มิฉะน้นั แลว้ 4.2 แสดงค่า NAME และคาวา่ “สอบได”้ 5. จบการทางาน Pseudo Code Begin Read NAME, TEST1 ,TEST2 , MID , FIN SCORE  TEST1 + TEST2 + MID + FIN If SCORE < 50 Then Write NAME , “สอบตก” Else Write NAME , “สอบได”้ End จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

140 หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา ตัวอย่างท่ี 10 จงเขยี นพฒั นาคาสง่ั เทยี มจากการอธิบายลาดบั ข้นั ตอนการทางานในลกั ษณะของ ขอ้ ความตอ่ ไปน้ี Algorithm 1. เริ่มตน้ 2. รบั คา่ SELECT 3. ถา้ SELECT = 1 แลว้ 3.1 รบั ค่า PRICE 3.2 PAYMENT = PRICE – (PRICE x 5%) 3.3 แสดงค่า PAYMENT มิฉะน้นั แลว้ 3.4 รบั คา่ PRICE , MONTH 3.5 INTEREST = PRICE x 3% x (MONTH / 12) 3.6 PAYMENT = (PRICE + INTEREST) / MONTH 3.7 แสดงค่า PAYMENT 4. จบการทางาน Pseudo Code Begin Read SELECT If SELECT  1 Then Read PRICE PAYMENT  PRICE – (PRICE x 5%) Write PAYMENT Else Read PRICE , MONTH INTEREST  PRICE x 3% x (MONTH / 12) PAYMENT  (PRICE + INTEREST) / MONTH Write PAYMENT End จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา 141 ตัวอย่างการวเิ คราะห์งานโครงสร้างการเลอื กทา ตัวอย่างที่ 11 จงวเิ คราะหป์ ัญหา เขียนผงั งานและคาสง่ั เทยี ม เพอ่ื คานวณคา่ แรงของพนกั งาน บริษทั แห่งหน่ึง โดยพจิ ารณาวา่ ถา้ พนกั งานทางานเกินกวา่ 6 ชวั่ โมง ใหน้ บั ชวั่ โมงทีเ่ กินกวา่ 6 ชว่ั โมงเป็นชว่ั โมงทางานล่วงเวลา และใหค้ ิดค่าแรงเป็น 2 เท่าของคา่ แรงปกติ ส่ิงที่โจทย์ต้องการ 1. คานวณค่าแรงของพนกั งาน ข้อมูลเข้า 1. รหสั พนกั งาน 2. ช่ือพนกั งาน 3. ชว่ั โมงทางาน 4. อตั ราคา่ แรง ข้อมูลออก 1. รหสั พนกั งาน 2. ชื่อพนกั งาน 3. ชว่ั โมงทางาน 4. อตั ราค่าแรง 5. คา่ แรงปกติ 6. คา่ แรงล่วงเวลา 7. ค่าแรงสุทธิ ตวั แปรทีใ่ ช้ 1. รหสั พนกั งาน : Id 2. ช่ือพนกั งาน : Name 3. ชว่ั โมงทางาน : Hour 4. อตั ราคา่ แรง : Rate 5. ค่าแรงปกติ : Income 6. ค่าแรงล่วงเวลา : Ot 7. คา่ แรงสุทธิ : Net จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

142 หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา อลั กอริทึม 1. เริ่มตน้ 2. กาหนดให้ Net  0 , Income  0 , Ot  0 3. รับขอ้ มูล Id ,Name , Hour , Rate 4. ตรวจสอบชว่ั โมงทางาน ถา้ Hour > 6 แลว้ ทา 4.1 Income Rate * 6 4.2 Ot  (Hour – 6) * Rate * 2 มิฉะน้นั แลว้ 4.3 Income Rate * Hour 4.4 Ot  0 5. คานวณค่าแรงสุทธิ Net  Income + Ot 6. พมิ พ์ Id , Name , Hour , Rate , Income , Ot , Net 7. จบการทางาน ผังงาน START Net = 0 , Income = 0 , Ot = 0 Read Id ,Name ,Hour , Rate Hour > 6 N Income  Hour * Rate Y Ot  0 Income  Rate * 6 Ot  (Hour – 6) * Rate * 2 Id , Name , Hour , Rate , Income , Ot ,Net STOP จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา 143 คาส่ังเทยี ม Begin Net  0 Income  0 Ot  0 Read Id ,Name , Hour , Rate If Hour > 6 Then Income Rate * 6 Ot  (Hour – 6) * Rate * 2 Else Income Rate * Hour Ot  0 Net  Income + Ot Write Id , Name , Hour , Rate , Income , Ot , Net End ตัวอย่างที่ 12 จงวเิ คราะห์ปัญหา เขยี นผงั งานและคาสงั่ เทียม เพอ่ื คานวณรายไดส้ ุทธิของ พนกั งาน โดยในแตล่ ะเดือนบริษทั จะหกั เงนิ สะสม 3% จากเงนิ เดือน และจะใหเ้ งินช่วยเหลือบุตร 100 บาทต่อบุตร 1 คน แตจ่ ะจา่ ยไม่เกิน 3 คน สิ่งท่ีโจทย์ต้องการ 1. คานวณรายไดส้ ุทธิของพนกั งาน ข้อมูลเข้า 1. รหสั พนกั งาน ข้อมูลออก 2. ชื่อพนกั งาน 3. เงินเดือน 4. จานวนบุตร 1. รหสั พนกั งาน 2. ชื่อพนกั งาน 3. เงนิ เดือน 4. จานวนบตุ ร 5. เงินสะสม 6. เงนิ ช่วยเหลือบุตร 7. รายไดส้ ุทธิ จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

144 หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา ตวั แปรทใ่ี ช้ 1. รหสั พนกั งาน : Id อัลกอริทึม 2. ช่ือพนกั งาน : Name 3. เงนิ เดือน : Salary ผังงาน 4. จานวนบตุ ร : Chil 5. เงนิ สะสม : Save 6. เงนิ ช่วยเหลือบุตร : Money 7. รายไดส้ ุทธิ : Net 1. เริ่มตน้ 2. กาหนดให้ Net  0 , Money  0 , Save  0 3. รบั ขอ้ มูล Id ,Name , Salary , Chil 4. ตรวจสอบจานวนบุตร ถา้ Chil > 3 แลว้ ทา 4.1 Money 3 * 100 มิฉะน้นั แลว้ 4.2 Money Chil * 100 5. คานวณเงนิ สะสม Save  Salary * 0.03 6. คานวณรายไดส้ ุทธิ Net  Salary + Money - Save 7. พมิ พ์ Id , Name , Salary , Chil , Money , Save , Net 8. จบการทางาน START Net = 0 , Money = 0 , Save = 0 Read Id ,Name ,Salary , Chil N Money  Chil * 100 Chil > 3 Y Money  3 * 100 1 จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา 145 1 Save  Salary * 0.03 Net  Salary + Money - Save Id , Name , Salary , Chil , money , Save ,Net STOP คาสั่งเทียม Begin Net  0 Money  0 Save  0 Read Id ,Name , Salary , Chil If Chil > 3 Then Money 3 * 100 Else Money Chil * 100 Save  Salary * 0.03 Net  Salary + Money - Save Write Id , Name , Salary , Chil , Money , Save , Net End จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

146 หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา ตัวอย่างท่ี 13 จงวเิ คราะห์ปัญหา เขยี นผงั งานและคาสงั่ เทียม เพอื่ คานวณหาส่วนลดการซ้ือสินคา้ ใหก้ บั ลูกคา้ ,คานวณราคาขายสุทธิ และรับของกานลั พเิ ศษ ตามเงื่อนไขดงั น้ี สินคา้ ชนิด X และซ้ือต้งั แต่ 5000 บาทข้นึ ไปใหส้ ่วนลด 5% ซ้ือนอ้ ยกวา่ 5000 บาท ใหส้ ่วนลด 3% สินคา้ ชนิด Y และซ้ือต้งั แต่ 10000 บาทข้นึ ไปใหส้ ่วนลด 10% ซ้ือนอ้ ยกวา่ 10000 บาท ใหส้ ่วนลด 7% สินคา้ ชนิดอ่ืน ๆ ไม่ใหส้ ่วนลด ถา้ ราคาสินคา้ สุทธินอ้ ยกวา่ 5000 บาท ไม่ไดร้ ับของกานลั ถา้ ราคาสินคา้ สุทธิ 5000 – 10000 บาท จะไดร้ ับ “เตารีด” ถา้ ราคาสินคา้ สุทธิ 10001 – 20000 บาท จะไดร้ ับ “พดั ลม” ถา้ ราคาสินคา้ สุทธิ 20001 – 50000 บาท จะไดร้ ับ “หมอ้ หุงขา้ ว” ถา้ ราคาสินคา้ สุทธิ 50001 บาท ข้นึ ไป จะไดร้ บั “ไมโครเวฟ” สิ่งทีโ่ จทย์ต้องการ 1. คานวณส่วนลด 2. คานวณราคาสินคา้ สุทธิ ข้อมูลเข้า 1. รหสั ลูกคา้ 2. ช่ือลูกคา้ 3. ชนิดสินคา้ 4. ราคาที่ซ้ือ ข้อมูลออก 1. รหสั ลูกคา้ 2. ช่ือลูกคา้ 3. ชนิดสินคา้ 4. ราคาท่ีซ้ือ 5. เงนิ ส่วนลด 6. ราคาสินคา้ สุทธิ 7. ของกานลั พเิ ศษ จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา 147 ตัวแปรทใ่ี ช้ 1. รหสั ลุกคา้ : Id อลั กอริทมึ 2. ช่ือลูกคา้ : Name 3. ชนิดสินคา้ : Type 4. ราคาท่ซี ้ือ : Cost 5. เงนิ ส่วนลด : Disc 6. ราคาสินคา้ สุทธิ : Net 7. ของกานลั พเิ ศษ : Gift 1. เริ่มตน้ 2. กาหนดให้ Net  0 , Disc  0 3. รบั ขอ้ มูล Id ,Name , Type , Cost 4. ตรวจสอบชนิดสินคา้ ถา้ Type = “X” แลว้ ทา ถา้ Cost < 5000 แลว้ ทา Dsic Cost * 0.03 มิฉะน้นั แลว้ Dsic  Cost * 0.05 มิฉะน้นั แลว้ ถา้ Type = “Y” แลว้ ทา ถา้ Cost < 10000 แลว้ ทา Dsic Cost * 0.07 มิฉะน้นั แลว้ Dsic Cost * 0.10 มิฉะน้นั แลว้ Dsic 0 5. คานวณราคาสินคา้ สุทธิ Net Cost - Disc 6. ตรวจสอบราคาสินคา้ สุทธิ ถา้ Net < 5000 แลว้ ทา Gift  “ไม่ไดร้ บั ของกานลั ” มิฉะน้นั แลว้ ถา้ Net <= 10000 แลว้ ทา จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

148 หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา Gift  “เตารีด” มิฉะน้นั แลว้ ถา้ Net <= 20000 แลว้ ทา Gift  “พดั ลม” มิฉะน้นั แลว้ ถา้ Net <= 50000 แลว้ ทา Gift  “หมอ้ หุงขา้ ว” มิฉะน้นั แลว้ Gift  “ไมโครเวฟ” 7. พมิ พ์ Id , Name , Type , Cost ,Disc , Net , Gift 8. จบการทางาน ผังงาน START Net = 0 , Disc = 0 Read Id ,Name ,Type , Cost N Y N Type = ‘X’ N Y Cost < 5000 Y Type = ‘Y’ Disc  0 Cost < 10000 Disc  Cost * 0.03 Disc  Cost * 0.05 NY Disc  Cost * 0.10 Disc  Cost * 0.07 Net  Cost - Disc 1 จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา 149 1 Net < 5000 Y N Gift  “ไม่ไดร้ ับของกานลั ” Y Net < 10001 N Gift  “เตารีด” Y Net < 20001 N Gift  “พดั ลม” Y Net < 50001 N Gift  “หมอ้ หุงขา้ ว” Gift  “ไมดครเวฟ” Id , Name , Salary , Chil , money , Save ,Net STOP จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

150 หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา คาสั่งเทยี ม Begin Net  0 Disc  0 Read Id ,Name , Type , Cost If Type = “X” Then If Cost < 5000 Then Dsic Cost * 0.03 Else Dsic  Cost * 0.05 Else If Type = “Y” Then If Cost < 10000 Then Dsic Cost * 0.07 Else Dsic Cost * 0.10 Else Dsic 0 Net Cost - Disc If Net < 5000 Then Gift  “ไมไ่ ดร้ ับของกานลั ” Else If Net <= 10000 Then Gift  “เตารีด” Else If Net <= 20000 Then Gift  “พดั ลม” Else If Net <= 50000 Then Gift  “หมอ้ หุงขา้ ว” Else Gift  “ไมโครเวฟ” Write Id , Name , Type , Cost ,Disc , Net , Gift End จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. ************************ หลกั การเขียนโปรแกรม

หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา 151 แบบประเมนิ ผลการเรียนรู้หน่วยที่ 7 ขอ้ 1. จงเขยี นอธิบายลาดบั ข้นั ตอนวธิ ีการทางานในลกั ษณะของขอ้ ความ (Algorithm) และคาสงั่ เทยี ม (Pseudo Code) จากผงั งานตอ่ ไปน้ี Y Satrt N X  √a Read A X  a2 a  a+5 A>9 Write X หลกั การเขียนโปรแกรม END ขอ้ 2. จงเขยี นคาสงั่ เทียมและผงั งาน จากอลั กอริทมึ ต่อไปน้ี 1. เร่ิมตน้ 2. Y  15 3. รบั ค่า X 4. ถา้ X มากกวา่ Y แลว้ ทา 4.1 X  Y 4.2 Y  Y - 10 5. แสดงค่า X , Y 6. จบการทางาน จุฬาลกั ษณ์ ถาไชยลา วอศ.มค.

152 หน่วยท่ี 7 โครงสร้างการทางานแบบเลือกทา ขอ้ 3. จงเขียนอธิบายลาดบั ข้นั ตอนวธิ ีการทางานในลกั ษณะของขอ้ ความ (Algorithm) และคาสงั่ เทียม (Pseudo Code) จากผงั งานตอ่ ไปน้ี Start ans  ans + 5 Read a N A> 5 Y ans  ans + a Read b Write a N B < 10 Y ans  a + b ans  ans + b Write a , b Write ans END ขอ้ 4. จงเขียนผงั งานของการคานวณเกรดของนกั ศกึ ษา โดยรบั คะแนนของนกั ศึกษาเขา้ มา จากน้นั ทาการตรวจสอบช่วงระดบั คะแนน มีการแบ่งระดบั คะแนนดงั น้ี 0 – 49 ไดเ้ กรด 0 50 – 59 ไดเ้ กรด 1 60 – 69 ไดเ้ กรด 2 70 – 79 ไดเ้ กรด 3 80 – 100 ไดเ้ กรด 4 ถา้ คะแนนนอ้ ยกวา่ 0 หรือมากกวา่ 100 ใหแ้ จง้ ขอ้ ความวา่ มีการป้ อนขอ้ มูลผดิ พลาด จากน้นั ทา การเขยี นอลั กอริทมึ และคาสงั่ เทยี ม จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม

หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา 153 ขอ้ 5. จงวิเคราะหป์ ัญหา เขียนผงั งานและคาสง่ั เทยี ม เพอ่ื คานวณเงนิ ส่วนลดการซ้ือสินคา้ ซ่ึงมี เง่ือนไขการใหส้ ่วนลดดงั น้ี ราคาสินคา้ ส่วนลด นอ้ ยกวา่ 100 บาท ไม่ใหส้ ่วนลด 100 – 999 3% 1000 – 5000 5% มากกวา่ 5000 บาท 10% ขอ้ 6. จงวิเคราะหป์ ัญหา เขียนผงั งานและคาสง่ั เทยี ม เพอ่ื คานวณหาค่าคอมมิชชนั่ ใหก้ บั พนกั งาน ขาย โดยยอดขายมาจากราคาสินคา้ และจานวนทขี่ ายได้ กาหนดเงื่อนไขการคดิ คอมมิชชน่ั ดงั น้ี ยอดขาย คอมมิชชนั่ มากกวา่ 30,000 บาท 10% 10,000 – 30,000 บาท 7% นอ้ ยกวา่ 10,000 บาท 5% ขอ้ 7. จงวเิ คราะหป์ ัญหา เขยี นผงั งานและคาสง่ั เทยี ม คานวณคา่ จา้ งสุทธิของพนกั งาน โดยมี เงอื่ นไขคือ ค่าจา้ งเกิดจาก จานวนชว่ั โมงทางานคูณกบั อตั ราค่าจา้ ง ถา้ คา่ จา้ งนอ้ ยกวา่ หรือเทา่ กบั 5,000 บาท เสียภาษี 2% ถา้ คา่ จา้ งมากกวา่ 5,000 เสียภาษี 5% ของส่วนทเี่ กิน ขอ้ 8. จงวเิ คราะหป์ ัญหา เขียนผงั งานและคาสง่ั เทยี ม เพอ่ื คานวณคา่ บริการรถแทก็ ซ่ีมิเตอร์ โดย รับระยะทางทใี่ ชบ้ ริการ แลว้ คานวณค่าบริการ กาหนดอตั ราคา่ บริการดงั น้ี ระยะทาง คา่ บริการต่อกิโลเมตร 2 กิโลเมตรแรก 50 บาท 3 - 12 กิโลเมตร 2 บาท 13 – 22 กิโลเมตร 3 บาท 23 – 32 กิโลเมตร 4 บาท 32 กิโลเมตรข้นึ ไป 5 บาท ************************** หลกั การเขียนโปรแกรม จุฬาลกั ษณ์ ถาไชยลา วอศ.มค.

154 หน่วยที่ 7 โครงสร้างการทางานแบบเลือกทา เอกสารอ้างองิ ณัชติพงศ์ อูทอง. หลกั การเขียนโปรแกรม. พมิ พค์ ร้งั ท่ี 1. กรุงเทพฯ : สานกั พมิ พเ์ อมพนั ธ์ ,2546. ดารุณีย์ พฒั ศรีเรือง. การเขียนโปรแกรมคอมพวิ เตอร์. พมิ พค์ ร้งั ที่ 1. กรุงเทพฯ : บริษทั ศูนย์ หนงั สือเมืองไทย จากดั , 2548. ทศพร พลู เจริญ. หลกั การเขยี นโปรแกรม. พมิ พค์ ร้งั ที่ 1. กรุงเทพฯ:สานกั พมิ พว์ งั อกั ษร,2547. รุ่งทวิ า เสาร์สิงห์. การเขียนโปรแกรมคอมพวิ เตอร์เบ้อื งตน้ . พมิ พค์ ร้ังท่ี 1. กรุงเทพฯ:บริษทั ซี เอด็ ยเู คชน่ั จากดั , 2548. วฒุ ิชยั เกษพานิช. หลกั การเขยี นโปรแกรม. พมิ พค์ ร้ังที่ 2. กรุงเทพฯ:เอด็ ดูเทก็ ซ,์ 2546. แหล่งค้นคว้าเพม่ิ เตมิ เวบ็ ไซต์ http://www.angsila.compsci.buu.ac.th/ เวบ็ ไซต์ http://www.bcoms.net/system_analysis เวบ็ ไซต์ http://www.course.eau.ac.th/course/ เวบ็ ไซต์ http://www.cs.sci.ku.ac.th เวบ็ ไซต์ http://www.edutext.co.th/Product เวบ็ ไซต์ http://www.en.rmut.ac.th/computerprogramming/ เวบ็ ไซต์ http://www.en.ssktc.ac.th/elearning/TC/ เวบ็ ไซต์ http://www.promma.ac.th/COMPUTER/ เวบ็ ไซต์ http://www.prateab.ac.th/mhumhu/ เวบ็ ไซต์ http://www.tesabano.ac.th/ จุฬาลกั ษณ์ ถาไชยลา วอศ.มค. หลกั การเขียนโปรแกรม


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