การเขียนคำาสั่ง
ควบคุมแบบวนซำ้า
สมาชิก
1. นางสาว ชลธิชา อวยพร เลขที่
19
2. นางสาว ณัฐชา เพียสังกะ เลขที่
20
3. นางสาวปรารถนา ขำาขุด เลขที่
21
4. นางสาววรร...
การทำางานแบบวนซำ้า
การทำางานแบบวนซำ้า (Loop)เป็นการนำาคำาสั่งมาทำางานซำ้า
หลายๆ รอบ จะทำางานกี่รอบขึ้นอยู่กับเงื่อนไขที่ผู...
เทคนิคการเขียนนิพจน์
คณิตศาสตร์ นิพจน์ (Expressions) ทางคณิตศาสตร์นั้นเป็นนิพจน์ที่
 ใช้ในการคำานวณ ซึ่งนิพจน์ทางคณิตศาสตร...
ตัวอย่าง 
                A+B
                 2+A
 ตัวดำาเนินการทางคณิตศาสตร์
                ตัวดำาเนินการทางคณิตศาสตร์ข...
การสร้างนิพจน์ทางคณิตศาสตร์ ถ้าเป็นนิพจน์ที่มีตัวถูก
 ดำาเนินการเพียง 2    ตัวจะไม่มีปัญหาอะไร แต่ถ้าเกิดมีตัวถูก
 ดำาเนิน...
คำาสั่งควบคุมวนซำ้าแบบ for
  for  เป็นคำาสั่งที่สั่งให้โปแกรมมีการทำางานซำ้า ๆ วนลูป
   จนกว่าเงื่อนไขที่กำาหนดไว้เป็นเท็จ...
•   ลักษณะการทำางานของคำาสั่ง for
คำำสั่งควบคุมวนซำ้ำแบบ while
while เป็นคำำสั่งให้มีกำรทำำซำ้ำเป็นรอบ ๆ (loop) ลักษณะ
กำรทำำงำนทำำนองเดียวกับคำำสั่ง for แต...
•  ลักษณะกำรทำำงำนของคำำสั่ง while
กำรเขียนคำำสั่งวนซำ้ำแบบ do while
do while เป็นคำำสั่งให้มีกำรทำำซำ้ำเป็นรอบ ๆ (loop)
ลักษณะกำรทำำงำนทำำนองเดียวกับคำำสั่ง...
•  ลักษณะกำรทำำงำนของคำำสั่ง do while
กรณีศึกษา การใช้คำาสั่งควบคุมวน
ซำ้า  การใช้คำาสั่ง while เพื่อวนคำานวณค่าสะสมตัวเลข 1 ถึง 10
และหาค่าเฉลี่ย แล้วแสดงผลออก...
ผลลัพธ์ที่ได้จากโปรแกรม
คำาอธิบายโปรแกรม
        สามารถอธิบายการทำางานของโปรแกรมที่สำาคัญ ๆ
ได้ดังนี้
        บรรทัดที่ 8 ...
บรรทัดที่ 10 และ 11 เป็นคำาสั่งที่โปรแกรมจะทำางานภาย
หลังจากตรวจสอบเงื่อนไข while แล้วเป็นจริง นั่นคือ คำานวณค่า
สะสมของตั...
เอกสารอ้างอิง
• http://chwchw.wordpress.com/การ
เขียนคำาสั่งควบคุมแบ-2/กรณีศึกษา-การใช้คำา
สั่งค/
• http://computer.bps.in...
Upcoming SlideShare
Loading in …5
×

การควบคุมคำสั่งแบบวนซ้ำ1

489 views

Published on

Published in: Art & Photos
  • Be the first to comment

  • Be the first to like this

