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

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

Visual C# 2010 Express 4. Statement พื้นฐานการโปรแกรม ต้องทราบการใช้ คำสั่ง การควบคุม 1 C# Programming with Visual C# 2010 Express.

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


งานนำเสนอเรื่อง: "Visual C# 2010 Express 4. Statement พื้นฐานการโปรแกรม ต้องทราบการใช้ คำสั่ง การควบคุม 1 C# Programming with Visual C# 2010 Express."— ใบสำเนางานนำเสนอ:

1 Visual C# 2010 Express 4. Statement พื้นฐานการโปรแกรม ต้องทราบการใช้ คำสั่ง การควบคุม 1 C# Programming with Visual C# 2010 Express

2 เป้าหมายการเรียนรู้  คำสั่งใช้เพื่อการตัดสินใจ  If..else  ?:  switch  คำสั่งเพื่อนการทำงานวนซ้ำ  while  do while  for, foreach  คำสั่งทำงานเฉพาะจุด  go to, break, continue  return 2C# Programming with Visual C# 2010 Express

3 ชนิดของสเตทเมนต์  คำสั่งเลือก (selection statement) เช่น คำสั่ง if ถ้า เงื่อนไข (จริงหรือเท็จ) แล้ว จะทำอะไร เป็นคำสั่งที่ใช้บ่อย ที่สุด คำสั่งทางเลือกอีกแบบคือ switch เป็นทางเลือกที่มี หลายทางเลือก  คำสั่งวนซ้ำ (iteration statement) มีหลายตัว เช่น while, do, for เป็นคำสั่งที่พบเหมือนกับภาษาโปรแกรมอื่นๆ สำหรับดอดเน็ตมีคำสั่งที่ช่วยให้เขียนได้ง่ายขึ้นด้วยคำสั่ง foreach ซึ่งนิยมใช้กับ คลาสประเภ่ท collection  คำสั่งกระโดด (jump statement) ใช้คำสั่ง goto, break, continue เป็นคำสั่งที่ให้กระโดด หยุด และทำต่อไป ไปยัง จุดต่างๆ แม้จะไม่แนะนำให้ใช้ แต่หลายภาษาในเชิงวัตถุก็มี คำสั่งนี้ให้ใช้อยู่ C# Programming with Visual C# 2010 Express3

4 การใช้ code snippet  ทุกสเตทเมนต์สามารถใช้ โค้ดลัด (code snippet) ได้ เช่น การใช้คำสั่ง เช่น if เป็นคำสั่งเริ่มต้น ให้พิมพ์ if และตาม ด้วยกด Tab 2 ครั้ง visual C# 2010 จะสร้างโค้ดอัตโนมัติ C# Programming with Visual C# 2010 Express4

5 การใช้เงื่อนไข if  If เป็นคำสั่งการตัดสินใจพื้นฐาน และมีทางเลือกอื่นได้ด้วย การต่อด้วย else ดังแสดงเป็น if (Boolean-expression) else … หรือแปลตรงตัวว่า ถ้า...แล้ว... ตัวอย่างการใช้ เช่น ถ้าตัวแปรชื่อ number % 2 == แล้ว ให้พิมพ์ว่าเลขคู่ C# Programming with Visual C# 2010 Express5 1.if ([condition]) 2.{ 3.[code to execute if condition is true] 4.} 5.else 6.{ 7.[code to execute if condition is false] 8.}

6 การทำลำดับชั้นของ if.. else if 1. if ([condition1]) 2. { 3. [code to execute if condition1 is true] 4. } 5. else if ([condition2]) 6. { 7. [code to execute if condition is false and condition2 is true] 8. } 9. else 10. { 11. [code to execute if condition1 and condition2 are both false] 12. } C# Programming with Visual C# 2010 Express6

7 ตัวอย่างการคำเกรด ด้วย if…else if 1. if (score > 79) 2. { 3. Console.WriteLine("Get A"); 4. } 5. else if (score > 69) 6. { 7. Console.WriteLine("Get B"); 8. } 9. else if (score > 59) 10. { 11. Console.WriteLine("Get C"); 12. } 13. else if (score > 49) 14. { 15. Console.WriteLine("Get D"); 16. } C# Programming with Visual C# 2010 Express7

8 การใช้เงื่อนไข Ether…or  Ether…or หมายถึง ถ้าไม่อย่างใดก็อีกอย่างหนึ่ง ซึ่งเหมือน เงื่อนไข If…else นั้นเอง ในเงื่อนไข Ether…or ภาษาซี ชาร์ปมีตัวดำเนินการอย่างย่อคือ ?: ดังเคยอธิบายมาบ้าง แล้ว C# Programming with Visual C# 2010 Express8 DataType result = [condition] ? [true expression] : [false expression] int age = 12; Console.WriteLine((age > 15) ? "You are adult." : "You are boy.");

