Bài giảng Cơ sở lập trình Csharp: Bài 3 - Cấu trúc chọn lựa nêu lên ngữ pháp của cấu trúc chọn lựa; lưu ý đối với cấu trúc chọn lựa. Mời các bạn tham khảo bài giảng để bổ sung thêm kiến thức về lĩnh vực này. Với các bạn chuyên ngành công nghệ thông tin thì đây là tài liệu hữu ích.
CẤU TRÚC CHỌN LỰA 05/20/21 Cấu trúc chọn lựa Cú pháp Dạng : if (điều kiện) ; Dạng : if (điều kiện) < lệnh 1> ; else < lệnh > ; 05/20/21 Cấu trúc chọn lựa (tt) Lưu ý -Từ khóa if else phải viết dạng chữ thường (thường hay mắc sai sót viết IF, iF, If, Else, ELSE, ) - Dấu chấm phẩy phải có để kết thúc phát biểu lệnh Thường hay mắc lỗi!!! 05/20/21 Cấu trúc chọn lựa (tt) using System; class Test { static public void Main(String[] s) { int a=0, b=1,c=2; If (a==b) Console.WriteLine(a+b+c); } } 05/20/21 Cấu trúc chọn lựa (tt) using System; class Test { static public void Main(String[] s) { int a=0, b=1,c=2; if (a==b) Console.WriteLine(a+b+c) /////// } } 05/20/21 Cấu trúc chọn lựa (tt) Lưu ý: Toàn điều kiện phải đặt cặp dấu ngoặc trịn Ví dụ if (a>=b) Console.WriteLine(a); if ( ( a+ b < c ) && ( a>=10 ) ) …… Thường hay mắc lỗi!!! 05/20/21 Cấu trúc chọn lựa (tt) using System; class Test { static public void Main(String[] s) { int a=0, b=1; if a>b a=a+b; }} 05/20/21 Cấu trúc chọn lựa (tt) using System; class Test { static public void Main(String[] s) { int a=0, b=1,c=2; if (a>b) && (a>c) Console.WriteLine(a+b+c); }} 05/20/21 Cấu trúc chọn lựa (tt) Lưu ý Trong C# (và C, C++, Java ) phép tốn so sánh == Ví dụ if ( a = b ) a += 2* b ; Trong C,C++ : hiệu ứng phụ Trong Java, C# : thông báo lỗi Thường hay mắc lỗi!!! 05/20/21 Cấu trúc chọn lựa (tt) using System; class Test { static public void Main(String[] s) { int a=0, b=1,c=2; if (a=b) Console.WriteLine(a+b+c); }} 05/20/21 Cấu trúc chọn lựa (tt) Lưu ý Tương tự Pascal, C/C++,Java : có lệnh cần thực → sử dụng cặp dấu { } Ví dụ if (a > b ) { c = a+ (b++); Console.WriteLine( c ) ; } 05/20/21 Cấu trúc chọn lựa (tt) Ví dụ if (a ==0 ) { if (b==0) Console.WriteLine(“VSN”); else Console.WriteLine(“VN”); } else { c=-b/a; Console.WriteLine( c ) ; } 05/20/21 Cấu trúc chọn lựa (tt) if (a ==0) if (b == 0) if (c ==0) Console.WriteLine(“VSN”); else Console.WriteLine(“VN”); else Console.WriteLine(“ x = {0} “, -c/b); else { delta = b*b - 4*a*c; if (delta ) { x1 = (-b + Math.Sqrt(delta) ) / / a ; x2 = (-b - Math.Sqrt(delta) ) / / a ; Console.WriteLine(“ x1 = {0 } , x2 = {1} “, x1,x2); } } 05/20/21 Cấu trúc chọn lựa (tt) Ví dụ cấu trúc if else lồng Một số cách sử dụng phương thức Console.WriteLine Phối hợp biểu thức dạng chuỗi Sử dụng tham số Sử dụng hàm toán học với lớp Math (tra cứu System) 05/20/21 Cấu trúc chọn lựa (tt) Cú pháp switch (biểu thức) { case : lệnh ; break; case : lệnh ; break; … default : lệnh ; break; } 05/20/21 Cấu trúc chọn lựa (tt) Các từ khóa switch, case, default, break phải viết dạng chữ thường Ý nghĩa default tương tự ý nghĩa else cấu trúc Case ngôn ngữ Pascal Với giá trị có câu lệnh cần thực → kết thúc phát biểu break Không cần cặp dấu { } 05/20/21 Cấu trúc chọn lựa (tt) switch (a%10) { case : b = a>10 ? a+1 : a-1; break; case : case : case : b= a + b; c=a-b; if ((a + b ) > 20 ) { c++; a = a + 2; } break; default : Console.WriteLine(a+b-c); break; } 05/20/21 - Liệt kê giá trị - Không cần dấu { } - Cơ chế fall through Cấu trúc chọn lựa (tt) Lưu ý Trong Pascal , ,…, : Trong C# case : case : ……………… case : 05/20/21 Cấu trúc chọn lựa (tt) case : b= a + b; c=a-b; if ((a + b ) > 20 ) { c++; a = a + 2; } // break; default : Console.WriteLine(a+b-c); break; Thường mắc sai sót có thông báo lỗi!!!! 05/20/21 Cấu trúc chọn lựa (tt) Lưu ý : Cho phép sử dụng kiểu chuỗi (String) switch (ngoài kiểu liệt kê, nguyên, ký tự, bool( Điễm mạnh!!!) using System; class Test { public static void Main() { String s = Console.ReadLine(); switch (s) { case "Thu Hai" : Console.WriteLine("Monday"); break; case "Thu Ba" : Console.WriteLine("Tuesday"); break; } } } 05/20/21 ... b; c=a-b; if ((a + b ) > 20 ) { c++; a = a + 2; } break; default : Console.WriteLine(a+b-c); break; } 05/20/21 - Liệt kê giá trị - Không cần dấu { } - Cơ chế fall through Cấu trúc chọn lựa (tt)... 05/20/21 Cấu trúc chọn lựa (tt) Ví dụ if (a ==0 ) { if (b==0) Console.WriteLine(“VSN”); else Console.WriteLine(“VN”); } else { c=-b/a; Console.WriteLine( c ) ; } 05/20/21 Cấu trúc chọn lựa (tt).. .Cấu trúc chọn lựa Cú pháp Dạng : if (điều kiện) ; Dạng : if (điều kiện) < lệnh 1> ; else < lệnh > ; 05/20/21 Cấu trúc chọn lựa (tt) Lưu ý -Từ khóa if else phải