การควบคุมคำสั่งแบบวนซ้ำ1

  1. 1. การเขียนคำาสั่ง ควบคุมแบบวนซำ้า
  2. 2. สมาชิก 1. นางสาว ชลธิชา อวยพร เลขที่ 19 2. นางสาว ณัฐชา เพียสังกะ เลขที่ 20 3. นางสาวปรารถนา ขำาขุด เลขที่ 21 4. นางสาววรรณิสา ยืนยง เลขที่ 23 5. นางสาวสริดา บัวทอง เลขที่ 24 6. นางสาวอนัญญา อิทธานุรักษ์ เลขที่ 25 7. นางสาวอินทิรา สุขกรม เลขที่ 26
  3. 3. การทำางานแบบวนซำ้า การทำางานแบบวนซำ้า (Loop)เป็นการนำาคำาสั่งมาทำางานซำ้า หลายๆ รอบ จะทำางานกี่รอบขึ้นอยู่กับเงื่อนไขที่ผู้เขียนโปรแกรม กำาหนดไว้ ซึ่งอาจจะเป็นการกำาหนดจำานวนรอบที่แน่นอน เช่น ตั้งใจว่าจะวิ่งรอบสนาม 3 รอบ คือรู้แน่นอนว่าจะทำางานกี่รอบ หรือ แบบจำานวนรอบไม่แน่นอน เช่น ตั้งใจว่าจะวิ่งรอบสนามไปเรื่อยๆ เหนื่อยเมื่อไหร่จึงจะหยุดวิ่ง คือไม่แน่ชัดว่าจะทำางานกี่รอบ การทำางานซำ้าๆ ในชีวิตประจำาวันมีอยู่มากมาย ครูจะขอยก ตัวอย่างง่ายๆ ที่นักเรียนทุกๆ คนคงเคยทำามาด้วยตนเองแล้ว เช่น 1.นักเรียนอาบนำ้าโดยใช้ขันนำ้าตักราดบนร่างกาย หลายๆ ครั้ง (ทำาซำ้า) จนร่างกายสะอาดดีแล้วจึงหยุดอาบนำ้า (หยุด ทำาซำ้า) 2.นักเรียนจัดสมุดหนังสือใส่กระเป๋าเพื่อนำาไปโรงเรียน ทีละเล่ม (ทำาซำ้า) จนครบทุกวิชาลงในกระเป๋า จึงหยุดจัดสมุด หนังสือลงประเป๋า (หยุดทำาซำ้า)
  4. 4. เทคนิคการเขียนนิพจน์ คณิตศาสตร์ นิพจน์ (Expressions) ทางคณิตศาสตร์นั้นเป็นนิพจน์ที่  ใช้ในการคำานวณ ซึ่งนิพจน์ทางคณิตศาสตร์นั้นจะมีรูปแบบ    เหมือนกับสมการคณิตศาสตร์ แต่จะประกอบไปด้วย ค่าคงที่หรือ      ตัวแปร ซึ่งเรียกอีกอย่างว่า ตัวถูกดำาเนินการ (Operand) แล้ว    เชื่อมกันด้วยเครื่องหมายทางคณิตศาสตร์ หรือเรียกอีกอย่างว่า  ตัวดำาเนินการ (Operator) นั่นเอง                  รูปแบบ                    [ตัวถูกดำาเนินการตัวแรก] [ตัวดำาเนินการ] [ตัวถูก ดำาเนินการตัวที่สอง]
  5. 5. ตัวอย่าง                  A+B                  2+A  ตัวดำาเนินการทางคณิตศาสตร์                 ตัวดำาเนินการทางคณิตศาสตร์ของภาษา C มีดังนี้  ตารางที่ 1  แสดงตัวดำาเนินการทางคณิตศาสตร์
  6. 6. การสร้างนิพจน์ทางคณิตศาสตร์ ถ้าเป็นนิพจน์ที่มีตัวถูก  ดำาเนินการเพียง 2    ตัวจะไม่มีปัญหาอะไร แต่ถ้าเกิดมีตัวถูก  ดำาเนินการมากกว่า 2    ตัวขึ้นไป ผู้ใช้จะต้องคำานึงถึงลำาดับความ  สำาคัญของตัวดำาเนินการด้วย มิฉะนั้นอาจจะได้ผลลัพธ์ที่ไม่ตรง  ตามความต้องการได้                 ตัวอย่าง   ผู้ใช้ต้องการให้เอา 2    บวกกับ 3  แล้วนำา  ไปคูณด้วย 5      ซึ่งคำาตอบที่ผู้ใช้ต้องการ คือ 25  แต่ถ้าผู้ใช้เขียน  นิพจน์เป็น 2 + 3 * 5                    ผลลัพธ์ที่ได้จะเท่ากับ 17  เพราะภาษา C จะคิดตาม  ลำาดับความสำาคัญของตัวดำาเนินการ (Precedence)      ดังนี้ เอา 3    คูณกับ 5    ได้ 15    แล้วนำาไปบวกกับ 2    ได้ 17  ซึ่งเป็นคำา  ตอบที่ไม่ตรงตามความต้องการ เพราะฉะนั้นผู้ใช้จึงต้องระวังเรื่อง  นี้อย่างมาก วิธีการแก้ไขก็สามารถทำาได้โดยการใช้วงเล็บเข้ามา    ช่วย ซึ่งวงเล็บจะมีลำาดับความสำาคัญสูงที่สุด และเมื่อลำาดับความ    สำาคัญเท่ากัน ให้ดูในตารางโดยเรียงจากซ้ายไปขวา ซึ่งถ้ามี  หลายวงเล็บซ้อนกัน ภาษา C   จะคิดจากวงเล็บในออกมา ดังนั้น  ถ้าตัวอย่างด้านบนจะเขียนนิพจน์ให้ได้ผลลัพธ์ตามต้องการ จะ ต้องเขียนดังนี้ (2 + 3) * 5 
  7. 7. คำาสั่งควบคุมวนซำ้าแบบ for   for  เป็นคำาสั่งที่สั่งให้โปแกรมมีการทำางานซำ้า ๆ วนลูป    จนกว่าเงื่อนไขที่กำาหนดไว้เป็นเท็จ จึงออกจากคำาสั่ง for  ไปทำา    คำาสั่งถัดไป ควรใช้คำาสั่ง for  ในกรณีที่ทราบจำานวนรอบของการ ทำางาน ¢  รูปแบบการใช้คำาสั่ง for ¢for  (expression1; expression2; expression3) statement; หรือ for  (expression1; expression2; expression3) { statement(s); }
  8. 8. •   ลักษณะการทำางานของคำาสั่ง for
  9. 9. คำำสั่งควบคุมวนซำ้ำแบบ while while เป็นคำำสั่งให้มีกำรทำำซำ้ำเป็นรอบ ๆ (loop) ลักษณะ กำรทำำงำนทำำนองเดียวกับคำำสั่ง for แต่ต่ำงกันตรงที่ไม่ทรำบ จำำนวนรอบที่แน่นอน แต่ต้องมีเงื่อนไขที่เป็นเท็จจึงจะออกจำกคำำสั่ง while ได้มิฉะนั้นจะมีปัญหำที่โปรแกรมทำำงำนแบบวนซำ้ำแบบไม่มีที่ สิ้นสุด (endless loop)
  10. 10. •  ลักษณะกำรทำำงำนของคำำสั่ง while
  11. 11. กำรเขียนคำำสั่งวนซำ้ำแบบ do while do while เป็นคำำสั่งให้มีกำรทำำซำ้ำเป็นรอบ ๆ (loop) ลักษณะกำรทำำงำนทำำนองเดียวกับคำำสั่ง while แต่ต่ำงกันตรงที่คำำ สั่งนี้จะมีกำรทำำงำนตำมคำำสั่งไป 1  รอบ ก่อนที่จะทดสอบเงื่อนไข ถ้ำเงื่อนไขที่เป็นจริงจะทำำงำนต่อไป ถ้ำเงื่อนไขเป็นเท็จจึงจะออก จำกคำำสั่ง do while คำำสั่งนี้ก็เช่นเดียวกันจะต้องกำำหนดให้มี โอกำสที่เงื่อนไขเป็นเท็จได้ มิฉะนั้นจะมีปัญหำที่โปรแกรมทำำงำน แบบวนซำ้ำแบบไม่มีที่สิ้นสุด (endless loop) กรณีที่เงื่อนไขเป็นเท็จ เพียงอย่ำงเดียวจะมีกำรทำำงำน 1 รอบ ก่อนออกจำกกำรทำำซำ้ำ
  12. 12. •  ลักษณะกำรทำำงำนของคำำสั่ง do while
  13. 13. กรณีศึกษา การใช้คำาสั่งควบคุมวน ซำ้า  การใช้คำาสั่ง while เพื่อวนคำานวณค่าสะสมตัวเลข 1 ถึง 10 และหาค่าเฉลี่ย แล้วแสดงผลออกจอภาพ การใช้คำาสั่ง while เพื่อ วนคำานวณค่าสะสมตัวเลข 1 ถึง 10 และหาค่าเฉลี่ย แล้วแสดงผลอ อกจอภาพ
  14. 14. ผลลัพธ์ที่ได้จากโปรแกรม คำาอธิบายโปรแกรม         สามารถอธิบายการทำางานของโปรแกรมที่สำาคัญ ๆ ได้ดังนี้         บรรทัดที่ 8 คำาสั่ง while (n < 11) เพื่อควบคุมการ ทำางานของโปรแกรมให้ทำางานซำ้า ๆ กัน โดยการทำางานของคำาสั่ง while จะตรวจสอบเงื่อนไข n < 11 เป็นจริงหรือเท็จ ถ้าเป็นจริงจะ ทำางานตามคำาสั่งที่อยู่ภายใน loop while คือ บรรทัดที่ 10 และ 11 จากนั้นจะกลับมาตรวจสอบเงื่อนไขใหม่ ทำาอย่างนี้ซำ้า ๆ จนกว่า ตรวจสอบเงื่อนไข n < 11 เป็นเท็จ จึงจะออกจาก loop while แล้วไปทำาคำาสั่งบรรทัดที่ 13 ถึง คำาสั่งบรรทัดที่ 18
  15. 15. บรรทัดที่ 10 และ 11 เป็นคำาสั่งที่โปรแกรมจะทำางานภาย หลังจากตรวจสอบเงื่อนไข while แล้วเป็นจริง นั่นคือ คำานวณค่า สะสมของตัวแปร sum และ เพิ่มค่า n ทีละ 1 ตามลำาดับ          บรรทัดที่ 13 ถึง 18 เป็นคำาสั่งที่โปรแกรมจะทำางาน ภายหลังจากตรวจสอบเงื่อนไข while แล้วเป็นเท็จ คือ ลดค่าตัว แปร n ลง 1 แล้วคำานวณค่าเฉลี่ยเก็บไว้ที่ตัวแปร avg และพิมพ์ ค่าตัวแปร n, sum และ avg แสดงที่จอภาพ พร้อมกับพิมพ์ข้อความ ให้กดคีย์ใด ๆ เพื่อกลับสู่โปรแกรม สุดท้ายจะหยุดรอรับค่าใด ๆ จากคีย์บอร์ด เช่น ถ้ากด enter ก็จะกลับสู่โปรแกรม
  16. 16. เอกสารอ้างอิง • http://chwchw.wordpress.com/การ เขียนคำาสั่งควบคุมแบ-2/กรณีศึกษา-การใช้คำา สั่งค/ • http://computer.bps.in.th/suteerat/lo op • http://itd.htc.ac.th/st_it50/it5012/P_1 /C/B4.htm • http://newsaroree.wordpress.com/

×