Bài giảng Tích hợp hệ thống - Chương 4. Các cấu trúc điều kiện (conditional logic) - Phan Trọng Tiến
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Tích hợp hệ thống - Chương 4. Các cấu trúc điều kiện (conditional logic) - Phan Trọng Tiến", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_tich_hop_he_thong_chuong_4_cac_cau_truc_dieu_kien.ppt
Nội dung text: Bài giảng Tích hợp hệ thống - Chương 4. Các cấu trúc điều kiện (conditional logic) - Phan Trọng Tiến
- Chương 4. Các cấu trúc điều kiện (conditional logic) Phan Trọng Tiến Department of Software Engineerng Hanoi University of Agricaltural Office location: 3rd floor, Administrative building Office phone: 8276346, Ext: 132 Email:phantien84@gmail.com
- Nội dung chính Các cấu trúc quyết định(Decision Structures) ◼ Câu lệnh If Then Else ◼ Câu lệnh Select Case Các cấu trúc vòng lặp (Loop Structures) ◼ Câu lệnh While End While ◼ Câu lệnh Do Loop ◼ Câu lệnh For Next ◼ Câu lệnh For Each Next
- Cấu lệnh If Then Else Thực hiện một hoặc nhiều câu lệnh trên một điều kiện. Cú pháp 1: If ĐiềuKiện Then Các_Câu_Lệnh [Else Các_Câu_Lệnh] End If Nếu ĐiềuKiện = True thì các câu lệnh sau Then được thực hiện, = False thì các câu lệnh sau Else được thực hiện. Else là một tuỳ chọn và có thể bỏ qua. End If đánh dấu kết thúc câu lệnh
- Ví dụ If QtyOrdered>20 Then CreditPoints=25 Else CreditPoints=10 End If MessageBox.Show ( “Tiền phải trả: " & CreditPoints) ? Nếu có hơn hai điều kiện
- Cú pháp 2 If ĐiềuKiện1 Then CácCâuLệnh1 [ElseIf ĐiềuKiện2 Then CácCâuLệnh2] End If ◼ Nếu ĐiềuKiện1 = True thì CácCâuLênh1 được thực hiện. Nếu = False thì ĐiềuKiện2 được kiểm tra, Nếu ĐiềuKiện2 = True thì CácCâuLệnh2 được thực hiện ◼ Vậy các câu lệnh If Then Else có thể lồng nhau?
- Xem ví dụ If QtyOrdered > 20 Then CreditPoints = 25 ElseIf QtyOrdered > 10 Then ‘Lồng nhau If Then Else statement If QtyOrdered <= 20 Then CreditPoints = 15 End If Else CreditPoints = 10 End If
- Câu lệnh Select Case Cú pháp Select Case BiểuThức Case DanhSáchGiáTrị CácCâuLệnh [Case Else CácCâuLệnh] End Select Hoạt động: BiểuThức sẽ được tính toán và kết quả nếu khớp với các hằng hoặc các biểu thức trong DanhSáchGiáTrị của câu lệnh Case thì CácCâuLệnh sau nó được thực hiện. Nếu không khớp với bất kỳ DanhSáchGiáTrị thì CácCâuLệnh sau Case Else sẽ thực hiện.
- Câu lệnh Select Case Cho phép thực thi các câu lệnh trên cơ sở kết quả của biểu thức. Câu lệnh IF Then khác câu lệnh Select Case ◼ IF Then tính toán giá trị biểu thức trong mỗi câu lệnh, Select Case chỉ tính toán một biểu thức. ◼ Biểu thức trong câu lệnh Select Case không trả về giá trị kiểu Boolean.
- Ví dụ 1 Select Case WeekNumber Case 1 MessageBox.Show("Monday") Case 2 MessageBox.Show("Tuesday") Case 3 MessageBox.Show("Wednesday") Case 4 MessageBox.Show("Thursday") Case 5 MessageBox.Show("Friday") Case 6 MessageBox.Show("Saturday") Case 7 MessageBox.Show("Sunday") Case Else MessageBox.Show("Number not in the range ") End Select
- Ví dụ 2 – Dùng từ khóa Is Select Case QtyOrdered Case Is 20 CreditPoints = 25 Case Is <= 20 CreditPoints = 15 Case Else MessageBox.Show(“Không hợp lệ”) End Select
- Ví dụ 3 – Dùng từ khóa To Select Case QtyOrdered Case 1 To 10 CreditPoints = 10 Case 11 to 20 CreditPoints = 15 Case Is > 20 CreditPoints = 25 Case Else MessageBox.Show(“Không hợp lệ") End Select
- Ví dụ 4 – Nhiều hơn 1 giá trị ở Case Select Case Number Case 2, 4, 6, 8,10 MessageBox.Show("Even number") Case 1,3,5,7,9 MessageBox.Show("Odd number") Case Else MessageBox.Show("Number out of range ") End Select
- Các cấu trúc vòng lặp(Loop Structures ) Câu lệnh While End While Câu lệnh Do Loop Câu lệnh For Next Câu lệnh For Each Next
- Câu lệnh While End While Dùng để lặp đi lặp lại công việc khi ĐiềuKiện là True. Cú pháp: While ĐiềuKiện CácCâuLệnh [Exit While] End While ĐiềuKiện là một biểu thức sẽ được tính toán tại đầu vòng lặp. Nó trả về True hoặc False. Nếu trả về True thì CácCâuLệnh được thực hiện. End While đánh dấu kết thúc vòng lặp. Exit While là một tùy chọn, được dùng để kết thúc vòng lặp
- Ví dụ Dim Counter As Integer=1 While Counter <= 5 MessageBox.Show("Value is: " & Counter) Counter =Counter + 1 End While
- Câu lệnh Do Loop Có hai loại: ◼ Cú pháp kiểm tra điều kiện trước Do While | Until Loop ◼ Cú pháp kiểu tra điều kiện sau Do Loop While | Until
- Cú pháp kiểm tra điều kiện trước Cú pháp: Do While|Until ĐiềuKiện CácCâuLệnh [Exit Do] Loop Từ khóa While -> Lặp khi ĐiềuKiện = True Từ khóa Until -> Lặp khi ĐiềuKiện = False
- Ví dụ Dim Counter As Integer = 1 Do While Counter <= 5 MessageBox.Show("Value is :" & Counter) Counter=Counter + 1 Loop
- Kiểm tra điều kiện sau Cú pháp: Do CácCâuLệnh [Exit Do] Loop While|Until ĐiềuKiện Ví dụ Dim Counter As Integer = 1 Do MessageBox.Show("Value is: " & Counter) Counter=Counter + 1 Loop While Counter<=5
- Chú ý Trên là các vòng lặp không xác định số lần lặp. Vì vậy cần phải đảm bảo điều kiện dừng cho vòng lặp -> tránh cho chương trình bị treo. Ví dụ Dim Counter As Integer = 1 Do While Counter<=5 MessageBox.Show("Value is: " & Counter) Counter = Counter -1 Loop
- Câu lệnh For Next Dùng cho trường hợp biết trước số lần lặp. Câu lệnh: For Counter = To [Step value] Statement(s) [Exit For] Next [Counter]
- Câu lệnh For Next (tiếp) Counter là biến kiểu số Startvalue là giá trị khởi tạo của Counter. Endvalue là giá trị cuối của Counter. Stepvalue là giá trị mà Couter tăng lên. Là một giá trị tùy chọn. Không chỉ định thì mặc định giá trị là 1. Next đánh dấu kết thúc vòng lặp
- Ví dụ Dim Counter As Integer For Counter = 1 to 5 MessageBox.Show("Value is:" & Counter) Next Counter Tránh thay đổi biến chạy trong vòng For để tránh gặp lỗi hoặc kết quả tính toán không đúng.
- Câu lệnh For Each Next Dùng để thực hiện các câu lệnh cho mỗi phần tử trong mảng hoặc một tập hợp Cú pháp For Each Item in List Statement(s) [Exit For] Next [Item]
- Ví dụ 1 Dim BooksArray() As String = {"VB.NET","ADO.NET","VC++.NET" ,"ASP.NET"} Dim BookName As String For Each BookName in BooksArray MessageBox.Show(BookName) ‘Hiển thị tên các quyển sách Next
- Ví dụ 2 Dim ConObject As Control 'Declares an instance of the Control class For Each ConObject In Controls 'Starts the For Each loop to process each control in the ‘Controls colection If TypeOf(ConObject) Is TextBox Then 'Checks for the type of control using the TypeOf Is ‘operator If ConObject.Text = "" Then 'Checks for the blankness of the TextBox control MessageBox.Show(ConObject.Name + " Cannot be left blank.") 'Displays a message box containing the control name and ‘the text "Cannot be left blank" End If End If Next