Bài giảng Tin học đại cương: Chương 7 - ĐH Bách Khoa

35 63 0
Bài giảng Tin học đại cương: Chương 7 - ĐH Bách Khoa

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Sau khi học xong bài giảng Tin học đại cương: Chương 7 Biểu thức VB này người học có thể hiểu về: Tổng quát về biểu thức VB, các toán tử, qui trình tính biểu thức, quyền ưu tiên của các toán tử. Mời các bạn cùng tham khảo!

MÔN TIN HỌC Chương BIỂU THỨC VB 7.1 Tổng quát biểu thức VB 7.2 Các toán tử 7.3 Qui trình tính biểu thức 7.4 Quyền ưu tiên tốn tử Khoa Cơng nghệ Thơng tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 174 7.1 Tổng quát biểu thức VB Ta biết tốn học cơng thức phương tiện miêu tả qui trình tính tốn số Trong VB (hay ngơn ngữ lập trình khác), ta dùng biểu thức để miêu tả qui trình tính tốn liệu ⇒ biểu thức giống cơng thức tốn học, tổng quát (xử lý nhiều loại liệu khác nhau) phải tuân theo qui tắc cấu tạo khắt khe cơng thức tốn học Để hiểu biểu thức, ta cần hiểu thành phần nó: Các tốn hạng: biến, liệu, Các toán tử tham gia biểu thức: +,-,*,/, Qui tắc kết hợp toán tử toán hạng để tạo biểu thức Qui trình mà máy dùng để tính trị biểu thức Kiểu biểu thức kiểu kết tính tốn biểu thức Khoa Cơng nghệ Thơng tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 175 Các biểu thức Biểu thức phần tử nhỏ cấu thành biểu thức Một phần tử sau gọi biểu thức bản: Biến, Hằng gợi nhớ, Giá trị liệu cụ thể thuộc kiểu (nguyên, thực, ) Lời gọi hàm, biểu thức đóng dấu () Qui trình tạo biểu thức qui trình đệ qui: ta kết hợp tốn tử với tốn hạng nó, tốn hạng biểu thức biểu thức sẵn có (đã xây dựng trước nên đóng dấu () để biến trở thành biểu thức bản) Khoa Cơng nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 176 7.2 Các tốn tử Dựa theo số tốn hạng tham gia, có loại toán tử thường dùng nhất: Toán tử ngơi: cần tốn hạng Ví dụ tốn tử '-' để tính phần âm đại lượng Tốn tử ngơi: cần dùng tốn hạng Ví dụ tốn tử '*' để tính tích đại lượng VB thường dùng ký tự đặc biệt để miêu tả tốn tử Ví dụ: Tốn tử '+': cộng đại lượng Toán tử '-': trừ đại lượng khỏi đại lượng Toán tử '*': nhân đại lượng Toán tử '/': chia đại lượng cho đại lượng Trong vài trường hợp, VB dùng ký tự đặc biệt để miêu tả nhiều toán tử khác Trong trường hợp này, ngữ cảnh dùng để giải nhằm lẫn Ngữ cảnh thường kiểu toán hạng tham gia thiếu tốn hạng tốn tử hiểu tốn tử Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 177 Các toán tử (tt) Dựa theo độ ưu tiên tốn tử qui trình tính tốn biểu thức, có loại tốn tử: Tốn tử số học: có độ ưu tiên cao qui trình tính tốn biểu thức Tốn tử so sánh: có độ ưu tiên Toán tử luận lý bitwise: có độ ưu tiên thấp Trong slide sau, trình bày chi tiết tốn tử VB thuộc loại Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 178 Các toán tử số học Tùy thuộc kiểu toán hạng tham gia mà ta phép dùng toán tử chúng ⇒ số lượng tốn tử có giá trị kiểu liệu khác ⇒ phải học nhớ từ từ Dữ liệu số loại liệu thường xử lý ứng dụng (may mắn cho ta quen với toán học) Các toán tử liệu số là: Toán tử '&': nối kết chuỗi thành chuỗi Toán tử '+': cộng đại lượng Toán tử '-': trừ đại lượng khỏi đại lượng Toán tử '*': nhân đại lượng Toán tử '/': chia đại lượng cho đại lượng Toán tử '\': chia nguyên Toán tử Mod: lấy phần dư phép chia ngun Tốn tử '^': lũy thừa Khoa Cơng nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 179 Toán tử '&' để nối kết chuỗi Cú pháp: expr1 & expr2 (→ kết quả) Nối kết toán hạng kiểu chuỗi thành chuỗi mới, toán hạng thuộc kiểu số đổi thành dạng chuỗi trước thực nối kết Ví dụ: Dim MyStr As String MyStr = "Hello" & " World" ' kết "Hello World" MyStr = "Check " & 123 & " Check" ' kq "Check 123 Check" Lưu ý nên có ký tự trống chuỗi cho nối kết chuỗi kết dễ đọc Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 180 Toán tử '+' liệu số Cú pháp: expr1 + expr2 (→ kết quả) + expr1 Nếu tốn hạng số kiểu kết kiểu xác phép + theo thứ tự sau: Byte, Integer, Long, Single, Double, Currency, Decimal với ngoại lệ sau: Nếu kết là: toán hạng Single,1 toán hạng Long Double kết kiểu Variant chứa giá trị Single, Long, Date bị tràn Variant chứa Double kết kiểu Variant chứa giá trị Byte bị tràn Variant chứa Integer kết kiểu Variant chứa giá trị Integer bị tràn Variant chứa Long toán hạng Date,1 toán hạng kiểu khác Date Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 181 Toán tử '+' liệu số (tt) Nếu kiểu tốn hạng Variant việc xác định ngữ nghĩa phép + kiểu kết theo qui luật bảng sau: Nếu thì: toán hạng Variant chứa số Cộng toán hạng Variant chứa chuỗi Nối kết chuỗi Variant chứa số, Variant chứa chuỗi Cộng Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 182 Toán tử '+' liệu số (tt) Nếu tốn hạng khơng phải Variant việc xác định ngữ nghĩa phép + kiểu kết theo qui luật bảng sau: Nếu thì: toán hạng liệu số Cộng toán hạng chuỗi Nối kết chuỗi số, Variant giá trị khác Null Cộng chuỗi, Variant giá trị khác Null Nối kết chuỗi biểu thức Variant chứa Empty kết tốn hạng lại số chuỗi A Type mismatch error toán hạng Null kết Null Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 183 Các toán tử luận lý Các toán tử luận lý cho phép thực hành vi luận lý hay toán hạng thuộc kiểu luận lý kết giá trị luận lý Các toán tử luận lý là: toán tử And: phép toán 'và' toán tử Or: phép toán 'hoặc' toán tử Xor: phép toán loại trừ toán tử Not: phép toán đảo toán tử Eqv: phép toán tương đương toán tử Imp: phép toán kéo theo Nếu toán hạng số phép tốn thực hành vi chúng cặp bit tương ứng tốn hạng (sẽ giải thích cụ thể sau) Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 194 Toán tử luận lý And Cú pháp: expr1 And expr2 (→ kết quả) kết xác định theo bảng sau: Ghi chú: o kết True toán hạng True o Kết False có tốn hạng False Khoa Cơng nghệ Thơng tin Trường ĐH Bách Khoa Tp.HCM expr1 expr2 kết True True True True False False True Null Null False True False False False False False Null False Null True Null Null False False Null Null Null Môn: Tin học Chương 7: Biểu thức VB Slide 195 Toán tử bitwise And Cú pháp: expr1 And expr2 (→ kết quả) toán hạng thuộc kiểu số toán tử And thực hành vi cặp bit tương ứng toán hạng, kết cặp bit xác định theo bảng sau: biti of expr1 biti of expr2 kết 1 1 0 0 0 Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 196 Toán tử luận lý Or Cú pháp: expr1 Or expr2 (→ kết quả) kết xác định theo bảng sau: Ghi chú: o kết True có tốn hạng True o Kết False toán hạng False Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM expr1 expr2 kết True True True True False True True Null True False True True False False False False Null Null Null True True Null False Null Null Null Null Môn: Tin học Chương 7: Biểu thức VB Slide 197 Toán tử bitwise Or Cú pháp: expr1 Or expr2 (→ kết quả) toán hạng thuộc kiểu số toán tử Or thực hành vi cặp bit tương ứng toán hạng, kết cặp bit xác định theo bảng sau: biti of expr1 biti of expr2 kết 1 1 1 0 Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 198 Toán tử luận lý Xor Cú pháp: expr1 Xor expr2 (→ kết quả) kết xác định theo bảng sau: Ghi chú: o Nếu có tốn hạng Null kết Null o Kết True toán hạng khác khác Null o Kết False toán hạng giống khác Null Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM expr1 expr2 kết True True False True False True True Null Null False True True False False False False Null Null Null True Null Null False Null Null Null Null Môn: Tin học Chương 7: Biểu thức VB Slide 199 Toán tử bitwise Xor Cú pháp: expr1 Xor expr2 (→ kết quả) toán hạng thuộc kiểu số toán tử Xor thực hành vi cặp bit tương ứng toán hạng, kết cặp bit xác định theo bảng sau: biti of expr1 biti of expr2 kết 1 1 1 0 Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 200 Toán tử luận lý Eqv Cú pháp: expr1 Eqv expr2 (→ kết quả) kết xác định theo bảng sau: Ghi chú: o Nếu có tốn hạng Null kết Null o Kết True toán hạng giống khác Null o Kết False toán hạng khác khác Null Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM expr1 expr2 kết True True True True False False True Null Null False True False False False True False Null Null Null True Null Null False Null Null Null Null Môn: Tin học Chương 7: Biểu thức VB Slide 201 Toán tử bitwise Eqv Cú pháp: expr1 Eqv expr2 (→ kết quả) toán hạng thuộc kiểu số toán tử Eqv thực hành vi cặp bit tương ứng toán hạng, kết cặp bit xác định theo bảng sau: biti of expr1 biti of expr2 kết 1 1 0 0 Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 202 Toán tử luận lý Imp Cú pháp: expr1 Imp expr2 (→ kết quả) kết xác định theo bảng sau: Ghi chú: o Nếu tốn hạng False kết True o Kết True tốn hạng True Khoa Cơng nghệ Thơng tin Trường ĐH Bách Khoa Tp.HCM expr1 expr2 kết True True True True False False True Null Null False True True False False True False Null True Null True True Null False Null Null Null Null Môn: Tin học Chương 7: Biểu thức VB Slide 203 Toán tử bitwise Imp Cú pháp: expr1 Imp expr2 (→ kết quả) toán hạng thuộc kiểu số toán tử Imp thực hành vi cặp bit tương ứng toán hạng, kết cặp bit xác định theo bảng sau: biti of expr1 biti of expr2 kết 1 1 0 1 0 Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 204 Toán tử luận lý bitwise Not Cú pháp: Not expr (→ kết quả) kết biểu thức theo bảng sau: expr kết True False biti of expr kết False True Null Null Cú pháp: Not expr (→ kết quả) toán hạng thuộc kiểu số toán tử Not thực hành vi bit tương ứng toán hạng, kết bit xác định theo bảng trên: Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 205 7.3 Qui trình tính biểu thức Nếu biểu thức xây dựng biểu thức qui trình tính biểu thức qui trình xây dựng biểu thức Nếu biểu thức xây dựng biểu thức qui trình tính tốn sau: tính từ trái sang phải, lần gặp toán tử (ký hiệu CurrentOp) phải nhìn trước tốn tử sau (SussesorOp), so sánh độ ưu tiên tốn tử định sau: khơng có SussesorOp tính tốn tử CurrentOp (trên hay tốn hạng nó) tốn tử CurrentOp có độ ưu tiên cao hay tốn tử SussesorOp tính tốn tử CurrentOp (trên hay tốn hạng nó) tốn tử CurrentOp có độ ưu tiên thấp SussesorOp cố gắng thực toán tử SussesorOp trước Việc cố gắng bị tạm hoản tốn tử sau tốn tử SussesorOp có độ ưu tiên cao SussesorOp, Khi tốn tử SussesorOp thực xong toán tử sau SussesorOp trở thành toán tử sau CurrentOp ⇒ việc kiểm tra xem Môn: Tin học CurrentOp có thực khơng lặp lại Khoa Công nghệ Thông tin Chương 7: Biểu thức VB Trường ĐH Bách Khoa Tp.HCM Slide 206 7.4 Thứ tự ưu tiên cụ thể toán tử Các tốn tử số học có độ ưu tiên cao nhất, tới toán tử so sánh sau toán tử luận lý: Giữa toán tử số học, quyền ưu tiên từ cao xuống thấp theo tứ tự từ xuống bảng sau Các toán tử so sánh có thứ tự ưu tiên Giữa toán tử luận lý, quyền ưu tiên từ cao xuống thấp theo tứ tự từ xuống bảng sau Arithmetic Comparison Logical 1.Exponentiation (^) 2.Negation (–) 3.Multiplication and division (*, /) 4.Integer division (\) 5.Modulus arithmetic (Mod) 6.Addition and subtraction (+, –) 7.String concatenation (&) Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM 8.Equality (=) 8.Inequality () 8.Less than () 8.Less than or equal to (=) 8.Like, Is Not 10.And 11.Or 12.Xor 13.Eqv 14.Imp Môn: Tin học Chương 7: Biểu thức VB Slide 207 Thí dụ qui trình tính biểu thức Thí dụ sau biểu thức tính giá trị phần tử Display chương trình MiniCalculator trường hợp người dùng nhập thêm ký số phần lẻ, đó: dblDispValue biến chứa trị Display intNegative biến miêu tả dấu trị Display (1: dương, -1: âm) d biến chứa ký số nhập bytPosDigit biến miêu tả vị trí ký số vừa nhập bên phải dấu '.' dblDispValue = dblDispValue + intNegative * d * (10 ^ -bytPosDigit) Ghi chú: theo thứ tự, tốn tử lũy thừa tính trước tốn tử -, để tính luỹ thừa, ta buộc phải xác định toán hạng sau tốn tử - phải tính trước trường hợp Khoa Cơng nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 208 ... Variant chứa trị Double Ví dụ: (-5 ) ^ → kết -1 25.0 3^3^3 → kết 19683.0 3.2 ^ 2 .7 → kết 23.1155 877 99 Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 188... hạng Null kết Null Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 183 Toán tử '-' liệu số Cú pháp: expr1 - expr2 (→ kết quả) - expr1 Kiểu kết thường... nên đóng dấu () để biến trở thành biểu thức bản) Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM Môn: Tin học Chương 7: Biểu thức VB Slide 176 7. 2 Các toán tử Dựa theo số tốn hạng tham gia,

Ngày đăng: 30/01/2020, 13:49

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan