Bài 3
Các phép toán và các câu lệnh
điều khiển
Ôn tập lại bài cũ
• Biến và qui tắc đặt tên biến
• Kiểu dữ liệu trong C#
• Hằng số
• Nhập/Xuất dữ liệu trong C#
• Định dạng xuất dữ liệu
Các phép toán và các câu lệnh
Nội dung trình bày
• Biểu thức
• Các phép toán
• Ép kiểu (Type casting)
• Boxing and Unboxing
(cid:0) Câu lện if
(cid:0) Câu lệnh switch
• Câu lệnh rẽ nhánh
(cid:0) Câu lệnh for
(cid:0) Câu lệnh while
(cid:0) Câu lệnh do while
Subject name / Session# / 3 of Totalpage
• Câu lệnh lặp
Các phép toán và các câu lệnh
Nội dung trình bày(tiếp)
(cid:0) break
• Câu lệnh nhảy
(cid:0) goto
(cid:0) continue
(cid:0) return
Các phép toán và các câu lệnh
Biểu thức:
ự ế ợ ạ
S k t h p gi a toán h ng và toán t ử ữ
Toán tử
Ví du: 2 * y + 5
Toán h ngạ
Các phép toán và các câu lệnh
Các phép toán
• Các phép toán số học
• Các phép toán quan hệ
• Các phép toán logic
• Các phép toán tăng giảm
• Phép gán
• Phép toán 3 ngôi
• Phép toán dịch bit(shift operator)
Các phép toán và các câu lệnh
Các phép toán số học
• Gồm có:+, -, *, /, %
• Kết quả trả về của các phép toán số học là một con số
Các phép toán và các câu lệnh
Các phép toán quan hệ
• == (bằng)
• != (khác)
• >(lớn hơn)
• <(nhỏ hơn)
• <= (nhỏ hơn hoặc bằng)
• >=(lớn hơn hoặc bằng)
• Kết quả trả về của các phép toán quan hệ là 1 giá trị logic đúng
hoặc sai(true hoặc false)
• Ví dụ: if(a != 0) …
if (a ==0)
Các phép toán và các câu lệnh
Các phép toán logic
• &&(Phép toán AND)
• || (Phép toán OR)
• ! (Phép toán NOT)
• Các phép toán logic dùng để thao tác với các giá trị logic. Kết quả
trả về là một giá trị logic
• Ví dụ: if (a > 10 && a < 100) …
if (a <10 || a > 100) …
Các phép toán và các câu lệnh
Các phép toán tăng giảm
• ++ : tăng lên 1 đơn vị
• -- : giảm đi một đơn vị
• Nếu phép toán(tăng/giảm) đặt bên phải một biến thì giá trị của được
tăng/giảm trước khi thực hiện phép toán của biểu thức
• Nếu phép toán(tăng/giảm) đặt bên trái một biến thì giá trị của biến
được tăng/giảm sau khi thực hiện các phép toán của biểu thức
• Ví dụ minh họa
Các phép toán và các câu lệnh
Phép toán gán
• Ký hiệu: =
• Dùng để gán giá trị của biểu thức bên phải cho biến bên trái
• Ví dụ: delta = (b*b-4*a*c);
• Phép toán gán rút gọn:
• Ví dụ a = a + 1 tương đương với a += 1
• Ví dụ: a = a – 1 tương đương a -= 1
• Ví dụ: a = a * b tương đương a *= b
• Ví dụ: a = a/b tương đương a /=b
Các phép toán và các câu lệnh
Phép toán 3 ngôi
• Cú pháp: Value = ( biểu thức logic) ? Value1 : Value2;
• Ví dụ: String z = (x > y)? “Male”: “Female”
• Ví dụ: int z = (x>y)?x:y;
• Ví dụ min họa phép toán 3 ngôi
Các phép toán và các câu lệnh
Phép toán dịch bit
• Dịch 1 số bit sang trái hoặc sang phải
• Phép toán dịch trái: <<
• Phép toán dịch phải: >>
• ví dụ:
• int x = 10>>2 (kết quả x bằng 2)
• int x = 10 << 2 (kết quả x bằng 40)
• Ví dụ minh họa phép toán dịch bit
Các phép toán và các câu lệnh
Ép kiểu (type casting):
• Dùng để chuyển từ kiểu dữ liệu này sang kiểu dữ liệu khác
(cid:0) Ép kiểu ngầm định (Implicit casting)
(cid:0) Ép kiểu tường mình (Explicit casting)
• Có 2 kiểu ép kiểu:
Các phép toán và các câu lệnh
Ép kiểu ngầm định:
• Được thực hiện bởi trình biên dịch, theo nguyên tắc: kiểu dữ liệu có
kích thước bé lên kiểu dữ liệu có kích thước lớn hơn
Các phép toán và các câu lệnh
Ép kiểu tường minh (Explicit casting)
• Người viết chương trình thực hiện
(cid:0) Dùng lớp Convert
(cid:0) Dùng phương thức ToString()
• 2 các khác dùng để chuyển đổi kiểu dữ liệu là:
• Ví dụ minh họa ép kiểu
Các phép toán và các câu lệnh
Boxing and Unboxing
• Boxing: là việc chuyển từ kiểu giá trị sang kiểu tham chiếu
• Unboxing: chuyển từ kiểu tham chiếu sang kiểu giá trị
• Ví dụ minh họa về Boxing và Unboxing
Các phép toán và các câu lệnh
Câu lệnh rẽ nhánh
• Câu lênh if
• Dạng 1: if (biểu thức logic)
câu lệnh
Ví dụ câu lệnh if dạng 1
• Dạng 2: if (biểu thức logic)
câu lệnh 1
else
câu lệnh 2
Ví dụ câu lệnh if dạng 2
Các phép toán và các câu lệnh
• Dạng 3: if (biểu thức logic 1)
Câu lệnh 1
else if (biểu thức logic 2)
Câu lệnh 2
else if (biểu thức logic 3)
Câu lênh 3
…
else
Câu lệnh
Ví dụ câu lệnh if dạng 3
Các phép toán và các câu lệnh
Câu lệnh switch
Cú pháp
switch(biểu thức)
{
case hằng số 1: câu lệnh; break;
case hằng số 2: câu lệnh; break;
…
default: câu lệnh; break;
}
Ví dụ câu lệnh switch
Các phép toán và các câu lệnh
Câu lệnh lặp
• Vòng lặp for
• Cú pháp: for(biểu thức 1; biểu thức 2 ; biểu thức 3)
Biểu thức 1: khởi tạo biến đếm
Biểu thức 2: kiểm tra điều kiện thóat khỏi vòng lặp
Biểu thức 3: tăng/giảm giá trị biến đếm
câu lệnh
Ví dụ về câu lệnh for và cách thức thực hiện
Các phép toán và các câu lệnh
Câu lệnh lặp
• Vòng lặp while
• Cú pháp:
while(điều kiện)
câu lệnh;
(cid:0) Kiểm tra điều kiện, nếu điều kiện đúng thì thực hiện câu lệnh,
• Cách thức thực hiện của vòng lặp while
nếu điều sai thì thóat khỏi vòng lặp
Ví dụ vòng lặp while
Các phép toán và các câu lệnh
Câu lênh lặp
• Vòng lặp do while
• Cú pháp:
do
câu lệnh
while(điều kiện);
• Các thức thực hiện: thực hiện câu lệnh sau đó mới kiểm tra điều
kiện như vậy câu lệnh được thực hiện ít nhất 1 lần
Ví dụ vòng lặp do while
Các phép toán và các câu lệnh
Câu lệnh nhảy
(cid:0) Dùng để thóat ra khỏi vòng for
(cid:0) Dùng với câu lệnh switch
• Câu lệnh break
Ví dụ câu lệnh break;
Các phép toán và các câu lệnh
Câu lệnh nhảy
• Câu lệnh continue
• Nằm trong vòng lặp
• Bỏ qua các câu lệnh sau continue và thực hiện lần lặp tiếp theo
Ví dụ lệnh continue
Các phép toán và các câu lệnh
Lệnh nhảy:
• Lệnh goto
• Cú pháp: goto label;
• Bỏ qua một số câu lênh để thực hiện câu lệnh khác
• Phá bỏ tính chất thực hiện tuần tự của chương trình, do đó không
nên dùng
• Ví dụ câu lệnh goto
Các phép toán và các câu lệnh
Câu lệnh nhảy
• Câu lệnh return:
• Cú pháp: return(biểu thức)
• Dùng trong phương thức
• Trả giá trị của biểu thức cho phương thức
Các phép toán và các câu lệnh
Tổng kết
• Các phép tóan: số học, quan hệ, logic, gán, dịch bit, ép kiểu
• Câu lênh rẽ nhánh
(cid:0) if
(cid:0) switch
• Câu lênh lặp
(cid:0) do while
(cid:0) while
(cid:0) for
• Câu lện nhảy: break,continue,goto,return