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

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

Lecture 6 คำสั่งควบคุมการ ทำงาน. Objectives if statement switch statement break statement while statement continue statement do-while statement for statement.

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


งานนำเสนอเรื่อง: "Lecture 6 คำสั่งควบคุมการ ทำงาน. Objectives if statement switch statement break statement while statement continue statement do-while statement for statement."— ใบสำเนางานนำเสนอ:

1 Lecture 6 คำสั่งควบคุมการ ทำงาน

2 Objectives if statement switch statement break statement while statement continue statement do-while statement for statement end program command

3 ในการเขียนโปรแกรมทุกภาษานั้น สิ่งที่พบเสมอในโปรแกรม ประกอบไปด้วยรูปแบบการเขียนโปรแกรม 2 ประเภทดังนี้ 1. การเขียนโปรแกรมแบบมีการตัดสินใจ(Decision Statement) ซึ่งจะมีอยู่ 2 คำสั่ง ได้แก่ if และ switch - case 2. การเขียนโปรแกรมวนรอบการทำงาน(Iteration Statement) ซึ่งจะมีอยู่ 3 คำสั่ง ได้แก่ while, do-while และ for และยังมีคำสั่ง break,continue และ exit เพื่อใช้ในการออก จากโปรแกรม

4 6.1 if statement คำสั่ง if คือคำสั่งสำหรับใช้เลือกทำคำสั่งโดยอาศัยการตรวจสอบจากเงื่อนไข (condition) มีรูปแบบการใช้งานดังนี้ if (condition) statement 1 หรือ if (condition) statement 1 else statement 2 กรณีที่มี จำนวน statement มากว่า 1 จะต้องมีวงเล็บปีกกาเป็นตัวกำหนด เช่น if (condition) {statement 1; statement 2; } else {statement 3; statement 4 ;} condition = เงื่อนไขที่ใช้ในการตรวจสอบ statement = คำสั่งดำเนินการ

5 กฎของคำสั่ง if 1.ค่าที่เป็นเงื่อนไข(condition) จะต้องคร่อมด้วยวงเล็บเสมอ ค่า ดังกล่าวอาจใช้ตัวแปร นิพจน์ หรือฟังก์ชันใส่ในจุดดังกล่าว 2.จะทำ statement1เมื่อค่าที่ได้จากการตรวจสอบมีค่าไม่เท่ากับ 0 (จริง) จะทำ statement2เมื่อค่าที่ได้จากการตรวจสอบมีค่า เท่ากับ 0 (เท็จ) 3.ค่าที่ได้จากการตรวจสอบจะต้องเป็นจำนวนเต็มเท่านั้น 4.ในกรณีที่มี statement มากว่า 1 ให้คร่อม ด้วย { } 5.ใช้คำ else โดดๆ โดยไม่มี else ไม่ได้

6 คำสั่งตัดสินใจ if…else เงื่อนไข เท็จ จริง statement 1statement 2

7 ตัวอย่างการใช้งาน if…else #include int main() { int n, d; cout << "Enter two integers: "; cin >> n >> d; if (n>=d) cout << n << " is greater than " << d << endl; else cout << n << " is less than " << d << endl; return 0; }

8 6.2 เงื่อนไขซ้อน คำสั่ง if ซึ่งเป็นการตัดสินใจที่มีมากกว่า 1 เงื่อนไขซ้อนกันมีรูปแบบการใช้งาน ดังนี้ if(condition1) statement1 if(condition2) statement2 else statement 3 สามาเขียนได้เป็น if (condition1) statement 1 else if (condition2) statement 2 else statement 3

9 คำสั่งตัดสินใจ nest…if เงื่อนไข เท็จ จริง statement 1 statement 2 เงื่อนไข จริง เท็จ statement 3

10 ตัวอย่างการใช้งาน #include int main(){ int score; cout << "Enter the test score: "; cin >> score; if (score > 100) cout << "Error: score is out of range."; else if (score >= 90) cout << 'A'; else if (score >= 80) cout << 'B'; else if (score >= 70) cout << 'C'; else if (score >= 60) cout << 'D'; else if (score >= 0) cout << 'F'; else cout << "Error: score is out of range."; return 0; }

11 6.3 switch case statement คำสั่ง switch คือคำสั่งสำหรับใช้เลือกตำแหน่งเริ่มต้นของคำสั่งที่ทำงานภายใน กลุ่ม โดยอาศัยการตรวจสอบจากเงื่อนไข(condition) มีรูปแบบการใช้งานดังนี้ switch(variable){ case constant 1: statement; statement; … break; case constant 2: statement; statement; … break; … case constant n: statement; statement; … break; default: statement } variable = ตัวแปรเก็บค่าของข้อมูล constant = ค่าคงที่ break = ออกจาก switch เมื่อเจอคำสั่ง break statement = คำสั่งดำเนินการ

