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

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

คำสั่งวนซ้ำ.

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


งานนำเสนอเรื่อง: "คำสั่งวนซ้ำ."— ใบสำเนางานนำเสนอ:

1 คำสั่งวนซ้ำ

2 เนื้อหา ทบทวนการไหลของโปรแกรม โปรแกรมที่ทำงานแบบวนซ้ำ ลูปแบบ while
ลูปแบบ do..while

3 การไหลของโปรแกรมแบบต่าง ๆ
โปรแกรมอย่างง่าย มีการไหลจากบนลงล่าง Statement1 Statement2 Statementn END START Statement3 START END Statement โปรแกรมที่มีคำสั่งเดียว โปรแกรมที่มีหลายคำสั่ง

4 การไหลของโปรแกรมแบบต่าง ๆ
โปรแกรมแบบมีเงื่อนไข START END Statement condition true false START END Statementf condition true false Statementt คำสั่ง if คำสั่ง if..else

5 การวนซ้ำ กิจกรรมหลายอย่างมีลักษณะการทำงานแบบซ้ำไปมา
ตัวอย่างในชีวิตประจำวัน ก้าวไปข้างหน้า 10 ก้าว ขยี้ผ้าจนกว่าจะสะอาด เรียนวิชาคอมพิวเตอร์จนกว่าจะผ่าน ตัวอย่างในการเขียนโปรแกรม วนรับตัวเลขมา 10 ตัวเพื่อหาค่าเฉลี่ย

6 โปรแกรมแบบวนซ้ำดียังไง?
เพื่อหลีกเลี่ยงการเขียนโค้ดแบบเดียวกันซ้ำหลายรอบ ได้โปรแกรมที่สั้นและกระชับขึ้น โปรแกรมจะมีความยืดหยุ่นมากกว่า เช่นรับข้อมูลได้หลากหลายขนาด โดยไม่ต้องแก้โปรแกรม ลองนึกถึงโปรแกรมที่หาผลรวมของตัวเลข 3 ตัว

7 ตัวอย่าง: หาผลรวมของตัวเลข 3 ตัว
เกิดโจทย์เปลี่ยนเป็นหาผลรวมของเลข 100 ตัว? หรือกี่ตัวก็ได้จนกว่าผู้ใช้จะป้อนเลขลบ using System; class Summing { static void Main() { int n, sum = 0; Console.Write("Enter a value: "); n = int.Parse(Console.ReadLine()); sum = sum + n; Console.WriteLine("The sum is {0}.", sum); } 1st number 2nd number 3rd number

8 หาผลรวมตัวเลข: โฟลว์ชาร์ต
START Let sum = 0 and i = 1 i  num false true Read a value, n Increment sum by n Increment i by 1 Print sum on screen END

9 ลูปแบบ while ทำ statement ตราบเท่าที่ condition เป็นจริง
ทำ stmt1,…,stmtN ตราบเท่าที่ condition เป็นจริง START while (condition) statement; condition false true Statement while (condition) { stmt1; stmt2; : stmtN; } END

10 หาผลรวมตัวเลข: โปรแกรม
using System; class Summing { static void Main() { int i, n, sum = 0, num; Console.Write("How many values do you have: "); num = int.Parse(Console.ReadLine()); i = 1; while (i <= num) { Console.Write("Enter a value: "); n = int.Parse(Console.ReadLine()); sum = sum + n; i = i + 1; } Console.WriteLine("The sum is {0}.", sum);

11 ลับสมอง เขียนโฟลว์ชาร์ตและโปรแกรมภาษา C# เพื่อคำนวณค่า sum โดยที่ sum นิยามจากสูตร โดยที่ค่า N รับมาจากผู้ใช้ เช่นถ้า N = 3, sum = = 14 ตัวอย่างผลลัพธ์ using System; class Sum { static void Main() { int sum = 0, i = 1, N; Console.Write("Enter N: "); N = int.Parse(Console.ReadLine()); while ( i <= N ) { sum = sum + i*i; i = i+1; } Console.WriteLine("The sum is {0}.", sum); ??? ??? Enter N: 3 The sum is 14

12 ลูปแบบดักค่า ที่ผ่านมาเป็นตัวอย่างของลูปวนนับ (counter loop)
จำนวนครั้งที่วนซ้ำขึ้นอยู่กับค่าที่กำหนดไว้แล้ว ทำอย่างไรหากเราไม่ทราบจำนวนล่วงหน้า ใช้ลูปแบบดักค่า (sentinel loop) นิยามค่าที่ใช้ดัก เพื่อให้โปรแกรมหลุดออกจากลูป ตัวอย่าง ตัวดัก Enter a number, or -1 to quit: 3 Enter a number, or -1 to quit: 10 Enter a number, or -1 to quit: 15 Enter a number, or -1 to quit: -1 The sum is 28

13 ตัวอย่าง: ลูปดักค่า using System; class Summing { static void Main() {
int n, sum = 0; Console.Write("Enter a number, or -1 to quit: "); n = int.Parse(Console.ReadLine()); while (n != -1) { sum = sum + n; } Console.WriteLine("The sum is {0}.", sum);

14 ลูปแบบ do...while ทำ stmt1...stmtN ตราบเท่าที่เงื่อนไขยังเป็นจริง
START do { stmt1; stmt2; : stmtN; } while (condition); true Statement Statement condition false END

15 ลูปแบบดักค่าแบบ do...while
using System; class Summing { static void Main() { int n, sum = 0; do { Console.Write("Enter a number, or -1 to quit: "); n = int.Parse(Console.ReadLine()); if (n != -1) sum = sum + n; } while (n != -1); Console.WriteLine("The sum is {0}.", sum); }

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


ดาวน์โหลด ppt คำสั่งวนซ้ำ.

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


Ads by Google