1 / 26

บทที่ 5

บทที่ 5. การเขียนโปรแกรมแบบวนซ้ำ : คำสั่ง while คำสั่ง do….while. โครงสร้างควบคุม ( Control Structure). การควบคุมโปรแกรมให้ทำงานได้ตามต้องการ เราจำเป็นต้องมีความเข้าใจเกี่ยวกับโครงสร้างควบคุมของการเขียนภาษาโปรแกรม ประกอบด้วย ลำดับการทำงาน (Sequence) ทางเลือก , ตัดสินใจ (Decision)

inari
Télécharger la présentation

บทที่ 5

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. บทที่ 5 การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while

  2. โครงสร้างควบคุม (Control Structure) • การควบคุมโปรแกรมให้ทำงานได้ตามต้องการ เราจำเป็นต้องมีความเข้าใจเกี่ยวกับโครงสร้างควบคุมของการเขียนภาษาโปรแกรม ประกอบด้วย • ลำดับการทำงาน(Sequence) • ทางเลือก,ตัดสินใจ (Decision) • การวนซ้ำ (Iteration)

  3. การเขียนโปรแกรมแบบ วนซ้ำ • คำสั่ง for • คำสั่ง while • คำสั่ง do..while

  4. การใช้ while • ลูป while จะทำการตรวจสอบเงื่อนไขก่อน • หากพบว่าเงื่อนไขเป็นจริงจะเข้าไปทำงานภายใน เครื่องหมาย { และ } • หากพบว่าเงื่อนไขเป็นเท็จจะไม่เข้าไปทำ Statement(คำสั่ง) ภายในลูป

  5. คำสั่ง while start กำหนดค่าเริ่มต้น เงื่อนไข เท็จ เปลี่ยนแปลงค่าตัวแปร จริง คำสั่งต่าง ๆ คำสั่งถัดไป End

  6. โจทย์ : ให้แสดงข้อมูล 1,2,3,.. ,100 (คำสั่ง while) start int num=1 num<=100 เท็จ num++ จริง Print num End

  7. คำสั่ง while รูปแบบ while(เงื่อนไข) { คำสั่งในลูป ; //สามารถมีได้มากกว่า 1 คำสั่ง คำสั่งเปลี่ยนแปลงค่า; }

  8. ตัวอย่าง ให้แสดงข้อมูล 20,15,10,5,0 int x=20; while(x>0) { printf(“%d”,x); x=x-5; } printf(“End Program”); 20 15 10 5 End Program

  9. แบบฝึกหัด • ให้แสดงข้อมูล 1-100 • ระหว่างเลข 1 – 100 ให้แสดงเฉพาะเลขคู่ • เขียนโปรแกรมให้รับค่าข้อมูลตัวเลขแล้วแสดงค่าตัวเลขนั้น ทางหน้าจอแต่ถ้าระบุตัวเลขเป็น 999 จึงหยุด

  10. โจทย์ 1.ให้รับค่าข้อมูลคะแนน ทางแป้นพิมพ์ทีละคนจากนั้นแสดงผลคะแนนดังกล่าว 2. สอบถามผู้ใช้ว่าต้องการทำงานต่อ หรือไม่(Y/N) ถ้า Y ให้รับค่าข้อมูลคนต่อไป ถ้า N ให้ออกจากโปรแกรม

  11. โจทย์ ให้รับค่าข้อมูล ชื่อ และคะแนนสอบทางแป้นพิมพ์ทีละคน ถ้าคะแนน 50 ขึ้นไปคือสอบผ่าน ถ้าน้อยกว่า 50 คือสอบไม่ผ่าน จากนั้นสอบถามผู้ใช้ว่า ต้องการทำงานต่อหรือไม่(Y/N) ถ้า Y ให้รับค่าข้อมูลคนต่อไป ถ้า N ให้ออกจากโปรแกรม กรุณาระบบชื่อ : som กรุณาระบุคะแนน : 77 ผลสอบของ somคือ : Pass ต้องการทำงานต่อหรือไม่ [y/n] : y กรุณาระบบชื่อ : yai กรุณาระบุคะแนน : 30 ผลสอบของ yaiคือ : Fail ต้องการทำงานต่อหรือไม่ [y/n] : n End Progam

  12. โจทย์สำหรับนักศึกษา ข้อ 3) จงเขียนโปรแกรมคำนวณผลบวก ลบ คูณ และหาร จากตัวเลข 2 ตัวที่รับเข้าไปจากผู้ใช้แล้วนำตัวเลข 2 ตัวนี้ไปคำนวณผลตามที่ผู้ใช้ต้องการโดยให้ผู้ใช้เลือกจากหัวข้อดังนี้1. Plus (บวก) 2. Subtract (ลบ) 3. Multiply (คูณ) 4. Divide (หาร) 5. End Program (ออกโปรแกรม)

  13. แนะนำคำสั่ง break และ continue break; ถ้าโปรแกรมพบคำสั่งนี้ จะหลุดออกจากลูปการทำงานทัน continue; ถ้าโปรแกรมพบคำสั่งนี้ จะทำให้หยุดการทำงานที่จุดนั้นแล้วย้อนกลับไปเริ่มต้นการทำงานที่ต้นลูปใหม่

  14. การใช้ do….while • การใช้ do..while นั้น จะใช้เมื่อเราต้องการเข้าสู่การทำงานของลูป (Loop) อย่างน้อย 1 ครั้ง โดยจะวางนิพจน์ทดสอบค่า(เงื่อนไข)ไว้ตอนท้ายของ Loop

  15. คำสั่ง do…while start กำหนดค่าตัวแปรเริ่มต้น คำสั่งต่าง ๆภายในลูป ตัวแปรเปลี่ยนแปลงค่า จริง เท็จ เงื่อนไข End

  16. โจทย์ : ให้แสดงข้อมูล 1,2,3,.. ,100 (คำสั่ง do…while) start int num=1 Print num num++ num<=100 เท็จ จริง End

  17. คำสั่ง do…while รูปแบบ ตัวแปรกำหนดค่าเริ่มต้น do{ คำสั่งในลูป; //สามารถมีได้มากกว่า 1 คำสั่ง คำสั่งเปลี่ยนแปลงค่า; } while(เงื่อนไข);

  18. เปรียบเทียบ

  19. โจทย์ • แสดงข้อมูล 1-100 2. เขียนโปรแกรมให้รับค่าข้อมูลตัวเลขแล้วแสดงค่าตัวเลขนั้น ทางหน้าจอแต่ถ้าระบุตัวเลขเป็น 999 จึงหยุด

  20. โจทย์ จงเขียนโปรแกรมสามารถรับค่าตัวเลขได้เรื่อย ๆไม่จำกัดจำนวนรอบ เมื่อ User ต้องการจบการทำงาน ให้ป้อนเลข 0 จากนั้น แสดงผลรวม (sum) ตัวเลขทั้งหมดที่ป้อนเข้าไป และข้อความ “Bye..Bye..End of Program”

  21. ตัวอย่างโปรแกรม

  22. โจทย์ เขียนโปรแกรมให้สามารถระบุจำนวน ที่ต้องการ input คะแนน จากนั้นนำคะแนนที่ input ไปตัดเกรด 0-49 F 50-59 D 60-69 C 70-79 B 80-100 A เมื่อครบจำนวน ให้แสดงข้อมูล คะแนนและผลเกรดที่ได้

  23. โจทย์สำหรับนักศึกษา ข้อ 4) ให้รับข้อมูลราคา สินค้า(รับทศนิยมได้) และจำนวนสินค้าที่ซื้อของรายการนั้น โดยสามารถรับราคา และจำนวน ไม่จำกัดจำนวนรอบ จนกระทั้ง ผู้ใช้ ป้อนข้อมูลเป็น 000 จึงสรุป ผลรวมของยอดเงิน ที่ต้องจ่าย

  24. การบ้านเพิ่มเติม ให้นำโจทย์ที่ให้เขียนโปรแกรม นำไปเขียน เป็น Flow Chart

  25. โจทย์ : ให้แสดงข้อมูล 1,2,3,.. ,100 (คำสั่ง do…while) start int num=1 Print num num++ num<=100 เท็จ จริง End

  26. โจทย์ : ให้แสดงข้อมูล 1,2,3,.. ,100 (คำสั่ง while) start int num=1 num<=100 เท็จ num++ จริง Print num End

More Related