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

Slides:



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

การเขียน แบบวนซ้ำ , วนลูป
System Requirement Collection (2)
Looping ธนวัฒน์ แซ่เอียบ.
PHPPHP การเขียนโปรแกรมคอมพิวเตอร์ 1 สาขาวิชาระบบสารสนเทศ คณะเทคโนโลยีการจัดการ.
Practical with Flowchart
บทที่ 5 การควบคุมทิศทางการทำงานของโปรแกรม
ณ ห้องปฏิบัติการคอมพิวเตอร์ คณะพยาบาลศาสตร์ มหาวิทยาลัยเชียงใหม่
จัดทำโดย น. ส. ดวงกมล งามอยู่เจริญ เลขที่ 8 น. ส. ณัชชา เชื้อตา เลขที่ 6 เตรียมบริหารธุรกิจปี 1.
การใช้งานโปรแกรม SPSS
บทที่ 4 คำสั่งควบคุม โปรแกรม. คำสั่งควบคุมโปรแกรมออกได้เป็น 2 ประเภท คือ คำสั่งแบบกำหนดเงื่อนไข (Conditional Statement) คำสั่งแบบทำงานซ้ำ (Repetitive.
ชนิดของข้อมูล และการคำนวณทางคณิตศาสตร์
หน่วยการเรียนรู้ที่ 2 หลักการแก้ปัญหาด้วยคอมพิวเตอร์
ระบบบริหารงานบุคคล.
การเขียนโปรแกรมภาษาปาสคาล โดยใช้โครงสร้างหลักทั้ง 3 โครงสร้าง
กาญจนา ทองบุญนาค สาขาวิชาคอมพิวเตอร์ คณะวิทยาศาสตร์และเทคโนโลยี
การวิเคราะห์ขั้นตอนวิธีการแก้ปัญหา
หน่วยการเรียนรู้ที่ 1 กระบวนการเทคโนโลยี สารสนเทศ สไลด์ประกอบการสอน เรื่อง การจำลองความคิด เป็นข้อความ.
การเขียนผังงานเบื้องต้น (Flow chart)
หลักการโปรแกรม 1 Lecture 8: การทำซ้ำ (while, do-while)
MEE 231 Computer Programming สัปดาห์ที่ 6 ภาษา C หลักการของโปรแกรม ชนิดของตัวแปร การดำเนินการ คำสั่งการรับค่าตัวแปร และการแสดงผล.
เรื่อง หลักการเขียนโปรแกรม เบื้องต้น จัดทำโดย นางสาวชาดา ศักดิ์บุญญารัตน์
ITERATION (LOOP) สาขางานคอมพิวเตอร์ธุรกิจอาจารย์จิรา ภรณ์ เขตกุฎี
แบบทดสอบ MICROSOFT EXCEL มีข้อมูลในแผ่นงานตั้งแต่แถวที่ 1 ถึงแถว 500 และคอลัมน์ A จนถึงคอลัมน์ M วิธีการเลือกช่วง ข้อมูลวิธีใด อย่างไร ที่อำนวยความสะดวกได้ดีและให้ผลรวดเร็ว.
การพัฒนาผลสัมฤทธิ์ทางการเรียน วิชาการใช้โปรแกรมนำเสนอข้อมูล เรื่องการเชื่อมโยง ภาพนิ่ง ด้วยโปรแกรม Powerpoint2007 โดยใช้ สื่อคอมพิวเตอร์ช่วยสอน CAI ของนักเรียนระดับชั้น.
คำแนะนำ นายทะเบียนสหกรณ์ เรื่อง วิธีปฏิบัติทางบัญชีเกี่ยวกับ สินทรัพย์ไม่มีตัวตน พ. ศ เรื่อง วิธีปฏิบัติทางบัญชีเกี่ยวกับ สินทรัพย์ไม่มีตัวตน พ.
การพัฒนาบทเรียนคอมพิวเตอร์ช่วยสอน เรื่อง หลักการทำงานของคอมพิวเตอร์ วิชาคอมพิวเตอร์พื้นฐาน สำหรับนักเรียนชั้นมัธยมศึกษาปีที่ 1 โรงเรียนเฉลิมราชประชาอุทิศ.
การเลือกข้อมูลจาก List การกำหนดเงื่อนไขการป้อนข้อมูลด้วย Data Validation การใส่ Comment / แสดง / แก้ไข / ลบ.
LOGO ภาษาซี 1.1 อ. กฤติเดช จินดาภัทร์. LOGO ตัวอย่างโค้ดภาษาซี
ปรานอม ประทีปทวี 25/09/591 หน้าที่ของครูผู้นิเทศ สพม.5.
คำสั่งควบคุมการทำงาน
ผังงาน..(Flow Chart) หมายถึง...
บทเรียนโปรแกรมเพื่อการทบทวน
เกม คณิตคิดเร็ว.
Microsoft Access 2007 การสร้างฟอร์ม
บทที่ 5 การใช้คำสั่ง Select Case , For Next และ Do While
stack #2 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
หน่วยที่ 5 โปรแกรมแบบวนรอบทำซ้ำ
การเขียนโปรแกรมแบบวนซ้ำ
การประยุกต์ Logic Gates ภาค 2
โครงสร้างภาษา C Arduino
หน่วยการเรียนที่ 4 เรื่อง การควบคุมทิศทางการทำงาน
บทที่ 7 การเขียนโปรแกรม แบบวนรอบทำซ้ำ (Loop)
Control Statement เงื่อนไขคำสั่งในโปรแกรม ภาษา C
บทที่ 8 เงื่อนไขตัดสินใจ
สาระการเรียนรู้ ความหมายของอัลกอริทึม วิธีการเขียนผังงานที่ดี
บทที่ 8 การควบคุมโครงการ
รายวิชา ไมโครโปรเซสเซอร์ในงานอุตสาหกรรม
บทที่ 8 การควบคุมระบบสารสนเทศทางการบัญชี : การควบคุมเฉพาะระบบงาน
บทที่ 2 อัลกอริธึมและการวิเคราะห์ปัญหา
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
ขั้นตอนการออกแบบ ผังงาน (Flow Chart)
กำหนดกรอบระยะเวลาการขึ้นทะเบียนปี2556/57 1. ข้าว
บทที่ 9 การทำซ้ำ (Loop).
บทที่ 3 Programming By Wathinee duangonnam
ผู้ช่วยศาสตราจารย์จุฑาวุฒิ จันทรมาลี
คำสั่งวนรอบ (Loop).
วัฏจักรหิน วัฏจักรหิน : วัดวาอาราม หินงามบ้านเรา
บทที่ 7 การประมวลผลอาร์เรย์
บทที่ 8 การแก้ไขข้อผิดพลาดโปรแกรม(Debugging)
การเปลี่ยนแปลงประมาณการทางบัญชี และข้อผิดพลาด
งานนำเสนอสำหรับโครงการ นิทรรศการวิทยาศาสตร์
ค่ารูรับแสง - F/Stop ค่ารูรับแสงที่มีค่าตัวเลขต่ำใกล้เคียง 1 มากเท่าไหร่ ค่าของรูรับแสงนั้นก็ยิ่งมีความกว้างมาก เพราะเราเปรียบเทียบค่าความสว่างที่ 1:1.
2 โครงสร้างข้อมูลแบบสแตก (STACK).
กิจกรรมที่ 7 นายปรีชา ขอวางกลาง
Chapter 3 : Array.
คู่มือการใช้งานระบบเสนอหัวข้อของนักศึกษา
Array: One Dimension Programming I 9.
การเขียนโปรแกรมด้วยภาษาไพทอน การเขียนโปรแกรมแบบทางเลือก
Decision: Single and Double Selection (if and if-else statement)
ใบสำเนางานนำเสนอ:

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

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

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

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

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

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

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

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

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

ฝึกเขียนคำสั่ง ในแต่ละ Loop ให้แสดงคำว่า “ Ture ” จากนั้นสอบถาม User ว่าต้องการให้แสดงข้อความอีกหรือไม่ ถ้า User input y หรือ Y ให้แสดงข้อความอีก ถ้า input ข้อมูลอื่นๆให้ ออกจากโปรแกรม

ตัวอย่างแบบ ที่ 1 :

แนะนำคำสั่ง ตรวจสอบการมีค่าเท่ากันของ ข้อความ(String) ตัวอย่าง String x=“yes”; โจทย์ต้องการทราบว่า ข้อความที่เขียน คือข้อความ yes ใช่หรือไม่ รูปแบบ ตัวแปร.equals(ข้อความที่ต้องการ) x.equals(“yes”) ผลที่ได้จากคำสั่งนี้คือ true,false หมายเหตุ : ค่าเริ่มต้นของตัวแปรประเภท String คือ null

ตัวอย่างแบบ ที่ 2 :

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

โปรแกรม

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

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

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

โจทย์สำหรับนักศึกษา ข้อ 2 ) เขียนโปรแกรมรับข้อมูลปีเกิด (ระบุเป็นปี พ.ศ.) จากนั้นนำไปคำนวณอายุ แล้วแสดงผล (ถ้าระบุ ปีมากกว่าหรือเท่ากับปี ปัจจุบันให้แสดงข้อความเตือน ว่า “ท่านระบุข้อมูลผิด” หลังจากแสดงผล อายุ ให้สอบถามว่า ท่านต้องการออกจากโปรแกรมหรือไม่ [Y/N] ถ้า y ให้ออกจากโปรแกรม ถ้า n ให้กลับไปสอบถาม ปีเกิดใหม่อีกครั้ง

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

แนะนำคำสั่ง break และ continue

break continue คำสั่งต่าง ๆ คำสั่งต่าง ๆ break; continue; คำสั่งต่าง ๆ เงื่อน ไข เงื่อน ไข จริง จริง เท็จ เท็จ คำสั่ง นอกลูป คำสั่ง นอกลูป

ตัวอย่าง ทดสอบ break ,continue…. (1) เขียนคำสังแสดงตัวเลข 1  10

ตัวอย่าง ทดสอบ break ,continue….(2) เขียนคำสังแสดงตัวเลข 1 ถึง 10 แต่ไม่แสดงข้อมูล 4 และ 7

ตัวอย่าง ทดสอบ break ,continue….(3) จากตัวเลข 1 ถึง 10 ให้แสดงข้อมูล แต่ถ้าข้อมูลเป็นเลข 7 ให้จบโปรแกรม

ตัวอย่าง ทดสอบ break ,continue

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

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

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

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

เปรียบเทียบ

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

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

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

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

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

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

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

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

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