งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Week 5 การทำซ้ำโดย while loop และ do while loop. Outline  Loop  while Statement  do-while Statement  Mini Debugging  Lab.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Week 5 การทำซ้ำโดย while loop และ do while loop. Outline  Loop  while Statement  do-while Statement  Mini Debugging  Lab."— ใบสำเนางานนำเสนอ:

1 Week 5 การทำซ้ำโดย while loop และ do while loop

2 Outline  Loop  while Statement  do-while Statement  Mini Debugging  Lab

3 Loop  ในการเขียนโปรแกรม จะมีการประมวลผลซ้ำ (Loop หรือ Iterate) เพื่อให้ โปรแกรม ทำงานตาม Statement หรือการประมวลผล ที่กำหนดไว้ ซ้ำมากกว่า 1 ครั้ง โดยไม่ จำเป็นที่จะต้องเขียน Statement นั้น ซ้ำไป ซ้ำมาในโค้ด  การทำงานจะทำงานตาม Statement ไปจน หมด แล้ว ถ้าหาก เงื่อนไขที่กำหนดไว้ให้ ทำซ้ำ ยังเป็นจริง โปรแกรมจะวนกลับไป ทำงานตาม Statement อีกรอบ จนกว่า เงื่อนไขที่กำหนดไว้จะเป็นเท็จ

4 ส่วนประกอบของการ iteration  มีอยู่ 3 ประเภท 1. Initialization คือ การกำหนดค่าเริ่มต้นของตัวแปรที่ จะเป็นเงื่อนไขในการ iteration  เช่น x = 1 2. Testing คือ การทดสอบว่า เงื่อนไขที่ทำการ Iteration นั้นยังเป็นจริงหรือไม่ จะมีการทำ Iteration ไปเรื่อยๆ หากเงื่อนไขยังเป็นจริง  เช่น x > Incrementing เป็นการเปลี่ยนแปลงค่าของตัวแปรที่ ใช้เป็นเงื่อนไขในการ Iteration  เช่น x = x + 1

5 ประเภทของ Iteration Statement  คือ วิธีการทำให้โปรแกรมทำงานเป็น Loop ได้  ในภาษา C มีอยู่ 4 ชนิดด้วยกัน 1. while statement 2. do-while statement 3. for statement 4. break and continue statement

6 while statement

7 while Statement  มีการตรวจสอบเงื่อนไขก่อน หากเงื่อนไขเป็นจริง โปรแกรมจะ เริ่มทำตาม Statement ที่กำหนดไว้ แล้วกลับไปเริ่มต้นใหม่ จนกว่าเงื่อนไขจะเป็นไม่เป็นจริง ถึงจะหยุดการทำงาน แล้วออกไป จาก Loop

8 Syntax while (condition) { statement1; statement2;... statementN; }

9 Flowchart expr Statement 1 Statement 2 Entry True False Exit

10 Example Example 1 พิมพ์เลข 1 ถึง 10 โดยใช้ while loop Example 2 เลือกการทำงานจากตัวเลข Menu ที่กำหนดไว้ หากเลือกตัวเลข นอกเหนือที่กำหนดไว้ จะต้อง ใส่ตัวเลขที่เลือกใหม่

11 Example 1 #include void main() { int count; count = 1; printf(“Print count from 1 to 10\n”); while (count <= 10) { printf(“%d ”, count); count++; } printf(“\n”); } Print count from 1 to ตัวอย่าง Output จากการทำงาน

12 Example 2 #include int main() { int a; /* initatialize value of a so that it can enter the loop */ a = 4; while (a != 1 && a !=2 && a !=3) { printf("1. Check spelling\n"); printf("2. Correct spelling errors\n"); printf("3. Display spelling errors\n"); printf("Enter your choice (1-3): "); scanf(“\n%d", &a); /* read selection from keyboard */ switch(a) { case 1: printf("Check spelling\n"); break; case 2: printf("Correct spelling errors\n"); break; case 3: printf("Display spelling errors\n"); break; default: /* do nothing */ break; }

13 Example 2 1. Check spelling 2. Correct spelling errors 3. Display spelling errors Enter your choice (1-3): 5 1. Check spelling 2. Correct spelling errors 3. Display spelling errors Enter your choice (1-3): 1 Check spelling ตัวอย่าง Output จากการทำงาน

14 do while Statement

15  จะแตกต่างจาก while Statement โดยที่ โปรแกรมจะเริ่มทำงาน ตาม Statement ที่ระบุไว้เลย โดยไม่มีการเช็ค Condition ก่อน จากนั้นเมื่อทำงานเสร็จแล้วถึงจะเช็คเงื่อนไข หากเงื่อนไขเป็นจริง จะทำการทำซ้ำ แต่หากเงื่อนไขเป็นเท็จจะจบการทำงานแล้วออก จาก Loop

16 Syntax do { statement1; statement2;... statementN; } while (condition);

17 Flowchart expr Statement 1 Statement 2 Entry True False Exit

18 Example Example 1 พิมพ์เลข 1 ถึง 10 โดยใช้ while Loop Example 2 เลือกการทำงานจากตัวเลข Menu ที่กำหนดไว้ หากเลือกตัวเลข นอกเหนือที่กำหนดไว้ จะต้อง ใส่ตัวเลขที่เลือกใหม่

19 Example 1 /* print count from 1 to 10 */ #include void main() { int count; count = 1; printf(“Print count from 1 to 10\n”); do { printf(“%d ”, count); count++; } while (count <=10); printf(“\n”); } Print count from 1 to ตัวอย่าง output จากการทำงาน

20 Example 2 #include void main() { int a; do { printf("1. Check spelling\n"); printf("2. Correct spelling errors\n"); printf("3. Display spelling errors\n"); printf("Enter your choice (1-3): "); scanf(“\n%d", &a); /* read selection from keyboard */ switch(a) { case 1: printf("Check spelling\n"); break; case 2: printf("Correct spelling errors\n"); break; case 3: printf("Display spelling errors\n"); break; default: /* do nothing */ break; } } while (a != 1 && a != 2 && a !=3); }

21 Example 2 1. Check spelling 2. Correct spelling errors 3. Display spelling errors Enter your choice (1-3): 5 1. Check spelling 2. Correct spelling errors 3. Display spelling errors Enter your choice (1-3): 1 Check spelling ตัวอย่าง output จากการทำงาน

22 Mini Debugging  ปัญหาที่พบได้บ่อยจากการใช้ Loop  Infinity Loop คือ โปรแกรมทำงานตาม Statement ไปเรื่อยๆ โดยไม่ สามารถออกจาก Loop ได้  โปรแกรม ไม่สามารถทำงาน ใน Loop ได้  แนวทางการแก้ไข  ตรวจสอบ Condition ที่กำหนด ว่า เป็น จริง หรือ เป็น เท็จ เสมอ หรือไม่  ตรวจสอบค่าของตัวแปรที่ใช้งาน ว่ามีการเปลี่ยนแปลงค่าได้หรือไม่  ตรวจสอบ ว่า ค่าของตัวแปรที่ใช้ในเงื่อนไข สามารถทำให้ Condition เป็น จริง หรือ เท็จได้หรือไม่


ดาวน์โหลด ppt Week 5 การทำซ้ำโดย while loop และ do while loop. Outline  Loop  while Statement  do-while Statement  Mini Debugging  Lab.

งานนำเสนอที่คล้ายกัน


Ads by Google