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