12 กฎของคำสั่ง switch-case 1.ค่าที่ได้จากการตรวจสอบจะต้องเป็นจำนวนเต็มเท่านั้น ค่า ดังกล่าวอาจใช้ตัวแปร นิพจน์ หรือฟังก์ชันใส่ในจุดดังกล่าว 2.ตำแหน่งหลังเครื่องหมาย (:) หลังคำสงวน case คือตำแหน่ง เริ่มทำงานของคำสั่ง 3.ในกรณีที่ไม่มีใดตรงกับค่าตรวจสอบโปรแกรมจะกระโดไปทำ statement ที่อยู่หลัง default 4.สามารถมี statement หลัง case ได้มากว่า 1 คำสั่ง

13 ตัวอย่างการใช้งาน switch-case #include int main(){ int score; cout >score; switch (score/10){ case 10: case 9: cout << ‘A’ <

14 6.4 for statement คำสั่ง for คือคำสั่งสำหรับใช้วนรอบในการทำ statement for (initial ; condition ; update){ statement 1; statement 2; … statement n; } initial = กำหนดค่าเริ่มต้นให้ตัวแปร condition = เงื่อนไขตรวจสอบการทำงาน update = การเพิ่มหรือลดค่าของนิพจน์

15 กฎของคำสั่ง for 1.เมื่อโปรแกรมทำงานมาถึงคำสั่ง for จะมีการกำหนดค่าเริ่มต้น initial แล้วจึงตรวจสอบว่าค่าเป็นเท็จหรือไม่ ถ้าเป็นเท็จจะออก จาก for แต่ถ้าเป็นจริงทำ statement ที่อยู่ภายใน เมื่อทำ statement ที่อยู่ภายในเสร็จจะกลับมาทำการ update ค่าของตัว แปร และกลับมาตรวจสอบเงื่อนไข วนเช่นนี้เรื่อยไป จะตรวจสอบ จนกว่าจะตรวจสอบได้ค่าเป็น 0(เท็จ) 2.จะตรวจสอบจนกว่าจะตรวจสอบได้ค่าเป็น 0 (ในรอบที่ตรวจสอบ ถ้าค่าได้เป็น 0 จะไม่มีการทำ statement 3.ค่าที่ใช้ในการตรวจสอบ condition จะต้องเป็นจำนวนเต็ม ซึ่งอาจ ใช้ตัวแปร หรือ นิพจน์ หรือฟังก์ชันในจุดดังกล่าวได้

16 ตัวอย่างการใช้งาน for //โปรแกรมหาผลรวมยกกำลังสอง #include int main() { int n, sum = 0; cout << "Enter a positive integer: "; cin >> n; for (int i = 1; i <= n; i++) sum += i*i; cout << "The sum of the first " << n << " squares is " << sum << endl; return 0; }

17 ตัวอย่างการใช้งาน for //โปรแกรมหาค่าแฟคทอเรียล #include int main() { int n, f = 1; cout > n; for (int i = 2; i <= n; i++) f *= i; cout << n << " factorial is " << f << endl; return 0; }

18 6.5 while statement คำสั่ง while คือคำสั่งสำหรับใช้วนรอบในการทำ statement โดยจะทำการ ตรวจสอบ condition ถ้าผลการตรวจสอบเป็นจริง(true) มีค่าไม่เท่ากับศูนย์ statement จึงจะได้รับการประมวลผล และกลับมาตรวจสอบ condition ใหม่ จนกว่าค่าตรวจสอบจะเป็นเท็จ(false) จึงจะจบการทำงาน while (condition){ statement 1; statement 2; … statement n; } condition = เงื่อนไขตรวจสอบการทำงาน statement = ประโยคคำสั่งที่ต้องการให้ประมวลผล

19 กฎของคำสั่ง while 1.จะมีการตรวจสอบก่อนทำ statement ในแต่ละรอบ 2.จะตรวจสอบจนกว่าจะตรวจสอบได้ค่าเป็น 0 (ในรอบที่ตรวจสอบ ถ้าค่าได้เป็น 0 จะไม่มีการทำ statement 3.ค่าที่ใช้ในการตรวจสอบ condition จะต้องเป็นจำนวนเต็ม ซึ่งอาจ ใช้ตัวแปร หรือ นิพจน์ หรือฟังก์ชันในจุดดังกล่าวได้

20 ตัวอย่างการใช้งาน while //โปรแกรมหาของจำนวนยกกำลัง 3 เมื่อกด 0 จะออกจากโปรแกรม #include int main() { int n; cout << "Enter positive integers. Terminate with 0.\n\t: "; cin >> n; while (n > 0) { cout << n << " cubed is " << n*n*n << "\n\t: "; cin >> n; } return 0; }

21 Lab in class while statement 1.ทำการเขียนโปแกรมตามผลรวมยกกำลังสอง ตามสมการด้านล่าง ผลรวมให้เก็บไว้ในตัวแปร ชื่อ sum 2.ค่าที่ป้อนให้เป็นจำนวนเต็มอย่างเดียว

22 6.6 do…while statement คำสั่ง do…while จะคล้ายกับคำสั่ง while แต่ต่างตรงที่จะทำ statement ก่อน ตรวจสอบเงื่อนไข ดังนั้นจะมีการทำงานก่อน 1 ครั้งเสมอ do{ statement 1; statement 2; … statement n; } while(condition); condition = เงื่อนไขตรวจสอบการทำงาน statement = ประโยคคำสั่งที่ต้องการให้ประมวลผล

23 กฎของคำสั่ง do…while 1.จะตรวจสอบหลังทำ statement แล้ว 2.จะตรวจสอบจนกว่าจะตรวจสอบได้ค่าเป็น 0 (ในรอบที่ตรวจสอบ ถ้าค่าได้เป็น 0 จะไม่มีการทำ statement 3.ค่าที่ใช้ในการตรวจสอบ condition จะต้องเป็นจำนวนเต็ม ซึ่งอาจ ใช้ตัวแปร หรือ นิพจน์ หรือฟังก์ชันในจุดดังกล่าวได้

24 ตัวอย่างการใช้งาน do…while //โปรแกรมหาค่าแฟคทอเรียล #include int main() { int n, f = 1; cout > n; cout << n << " factorial is "; do { f *= n; n--; } while (n > 1); cout << f << endl; return 0; }

25 6.7 break statement คำสั่ง break เราเรียนรู้มาแล้วว่ามันสมารถใช้ร่วมกับ switch ได้ แต่เมื่อเรานำมา ประยุกต์ในการวนลูป คำสั่ง break ก็จะช่วยในการออกจากลูป(Loop) การทำงาน while (1) { if (i > n) break; // loop stops here when i > n sum += i*i; i++; }

26 6.8 continue statement คำสั่ง continue จะเป็นคำสั่งให้ไปเริ่มต้นทำงานที่ลูปใหม่ ส่วนคำสั่ง break ก็จะ ช่วยในการออกจากลูป(Loop) การทำงาน #include int main() { int n; for (;;) { cout > n; if (n%2 == 0) continue; else if (n%3 == 0) break; cout << "\tBottom of loop.\n"; } cout << "\tOutside of loop.\n"; return 0; }

27 6.9 goto statement คำสั่ง break,continue และ switch เป็นคำสั่งที่ให้โปรแกรมออกไปทำงานที่จุด อื่นที่ไม่ใช้ตำแหน่งที่โปรแกรมจะต้องทำงานตามปรกติ โดยขึ้นอยู่กับแต่ละคำสั่ง คำสั่ง break มีจุดหมายปลายทางคือคำสั่งถัดไปที่อยู่นอกลูป(Loop) การทำงาน,continue คือเริ่มต้นลูปใหม่อีกครั้ง, switch จะกระโดดไปตำแหน่งที่ตรงกับ ตัวเลือก คำสั่งทั้งสามจะเป็นคำสั่งที่ทำให้โปรแกรมกระโดดข้ามการทำงาน statement อื่นๆ ตามปรกติ เพื่อไปยังจุดหมายปลายทางตามคำสั่งนั้น คำสั่ง goto เป็นคำสั่งกระโดดข้ามการทำงานอีกคำสั่งหนึ่ง ซึ่งตำแหน่งที่ต้องการ จะกระโดดไปจะต้องระบุไว้ด้วยป้ายชื่อ(Label) กฎการตั้งชื่อ จะต้องถูกต้องตามกฎการตั้งชื่อ และหลังชื่อจะต้องลงท้ายด้วย ทวิภาค(:)

28 ตัวอย่างการใช้งาน goto //โปรแกรมการหลุดจากลูปซ้อน #include int main() { int a, b, c; cin >> a >> b >> c; for (int i = 0; i < a; i++) { for (int j = 0; j < b; j++) for (int k = 0; k < c; k++) if (i*j*k > 100) goto esc; else cout << i*j*k << " "; esc: cout << endl; } return 0; }

29 Lab in class mix 1.ให้นักศึกษาทำการเขียนโปรแกรมเพื่อคาดเดาเลข 1,2,3 ว่าค่าจะ เป็นเลขตัวไหน 2.ค่าที่ป้อนให้เป็นจำนวนเต็มอย่างเดียว 3.ถ้าเลือกค่าถูกต้องให้แสดงข้อความ You Win! 4.ถ้าป้อนค่าไม่ถูกให้แสดงข้อความ You Lose! พร้อมกับป้อนค่า ใหม่จนกว่าจะถูก

30 Lab in class mix //hint #include void main(void){ int i; /* Seed the random-number generator with current time so that * the numbers will be different every time we run. */ unsigned seed = time(NULL); srand(seed); /* Display 1,2,3 numbers. */ for( i = 0; i < 10;i++ ) printf( " %d \n", rand()%3+1); }


ดาวน์โหลด ppt Lecture 6 คำสั่งควบคุมการ ทำงาน. Objectives if statement switch statement break statement while statement continue statement do-while statement for statement.

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


Ads by Google