9 การใช้เงื่อนไขหลายทางเลือก switch  ในกรณีที่เงื่อนไข มีความซับซ้อนมาก การใช้ if.. else อย่าง เดียวจะทำให้โค้ดอ่านยาก มีอีกวิธีหนึ่งการใช้ switch … case ภายใต้เงื่อนไข switch ([expression to check)] จะตรวจสอบ เงื่อนไข และนำผลไปเปรียบเทียบกับ แต่ละบล็อกคำสั่ง case[ ] แต่คำสั่งสุดท้ายของแต่ละบล็อกต้อง ต่อด้วยคำสั่ง break; C# Programming with Visual C# 2010 Express9 switch ([expression to check]) { case [test1]:... [exit case statement] case [test2]:... [exit case statement] default:... [exit case statement] }

10 การจัดกลุ่มใน switch  ในกรณีที่ หลาย case ให้ทำงานเหมือนกันก็สามารถ รวมกลุ่ม case ได้ ดังตัวอย่างต่อไปนี้ C# Programming with Visual C# 2010 Express10 MonthName current = MonthName.June; int monthDays; switch (current) { case MonthName.February : monthDays = 28; break; case MonthName.April : case MonthName.June : case MonthName.September : case MonthName.November : monthDays = 30; break; default : monthDays = 31; break; } enum MonthName { January, February,March,April,May, June,July, August,September,October, November,December }

11 การใช้ goto ใน switch  C#ใช้ คำสั่ง goto ไปยังป้ายชื่อ (label) case และ default ไปยังปลายทางของ case และ default ของ switch ได้ ตัวอย่างข้อต่อไปนี้ ใช้ได้กับซีชาร์ป C# Programming with Visual C# 2010 Express11 switch (number % 10) { case 1: if (number / 10 == 1) { Console.WriteLine("case1"); break; } goto case 2; case 2: if (number / 10 == 2) { Console.WriteLine("case2"); break; } goto default; default: Console.WriteLine("default"); break; }

12 คำสั่งวนซ้ำ While  คำสั่งทำงานวนซ้ำ (loop) ของ While เป็นคำสั่งอย่างง่ายที่สุด และนิยมใช้กันมาก การทำงานซ้ำจะทำจนกว่าเงื่อนไขจะเป็น เท็จ การตรวจสอบเงื่อนไขต้องเป็นการตรวจสอบที่เป็น Boolean หรือ จิรง/เท็จ C# Programming with Visual C# 2010 Express12 while ([condition]) { // Code to loop. } int i = 0; while (i < 10) { Console.WrileLine(i++); }

13 ข้อควรระวังในการใช้ while  while ที่ไม่มี บล็อกกัน ทำให้อ่านยาก  ควรเขียนให้อ่านง่ายขึ้นไปอีกแยกคำสั่งใหม่ ในการเพิ่มค่า C# Programming with Visual C# 2010 Express13 int i = 0; while (i < 10) { Console.WrileLine(i++); } while (i < 10) { Console.WrileLine(i); i++; }

14 คำสั่งวนซ้ำ do … while  คำสั่ง do คล้ายกับคำสั่ง while เพียงแต่ do จะทำงานใน บล็อกคำสสั่งก่อน แล้วตรวจสอบบูลีนที่หลัง คำสั่งวนซ้ำของ while จะทำงานในบล็อกคำสั่งวนอย่างน้อย 0 ครั้งขึ้นไป แต่ คำสั่งวนซ้ำของ do จะทำคำสั่งในบล็อกอย่างน้อย 1 ครั้งขึ้นไป C# Programming with Visual C# 2010 Express14 do { // Code to loop. } while ([condition]); do { Console.WriteLine( i ); i++; }while ( i < 10);

15 การใช้คำสั่งวนซ้ำ for  เมื่อใช้ลูบที่ผ่านมา เช่น while ผู้ใช้มักจะลืมการปรังปรุงข้อมูล ซึ่งอาจทำให้ลูบวนไม่รู้จบได้ง่ายๆ  การใช้ for จะช่วยลดความผิดพลาดได้ง่ายเพราะ for มีการ บังคับการปรับปรุงข้อมูลมูลรวมอยู่ในเงื่อนไขแล้ว รูปแบบการใช้ for จะทำงานวนซ้ำ เริ่มจากค่าเริ่มต้น (initialize) แล้วทำงาน ตามเงื่อนไข (condition) ถ้าเป็นจริงจะทำงานภายในลูป( { …// code-statement.. } สุดท้าย จะทำการปรับปรุงข้อมูลค่าเริ่มต้น (update) การทำงานในรอบต่อไปจะทดสอบเงื่อนไข เมื่อเป็นจริง จะทำงานต่อไป จนกว่าเงื่อนไขจะเป็นเท็จจึงจะออกจากลูบ C# Programming with Visual C# 2010 Express15 for ( initializer ; condition ; update ) { //code - statement }

16 การใช้คำสั่งวนซ้ำ foreach  การใช้คำสั่ง foreach เหมะสมกับการ กลุ่มข้อมูลหรือชุดข้อมูล การใช้มักต้อง ใช้ร่วมกับเนมสเปส System.Collection เป็น คลาสของชุดข้อมูล เช่น arrayList, listBox ซึ่งง่ายกว่าการใช้ คำสั่ง for เพราะการใช้คำสั่ง for จะต้องนับจำนวนสมาชิกในการ วนซ้ำให้แน่ชัดก่อน และปรับปรุงค่าต่อไปในการทำงานวนซ้ำ จึงจะสั่งให้วนซ้ำตามจำนวนสมาชิก แต่สำหรับ การใช้ foreach ไม่ต้องนับจำนวนสมาชิกก่อน สามารถทำงานวนซ้ำได้ทันที C# Programming with Visual C# 2010 Express16 ArrayList al = new ArrayList(); al.Add("one"); al.Add("two"); al.Add("three"); al.Add("four"); foreach (var item in al) { Console.WriteLine(item); }

17 คำสั่งทำงานเฉพาะจุด goto  คำสั่ง goto เป็นคำสั่งเก่าแก่ ที่มีใช้กันในภาษารุ่นแรกๆ ซี ชาร์ปยังคงอนุรักษ์คำสั่งนี้ไว้ ถึงแม้ว่าจะทำให้โปรแกรมจะมี ลักษณะเหมือน สปาเก็ตตี้ ที่วกวนไปมา ซึ่งทำให้อ่านได้ ยาก  การใช้คำสั่งนี้ เคยได้เห็นกันบ้างแล้ว กับคำสั่ง switch ที่ให้ ทำงานต่อไปยังป้ายชื่อของ case ต่างๆ หรือ ป้ายชื่อ default ของ switch การใช้ goto ยังคงทำงานเหมือนกับ ใช้กับ switch คือให้กระโดดเพื่อให้ออกจากบล็อกไปยัง ป้ายชื่อเป้าหมาย C# Programming with Visual C# 2010 Express17

18 คำสั่งทำงานเฉพาะจุด break, continue  คำสั่ง break ใช้สำหรับการหยุดการทำงาน ของสเตทเมนต์ switch, while, do, for, foreach และคำสั่ง continue ใช้ สำหรับการทำงานต่อไป โดยทำงานเริ่มต้นใหม่ของลูบ คือใช้กับ while, do, for, foreach เท่านั้น โดยการให้หยุดหรือทำงานต่อ จะมีความหมายเฉพาะในส่วนในสุดของของบล็อกเท่านั้น C# Programming with Visual C# 2010 Express18 int i = 0; while (true) { Console.WriteLine(i); i++; if (i < 5) continue; else break; }

19 การตรวจสอบ ค่าที่ปรับปรุง ใน while  จากตัวอย่างการ ใช้ break และ continue ที่ผ่าน มา แสดงการหยุด และการทำงาน ของบล็อก while {…} ไม่ใช่ ใน ส่วนบล็อก if ผลลัพธ์โปรแกรม จะพิมพ์ 0 ถึง 4 C# Programming with Visual C# 2010 Express19

20 คำสั่งทำงานเฉพาะจุด return  คำสั่ง return ใช้สำหรับให้ออกสเตทเมนต์ switch หรือออก จากเมทธอด เช่น เมทธอดที่พบบ่อย เมทธอด Main( ) เมทธ อดคืออะไรจะอธิบายในรายละเอียดมากขึ้น ในบทต่อๆ ไป C# Programming with Visual C# 2010 Express20

21 คำถามทบทวน 1. คำสั่งต่อไปนี้ผิดพลาดอะไร และควรแก้ไขอย่างไร A. if num – 2 ==0 { …} B. if (num 100) { … } C. if (num == 60); num = 0; D. switch (num){ case 1,2 : num = 2; case 3: num = 3; default: num= 0; } E. for (int i = 0, I < 5, i++) Console.WriteLine(i); C# Programming with Visual C# 2010 Express21

22 คำถามทบทวน 1. คำสั่งต่อไปนี้ผิดพลาดอะไร และควรแก้ไขอย่างไร F. int i = 0; while (i < 10) Console.WriteLine(i); G. do { string r = Console.ReadLine( ); test = int.Parse(r); } H. While ( 0 != test) int i = 0; while (true){ Console.WriteLine(i); i++; if (i < 5) continue; else{ break;} i++; } C# Programming with Visual C# 2010 Express22

23 คำถามทบทวน 2. คำสั่งวนซ้ำใด ที่เหมาะสมกับการขึ้นข้อความรับการ ตอบสนองจากผู้ใช้งาน 3. คำสั่ง do {…}while( ) และคำสั่ง while{ … } มีการวนซ้ำ อย่างน้อยกี่ครั้ง 4. คำสั่ง goto ควรใช้ในสถานการณ์ใด 5. อะไรคือความแตกต่างระหว่างคำสั่ง break กับ continue C# Programming with Visual C# 2010 Express23


ดาวน์โหลด ppt Visual C# 2010 Express 4. Statement พื้นฐานการโปรแกรม ต้องทราบการใช้ คำสั่ง การควบคุม 1 C# Programming with Visual C# 2010 Express.

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


Ads by Google