Giới thiệu:
Cấu trúc điều khiển mạch thi hành bao gồm cấu trúc quyết định và cấu trúc lặp lại.
Cấu trúc quyết định cho phép thi hành đoạn mã cụ thể dựa trên sự có mặt hay thiếu vắng vài điều kiện xác định.
Cấu trúc lập là cấu trúc mà các lệnh trong cấu trúc này được thực hiện lập đi lậl lại trong một điều kiện nào đó.
Mục tiêu thực hiện
- Nắm được các cấu trúc điều khiển (cấu trúc lập, cấu trúc chọn lựa, cấu trúc rẽ nhánh).
- Ứng dụng vào giải quyết các bài toán có sử dụng cấu trúc điều khiển
Nội dung:
4.1 Cấu trúc điều khiển, cú pháp, các thành phần, ý nghĩa, cách thi hành. 4.2 Ứng dụng cấu trúc điều khiển vào việc giải quyết các bài toán
4.1 Cấu trúc điều khiển, cú pháp, các thành phần, ý nghĩa, cách thi hành. 4.1.1 Cấu trúc IF
If trong VB rất giống mệnh đề giả định trong Tiếng Anh
Khối lệnh If hình thành cấu trúc quyết đinh chính tring VB và hầu hết ngôn ngữ bậc cao. Dưới đây là dạng tổng quát của một mệnh đề If đơn giản.Ta gọi cấu trúc này là câu lệnh If – Then.
Ifđiều kiệnThen
Nhóm lệnh 1
Else
Nhóm lệnh 2
End If
Trong đó:
- If, Then, Else, end if là các từ khóa, các từ này do ngôn ngữ qui định nên người lập trình cần viết chính xác từ, nếu không ngôn ngữ sẽ báo lỗi.
- Điều kiện là một biểu thức logic ( thường là một phép so sách), biểu thức nay trả về 1 trong 2 giá trị, đúng (true), sai ( false)
Khi nhận được lệnh này, Visual Basic kiểm tra giá trị của biểu thức điều kiện, nếu biểu thức điều kiện có giá trị đúng thì thực hiện nhóm lệnh 1, nếu không đúng thì thực hiện nhóm lệnh 2. Ví dụ: Dim a as integer A=val(me.txtnhap.text) If a mod 2 = 0 then Me.txtxuat.text=” a là số chẵn” Else Me.txtxuat.text=” a là số lẽ” End if
Đọan code trên thực hiện các công việc sau:
- Gán giá trị của hộp nhập có tên là txtnhap cho biến 1
- Nếu a chi hết cho 2 thì hộp xuất có tên là txtxuat sẽ hiện nội dung a là số chẵn
- Nếu a không chi hết cho 2 thì hộp xuất có tên là txtxuat sẽ hiện nội dung a là số lẽ.
Lưu ý:
- Trong khi dùng biểu thức điều kiện này thì chúng ta luôn luôn nghĩ rằng điều kiện là không thể biết trước là đúng hay sai.
- Cấu trúc if có 1 trường hợp khác đó là không có Else, khi gặp cấu trúc này thì Visual Basic kiểm tra giá trị của biểu thức điều kiện, nếu biểu thức điều kiện có giá trị đúng thì thực hiện nhóm lệnh, nếu không đúng thì sẽ không thực hiện các lệnh trong cấu trúc điều kiện ( không có tính lọai trừ).
4.1.2 cấu trúc chọn lựa select case
Trong trường hợp có nhiều phương án chọn lựa, trong khi đó biểu thức điều kiện có những giá trị xác định, chúng ta sử dụng cấu trúc select case
Cú pháp
Selsect case Biểu thưc
Case giá trị 1 Nhóm lệnh 1 Case giá trị 2 Nhóm lệnh 2 Case giá trị 3 NHóm lệnh 3 . . . Case giá trị n Nhóm lệnh n
Else
NHóm lệnh n+1
End select
Trong đó Select, case, else, end select là các từ khóa: các từ do ngôn ngữ qui định. Khi gặp cấu trúc này, Visual Basic tính giá trị của biểu thức, nếu bằng trong 1 giá trị từ 1 đến n thừ thực hiện các nhóm lệnh tương ứng, nếu không bằng các giá trị trên Visual Basic sẽ thực hiện nhóm lệnh n+1.
Một trường hợp nữa khi sử dụng cấu trúc này là không có else; trong trường hợp này Visual Basic chỉ thực hiện lệnh khi bằng 1 trong những giá trị từ 1 đến n ( các giá trị từ 1 đến n không phải là các giá trị liên tục).
Ví dụ: Dim so as byte So=me.txtso.text Select Case so Case 1 Me.txtthu.text= “ Chủ nhật” Case 2
Me.txtthu.text= “ Thu Hai” Case 3 Me.txtthu.text= “ Thứ ba ” Case 4 Me.txtthu.text= “ Thứ tư” Case 5 Me.txtthu.text= “ Thứ năm” Case 6 Me.txtthu.text= “ Thứ sáu” Case 7 Me.txtthu.text= “ Thứ bảy” Else
Me.txtthu.text= “ Không phải các thứ trong tuần” End Select
Trong chương trình trên, nếu nhập một trong những giá trị từ 1 đến 7 thì Visual Basic se hiện ra ở hộp thông báo các thứ trong tuần tương ứng, nếu nhập không rơi vào các số trên thì sẽ hiện thông báo không phải các thứ trong tuần.
4.1.3 Vòng lập For
Cú pháp:
For biến= giái trị đầu to giá trị cuối step i Nhóm lệnh
Các thành phần: For, to, Step, Next là các từ khóa do ngôn ngữ qui định, nhóm lệnh là các lệnh Visual Basic chấp nhận được.
Cách thực hiện : Khi gặp cấu trúc này, Visual Basic gán giá trị đầu cho biến điều khiển sau đó thực hiện nhóm lệnh, lần thứ 2 biến điều khiển sẽ nhận giá trị kế tiếp (giá trị kế tiếp bằng giá trị đầu công thêm i) tiếp tục thực hiện nhóm lệnh, lần thứ 3 biến điều khiển củng nhận giá trị kế tiếp giá trị 2 và cũng thực hiện các lệnh, quá trình trên lập đi lập lại cho đến khi biến điều khiển nhận giá trị cuối cùng thực hiện nhóm lệnh và thóat ra khỏi vòng lập For.
Chú ý:
Trong trường hợp không có thành phần step thì bước nhảy bằng 1 đơn vị. Ví dụ: Dim I, n,s as integer N=txtnhap.text S=0 For i=1 to n S=s+i Next Txttong.text=s
Đọan chương trình trên gán giá trị hộp txtnhap cho n, sau đó tính tổng các số nguyên từ 1 đến n và xuất xa hộp txtxuat.
4.1.4. Cấu trúc lập do While loop
Cú pháp
Do While biểu thức điều kiện Nhóm lệnh
Loop
Các thành phần : Do While, loop là các từ khóa, biểu thức điều kiện là biểu thức có giá trị đúng họat sai, nhóm lệnh là các lệnh mà Visual Basic chấp nhận.
Cách thực hiện: Khi gặp cấu trúc này Visual Basic kiểm tra giá trị của biểu thức điều kiện, nếu biểu thức điều kiện có giá trị sai thì thực hiện các lệnh sau loop, nếu biểu thức điều kiện có giá trị đúng thì thực hiện nhóm lệnh, sau khi thực hiện xong sẽ qua lại kiểm tra biểu thức điều kiện, nếu đúng thì tiếp tục thực hiện nhóm lệnh, quá trình trên được thực hiện cho đến hi biểu thức điều kiện có giá trị sai.
Chú ý
Trong nhóm lệnh phải có một lệnh nào đó làm thay đổi giá trị của biểu thức điều kiện theo yêu cầu của bài tóan, nếu không nhóm lệnh sẽ thực hiện mãi mãi.
Ví dụ
Dim I,n,s as integer N=me.txtnhap.text S=0
I=1 Do while i<=n S=s+i I=i+1 Loop Me.texttong.text=s
Đọan lệnh trên sẽ tính tổng các số nguyên từ 1 đến n ; trong đọan lệnh trên lệnh i+i=1 là lệnh tăng giá trị của I, đồng thời lệnh này sẽ làm thay đổi giá trị của biểu thức điều kiện khi i>n;
Chú ý: Visual Basic còn có nhiều cấu trúc điều khiển khác, học sinh tự đọc thêm các sách tham khảo về Visual Basic.
4.2 . Một số ứng dụng
Bài 1: Viết chương trình so sánh 2 số. Bài 2 Viết Chương trình so sách 4 số
Bài 3 Viết Chương trình nhập vào 1 năm sau đó hiện thông báo năm đó có phải là năm nhuận hay không ( giả thuyết năm nhuận là năm chia hết cho 4)
Bài 4. viết chương trình nhập vào 1 số n, tính tổng các số lẽ từ 1 đến n (thực hiện bằng 2 cách: dùng For và Do while)
Bài 5 Viết chương trình hiện ra các số có 4 chữ số sao cho tổng 2 chữ số đầu bằng tổng 2 chữ số cuối. Bài 6: Viết chương trình nhập vào 1 số nguyên, hiện ra thông báo số nguyên đó có phải là số nguyên tố hay không.
BÀI TẬP GIẢI TẠI NHÀ
Bài 1: Viết Chương trình giải phương trình bậc 2.
Bài 2: Viết chương trình nhập vào 4 số, hiện ra số lớn nhất và số nhỏ nhất.
Bài 3 : Viết chương trình hiện ra tất cả các số lẽ có 3 chữa số sao cho tổng 02 chữsố đầu bằng tổng 2 chữ số cuối.
Bài 4 : Viết chương trình nhập vào số n, hiện ra tất cả các số nguyên tố tứ 1 đến n Bào 5: Viết chương trình giải bài tóan 10 trân trăm cỏ.
Bài 6: viết chương trình hiện ra tất cả các phương án để có được 100 đồng từ các đồng tiền có mệnh giá 10 đồng 20 đồng vào 50 đồng.
Bài 5 MẢNG