45
BÀI 5: CÁC LỆNH LẶP

BÀI 5: Các lệnh lặp - Giáo trình FPT

Embed Size (px)

DESCRIPTION

Biết cách sử dụng các lệnh lặp khác nhau Biết cách sử dụng các điều khiển ListBox, NumericUpDown, TextBox nhiều dòng Biết cách chuyển điều khiển Biết cách vô hiệu hóa và kích hoạt điều khiển Biết cách sử dụng đối tượng String Biết cách sử dụng các lệnh lặp khác nhau Biết cách sử dụng các điều khiển ListBox, NumericUpDown, TextBox nhiều dòng Biết cách chuyển điều khiển Biết cách vô hiệu hóa và kích hoạt điều khiển Biết cách sử dụng đối tượng String

Citation preview

Page 1: BÀI 5: Các lệnh lặp - Giáo trình FPT

BÀI 5:CÁC LỆNH LẶP

Page 2: BÀI 5: Các lệnh lặp - Giáo trình FPT

Sử dụng CheckBox và hộp thoạiToán tử logic và sử dụng toán tử logic để kết hợp nhiềuđiều kiện đơnTổ chức mã trong Visual BasicSử dụng lệnh đa lựa chọn Select CaseQuy trình phát triển ứng dụng

Hệ thống bài cũ

Sử dụng CheckBox và hộp thoạiToán tử logic và sử dụng toán tử logic để kết hợp nhiềuđiều kiện đơnTổ chức mã trong Visual BasicSử dụng lệnh đa lựa chọn Select CaseQuy trình phát triển ứng dụng

Các lệnh lặp 2

Page 3: BÀI 5: Các lệnh lặp - Giáo trình FPT

Mục tiêu bài học

Biết cách sử dụng các lệnh lặp khác nhauBiết cách sử dụng các điều khiển ListBox,NumericUpDown, TextBox nhiều dòngBiết cách chuyển điều khiểnBiết cách vô hiệu hóa và kích hoạt điều khiểnBiết cách sử dụng đối tượng String

Biết cách sử dụng các lệnh lặp khác nhauBiết cách sử dụng các điều khiển ListBox,NumericUpDown, TextBox nhiều dòngBiết cách chuyển điều khiểnBiết cách vô hiệu hóa và kích hoạt điều khiểnBiết cách sử dụng đối tượng String

Các lệnh lặp 3

Page 4: BÀI 5: Các lệnh lặp - Giáo trình FPT

Lệnh lặp Do While …Loop

Bài toán đi mua hàngMột người đi đến cửa hàng tạp hóa với một danh sách cácmặt hàng cần mua, người đó mua lần lượt từng mặt hàngtheo danh sách cho đến khi có tất cả các mặt hàng cần mua

Thực hiện các hành động sau, khi vẫn còn mặt hàng trong danhsách mặt hàng cần mua

Đặt mặt hàng tiếp theo vào xe đẩyGạch chéo tên mặt hàng này trong danh sách cần mua

Các lệnh lặp 4

Thực hiện các hành động sau, khi vẫn còn mặt hàng trong danhsách mặt hàng cần mua

Đặt mặt hàng tiếp theo vào xe đẩyGạch chéo tên mặt hàng này trong danh sách cần mua

Page 5: BÀI 5: Các lệnh lặp - Giáo trình FPT

Thực thi lệnh lặp Do While…Loop

Bài toán: Tìm số chẵn đầu tiền lớn hơn 5

Khai báo biến x và gán cho biến này giá trị là 2.Ứng dụng chuyển đến thực hiện lệnh lặp Do While…Loop.Đầu tiên, ứng dụng kiểm tra điều kiện tiếp tục vòng lặp, điều kiện này cógiá trị là True nên ứng dụng tiếp tục thực thi lệnh trong thân vòng lặp.Sau thực thi thân vòng lặp, x có giá trị là 4.Ứng dụng kiểm tra điều kiện tiếp tục vòng lặp. Điều kiện này có giá trịTrue, ứng dụng tiếp tục thực thi lệnh trong thân vòng lặp.Sau khi thực thi thân vòng lặp, x có giá trị là 6.Ứng dụng kiểm tra điều kiện tiếp tục vòng lặp. Điều kiện này bây giờ cógiá trị False (vì 6 lớn hơn 5). Ứng dụng kết thúc thực thi vòng lặp.

Dim x As Integer = 2

Do While x <= 5

x += 2

Loop

Điều kiện tiếp tụcvòng lặp

Bài toán: Tìm số chẵn đầu tiền lớn hơn 5

Khai báo biến x và gán cho biến này giá trị là 2.Ứng dụng chuyển đến thực hiện lệnh lặp Do While…Loop.Đầu tiên, ứng dụng kiểm tra điều kiện tiếp tục vòng lặp, điều kiện này cógiá trị là True nên ứng dụng tiếp tục thực thi lệnh trong thân vòng lặp.Sau thực thi thân vòng lặp, x có giá trị là 4.Ứng dụng kiểm tra điều kiện tiếp tục vòng lặp. Điều kiện này có giá trịTrue, ứng dụng tiếp tục thực thi lệnh trong thân vòng lặp.Sau khi thực thi thân vòng lặp, x có giá trị là 6.Ứng dụng kiểm tra điều kiện tiếp tục vòng lặp. Điều kiện này bây giờ cógiá trị False (vì 6 lớn hơn 5). Ứng dụng kết thúc thực thi vòng lặp.

Các lệnh lặp 5

Page 6: BÀI 5: Các lệnh lặp - Giáo trình FPT

Biểu đồ hoạt động của Do While…Loop

Cộng x với 2[x <= 5]

Các lệnh lặp 6

Cộng x với 2

[x > 5]

[x <= 5]

Câu lệnh Visual Basic tương ứng là:x += 2

Page 7: BÀI 5: Các lệnh lặp - Giáo trình FPT

Lệnh lặp Do Until…Loop

Cách tiếp cận khác của bài toán đi mua hàngThực hiện các hành động sau, khi vẫn còn mặt hàng trong danhsách mặt hàng cần mua

Đặt mặt hàng tiếp theo vào xe đẩyGạch chéo tên mặt hàng này trong danh sách mua hàng

Các lệnh lặp 7

Thực hiện các hành động sau, cho đến tận khi không còn mặthàng nào trong danh sách cần mua sắm

Đặt mặt hàng tiếp theo vào xe đẩyGạch chéo tên mặt hàng này trong danh sách mua hàng

Page 8: BÀI 5: Các lệnh lặp - Giáo trình FPT

Thực thi lệnh lặp Do Until…Loop

Bài toán: Tìm số chẵn đầu tiền lớn hơn 5

Khai báo biến x và gán cho biến này giá trị là 2Ứng dụng chuyển đến thực hiện lệnh lặp Do While…LoopĐầu tiên, ứng dụng kiểm tra điều kiện kết thúc vòng lặp, điều kiện này cógiá trị là False nên ứng dụng tiếp tục thực thi lệnh trong thân vòng lặpSau thực thi thân vòng lặp, x có giá trị là 4Ứng dụng kiểm tra điều kiện kết thúc vòng lặp. Điều kiện này có giá trịFalse, ứng dụng tiếp tục thực thi lệnh trong thân vòng lặpSau khi thực thi thân vòng lặp, x có giá trị là 6Ứng dụng kiểm tra điều kiện kết thúc vòng lặp. Điều kiện này bây giờ cógiá trị True (vì 6 lớn hơn 5). Ứng dụng kết thúc thực thi vòng lặp

Dim x As Integer = 2

Do Until x > 5

x += 2

Loop

Điều kiệnkết thúc vòng lặp

Bài toán: Tìm số chẵn đầu tiền lớn hơn 5

Khai báo biến x và gán cho biến này giá trị là 2Ứng dụng chuyển đến thực hiện lệnh lặp Do While…LoopĐầu tiên, ứng dụng kiểm tra điều kiện kết thúc vòng lặp, điều kiện này cógiá trị là False nên ứng dụng tiếp tục thực thi lệnh trong thân vòng lặpSau thực thi thân vòng lặp, x có giá trị là 4Ứng dụng kiểm tra điều kiện kết thúc vòng lặp. Điều kiện này có giá trịFalse, ứng dụng tiếp tục thực thi lệnh trong thân vòng lặpSau khi thực thi thân vòng lặp, x có giá trị là 6Ứng dụng kiểm tra điều kiện kết thúc vòng lặp. Điều kiện này bây giờ cógiá trị True (vì 6 lớn hơn 5). Ứng dụng kết thúc thực thi vòng lặp

Các lệnh lặp 8

Page 9: BÀI 5: Các lệnh lặp - Giáo trình FPT

Biểu đồ hoạt động của Do Until…Loop

Cộng x với 2[x < 5]

Các lệnh lặp 9

Cộng x với 2

[x > 5]

[x < 5]

Câu lệnh Visual Basic tương ứng là:x += 2

Page 10: BÀI 5: Các lệnh lặp - Giáo trình FPT

Lệnh lặp Do…Loop While

So sánh lệnh Do…Loop While và lệnh Do While…LoopGiống: Lặp khi điều kiện tiếp tục vòng lặp có giá trị TrueKhác:

Lệnh Do While…Loop, điều kiện tiếp tục vòng lặp được kiểm tratại thời điểm bắt đầu vòng lặp, trước khi thân vòng lặp đượcthực hiệnLệnh Do…Loop While kiểm tra điều kiện tiếp tục vòng lặp sau khithực hiện thân vòng lặpTrong lệnh Do…Loop While, thân vòng lặp luôn được thực thi ítnhất một lần

So sánh lệnh Do…Loop While và lệnh Do While…LoopGiống: Lặp khi điều kiện tiếp tục vòng lặp có giá trị TrueKhác:

Lệnh Do While…Loop, điều kiện tiếp tục vòng lặp được kiểm tratại thời điểm bắt đầu vòng lặp, trước khi thân vòng lặp đượcthực hiệnLệnh Do…Loop While kiểm tra điều kiện tiếp tục vòng lặp sau khithực hiện thân vòng lặpTrong lệnh Do…Loop While, thân vòng lặp luôn được thực thi ítnhất một lần

Các lệnh lặp 10

Page 11: BÀI 5: Các lệnh lặp - Giáo trình FPT

Thực thi lệnh lặp Do…Loop While

Bài toán: Tìm số chẵn đầu tiền lớn hơn 5

Khai báo biến x và gán cho biến này giá trị là 2Ứng dụng chuyển đến thực hiện lệnh lặp Do While…LoopTrước tiên, ứng dụng thực thi thân vòng lặp, x có giá trị là 4Sau đó, ứng dụng kiểm tra điều kiện tiếp tục vòng lặp. Điều kiện này cógiá trị True, ứng dụng tiếp tục thực thi lệnh trong thân vòng lặpSau khi thực thi thân vòng lặp, x có giá trị là 6Ứng dụng kiểm tra điều kiện tiếp tục vòng lặp. Điều kiện này bây giờ cógiá trị False (vì 6 lớn hơn 5). Ứng dụng kết thúc thực thi vòng lặp

Dim x As Integer = 2

Do

x += 2

Loop While x <= 5

Điều kiện tiếp tụcvòng lặp

Bài toán: Tìm số chẵn đầu tiền lớn hơn 5

Khai báo biến x và gán cho biến này giá trị là 2Ứng dụng chuyển đến thực hiện lệnh lặp Do While…LoopTrước tiên, ứng dụng thực thi thân vòng lặp, x có giá trị là 4Sau đó, ứng dụng kiểm tra điều kiện tiếp tục vòng lặp. Điều kiện này cógiá trị True, ứng dụng tiếp tục thực thi lệnh trong thân vòng lặpSau khi thực thi thân vòng lặp, x có giá trị là 6Ứng dụng kiểm tra điều kiện tiếp tục vòng lặp. Điều kiện này bây giờ cógiá trị False (vì 6 lớn hơn 5). Ứng dụng kết thúc thực thi vòng lặp

Các lệnh lặp 11

Page 12: BÀI 5: Các lệnh lặp - Giáo trình FPT

Biểu đồ hoạt động của Do…Loop While

Cộng x với 2[x <= 5]

Cộng x với 2

[x > 5]

[x <= 5]

Các lệnh lặp 12

[x > 5][x > 5]

Do While…Loop Do…Loop While

Page 13: BÀI 5: Các lệnh lặp - Giáo trình FPT

Lệnh lặp Do…Loop Until

So sánh lệnh Do…Loop Until và lệnh Do Until…LoopGiống: Lặp khi điều kiện kết thức vòng lặp có giá trị FalseKhác:

Lệnh Do Until…Loop, điều kiện kết thúc vòng lặp được kiểm tratại thời điểm bắt đầu vòng lặp, trước khi thân vòng lặp đượcthực hiệnLệnh Do…Loop Until kiểm tra điều kiện kết thúc vòng lặp sau khithực hiện thân vòng lặpTrong lệnh Do…Loop Until, thân vòng lặp luôn được thực thi ítnhất một lần

So sánh lệnh Do…Loop Until và lệnh Do Until…LoopGiống: Lặp khi điều kiện kết thức vòng lặp có giá trị FalseKhác:

Lệnh Do Until…Loop, điều kiện kết thúc vòng lặp được kiểm tratại thời điểm bắt đầu vòng lặp, trước khi thân vòng lặp đượcthực hiệnLệnh Do…Loop Until kiểm tra điều kiện kết thúc vòng lặp sau khithực hiện thân vòng lặpTrong lệnh Do…Loop Until, thân vòng lặp luôn được thực thi ítnhất một lần

Các lệnh lặp 13

Page 14: BÀI 5: Các lệnh lặp - Giáo trình FPT

Thực thi lệnh lặp Do…Loop Until

Bài toán: Tìm số chẵn đầu tiền lớn hơn 5

Khai báo biến x và gán cho biến này giá trị là 2Ứng dụng chuyển đến thực hiện lệnh lặp Do While…LoopTrước tiên, ứng dụng thực thi thân vòng lặp, x có giá trị là 4Sau đó, ứng dụng kiểm tra điều kiện kết thúc vòng lặp. Điều kiện này cógiá trị False, ứng dụng tiếp tục thực thi lệnh trong thân vòng lặpSau khi thực thi thân vòng lặp, x có giá trị là 6Ứng dụng kiểm tra điều kiện kết thúc vòng lặp. Điều kiện này bây giờ cógiá trị True (vì 6 lớn hơn 5). Ứng dụng kết thúc thực thi vòng lặp

Dim x As Integer = 2

Do

x += 2

Loop Until x > 5

Điều kiện tiếp tụcvòng lặp

Bài toán: Tìm số chẵn đầu tiền lớn hơn 5

Khai báo biến x và gán cho biến này giá trị là 2Ứng dụng chuyển đến thực hiện lệnh lặp Do While…LoopTrước tiên, ứng dụng thực thi thân vòng lặp, x có giá trị là 4Sau đó, ứng dụng kiểm tra điều kiện kết thúc vòng lặp. Điều kiện này cógiá trị False, ứng dụng tiếp tục thực thi lệnh trong thân vòng lặpSau khi thực thi thân vòng lặp, x có giá trị là 6Ứng dụng kiểm tra điều kiện kết thúc vòng lặp. Điều kiện này bây giờ cógiá trị True (vì 6 lớn hơn 5). Ứng dụng kết thúc thực thi vòng lặp

Các lệnh lặp 14

Page 15: BÀI 5: Các lệnh lặp - Giáo trình FPT

Biểu đồ hoạt động của Do…Loop Until

Cộng x với 2[x <= 5]

Cộng x với 2

[x > 5]

[x <= 5]

Các lệnh lặp 15

[x > 5][x > 5]

Do Until…Loop Do…Loop Until

Page 16: BÀI 5: Các lệnh lặp - Giáo trình FPT

Vòng lặp dùng biến đếm

Bốn yếu tố cơ bản của vòng lặp dùng biến đếmBiến điều khiểnGiá trị khởi tạo của biến điều khiểnBước tăng (hoặc bước giảm)

Theo đó, biến điều khiển sẽ thay đổi qua mỗi lần lặp

Điều kiện kiểm tra đối với giá trị cuối cùng của biến điềukhiển

Bốn yếu tố cơ bản của vòng lặp dùng biến đếmBiến điều khiểnGiá trị khởi tạo của biến điều khiểnBước tăng (hoặc bước giảm)

Theo đó, biến điều khiển sẽ thay đổi qua mỗi lần lặp

Điều kiện kiểm tra đối với giá trị cuối cùng của biến điềukhiển

Các lệnh lặp 16

tong = 0x = 2

Do While x <= 10tong += xx += 2

Loop

điều kiệnkiểm tra

khởi tạogiá trị

bước tăng

Page 17: BÀI 5: Các lệnh lặp - Giáo trình FPT

Lệnh lặp For…Next

Lệnh For…Next dùng để viết mã thực thi vòng lặp dùngbiến đếm dễ dàng hơn

Dòng tiêu đề chỉ ra cả bốn yếu tố cơ bản của vòng lặpdùng biến đếm

Cần ít thời gian hơn để viết mã, và mã dễ đọc hơn so vớilệnh Do tương đương

For x As Integer = 2 To 10 Step 2[Thân lệnh]

Next

tên biếnđiều khiển

giá trịkhởi tạo giá trị cuối bước tăng

Lệnh For…Next dùng để viết mã thực thi vòng lặp dùngbiến đếm dễ dàng hơn

Dòng tiêu đề chỉ ra cả bốn yếu tố cơ bản của vòng lặpdùng biến đếm

Cần ít thời gian hơn để viết mã, và mã dễ đọc hơn so vớilệnh Do tương đương

Các lệnh lặp 17

For x As Integer = 2 To 10 Step 2[Thân lệnh]

Next x = 2

Do While x <= 10[thân lệnh]

x += 2Loop

Page 18: BÀI 5: Các lệnh lặp - Giáo trình FPT

Thực thi lệnh lặp For…Next

Đầu tiên, ứng dụng khai báo biến và gán giá trị 2 cho biếnSau đó ứng dụng kiểm tra điều kiện tiếp tục vòng lặp, điều kiện nàycó giá trị True, ứng dụng thực thi thân vòng lặpGiá trị x được tăng thêm 2, bây giờ biến x có giá trị là 4Điều kiện tiếp tục vòng lặp lại được kiểm tra, điều kiện có giá trị làTrue, ứng dụng thực thi thân vòng lặpGiá trị x được tăng thêm 2, bây giờ biến x có giá trị là 6Điều kiện tiếp tục vòng lặp lại được kiểm tra, điều kiện có giá trị làTrue, ứng dụng thực thi thân vòng lặpGiá trị x được tăng thêm 2, bây giờ biến x có giá trị là 8Điều kiện tiếp tục vòng lặp lại được kiểm tra, điều kiện có giá trị làFalse (vì 8 lớn hơn 6), ứng dụng kết thúc thực thi vòng lặp

For x As Integer = 2 To 6 Step 2[Thân lệnh]

Next

Đầu tiên, ứng dụng khai báo biến và gán giá trị 2 cho biếnSau đó ứng dụng kiểm tra điều kiện tiếp tục vòng lặp, điều kiện nàycó giá trị True, ứng dụng thực thi thân vòng lặpGiá trị x được tăng thêm 2, bây giờ biến x có giá trị là 4Điều kiện tiếp tục vòng lặp lại được kiểm tra, điều kiện có giá trị làTrue, ứng dụng thực thi thân vòng lặpGiá trị x được tăng thêm 2, bây giờ biến x có giá trị là 6Điều kiện tiếp tục vòng lặp lại được kiểm tra, điều kiện có giá trị làTrue, ứng dụng thực thi thân vòng lặpGiá trị x được tăng thêm 2, bây giờ biến x có giá trị là 8Điều kiện tiếp tục vòng lặp lại được kiểm tra, điều kiện có giá trị làFalse (vì 8 lớn hơn 6), ứng dụng kết thúc thực thi vòng lặp

Các lệnh lặp 18

Page 19: BÀI 5: Các lệnh lặp - Giáo trình FPT

Biểu đồ hoạt động của For…Next

Khai báo biến điều khiểnvà khởi tạo giá trị

Các lệnh lặp 19

Thực thithân lệnh

[x > 6]

[x<= 6] Tăng biếnđiều khiển

Page 20: BÀI 5: Các lệnh lặp - Giáo trình FPT

Một số lưu ý cho lệnh For…Next

Nếu không có mệnh đề step, biến điều khiển tự độngtăng 1 sau mỗi lần lặp

Nếu muốn giảm giá trị của biến điều khiển, dùng số âmsau từ khóa Step

For x As Integer = 2 To 10Biến x tăng 1 saumỗi lần lặp

Nếu không có mệnh đề step, biến điều khiển tự độngtăng 1 sau mỗi lần lặp

Nếu muốn giảm giá trị của biến điều khiển, dùng số âmsau từ khóa Step

Các lệnh lặp 20

For x As Integer = 10 To 2 Step -2

Biến x giảm đi 2 saumỗi lần lặp

Page 21: BÀI 5: Các lệnh lặp - Giáo trình FPT

Một số lưu ý cho lệnh For…Next

Giá trị khởi đầu, giá trị kết thúc và bước tăng có thể làbiểu thức số học.

Giả sử a=2 và b=10

For i As Integer = a To (4*a*b) Step (b\a)

Các biểu thức đượcđánh giá trước

Giá trị khởi đầu, giá trị kết thúc và bước tăng có thể làbiểu thức số học.

Giả sử a=2 và b=10

Các lệnh lặp 21

For i As Integer = 2 To 80 Step 5

Page 22: BÀI 5: Các lệnh lặp - Giáo trình FPT

ListBox

ListBox cho phép người dùng xem và lựa chọn nhiềuphần tử trên danh sách

ListBox trênTooBox

Các lệnh lặp 22

ListBox trênTooBox

ListBox trêngiao diện

Page 23: BÀI 5: Các lệnh lặp - Giáo trình FPT

ListBox

Thuộc tính quan trọngItems - Trả lại đối tượng chứa các phần tử được hiển thịtrên ListBox.Location - Chỉ ra vị trí của ListBox trên Form.Name - Chỉ ra tên được sử dụng để truy cập ListBox trongkhi lập trình. Tên nên có hậu tố ListBox.Size - Chỉ ra chiều rộng và chiều cao (bằng pixel) củaListBox.

Phương thứcItems.Add - Thêm một phần tử vào thuộc tính Items.Items.Clear - Xóa tất cả các giá trị có trong thuộc tínhItems của ListBox.

Thuộc tính quan trọngItems - Trả lại đối tượng chứa các phần tử được hiển thịtrên ListBox.Location - Chỉ ra vị trí của ListBox trên Form.Name - Chỉ ra tên được sử dụng để truy cập ListBox trongkhi lập trình. Tên nên có hậu tố ListBox.Size - Chỉ ra chiều rộng và chiều cao (bằng pixel) củaListBox.

Phương thứcItems.Add - Thêm một phần tử vào thuộc tính Items.Items.Clear - Xóa tất cả các giá trị có trong thuộc tínhItems của ListBox.

Các lệnh lặp 23

Page 24: BÀI 5: Các lệnh lặp - Giáo trình FPT

Demo cách sử dụng ListBox

Thêm điều khiển vào Form

Các lệnh lặp 24

Thêm điều khiểnListBox vào Form

Page 25: BÀI 5: Các lệnh lặp - Giáo trình FPT

Demo cách sử dụng ListBox

Thêm các phần tử vào điều khiển ListBox

Các lệnh lặp 25

Thêm phần tửvào ListBox

Page 26: BÀI 5: Các lệnh lặp - Giáo trình FPT

Demo cách sử dụng ListBox

Xóa các phần tử trên điều khiển ListBox

Các lệnh lặp 26

Xóa các phầntử trên ListBox

Page 27: BÀI 5: Các lệnh lặp - Giáo trình FPT

ListView

Giả sử ta có ListView có Name là ListView1

Các lệnh lặp 27

Page 28: BÀI 5: Các lệnh lặp - Giáo trình FPT

Đọc dữ liệu vào ListView

Giả sử ta có ListView có Name là ListView1Dim Files() As String = Directory.GetFiles("C:\")

ListView1.View = System.Windows.Forms.View.List

Dim Filename As String

For Each Filename In FilesListView1.BeginUpdate()ListView1.Items.Add(Filename)ListView1.EndUpdate()ListView1.Refresh()

Next

Giả sử ta có ListView có Name là ListView1Dim Files() As String = Directory.GetFiles("C:\")

ListView1.View = System.Windows.Forms.View.List

Dim Filename As String

For Each Filename In FilesListView1.BeginUpdate()ListView1.Items.Add(Filename)ListView1.EndUpdate()ListView1.Refresh()

Next

Các lệnh lặp 28

Page 29: BÀI 5: Các lệnh lặp - Giáo trình FPT

Tổng quan về mảng

Mảng là tập hợp có thứ tự của những đối tượng. Các đốitượng này có cùng kiểu dữ liệuKhai báo mảng:

Dim intArray( ) As IntegerDim empArray( ) As Employee

Tạo mảng:intArray = New Integer(5) {}empArray = New Employee(3) {}

Duyệt mảng:Dim intValue As Integer

For Each intValue In intArrayConsole.WriteLine(intValue.ToString())

Next

Mảng là tập hợp có thứ tự của những đối tượng. Các đốitượng này có cùng kiểu dữ liệuKhai báo mảng:

Dim intArray( ) As IntegerDim empArray( ) As Employee

Tạo mảng:intArray = New Integer(5) {}empArray = New Employee(3) {}

Duyệt mảng:Dim intValue As Integer

For Each intValue In intArrayConsole.WriteLine(intValue.ToString())

Next

Các lệnh lặp 29

Page 30: BÀI 5: Các lệnh lặp - Giáo trình FPT

Tổng quan về mảng

Truy cập đến phần tử của mảng:Dim intArray As Integer( ) = {2, 4, 6, 8, 10}=>intArray(2) có giá trị là 6

Mảng động:Dim empArray As Employee() = _

{New Employee(5), New Employee(7), New Employee(9)}

Duyệt mảng động:Dim e As Employee

For Each e In empArrayConsole.WriteLine(e.ToString())

Next e

Truy cập đến phần tử của mảng:Dim intArray As Integer( ) = {2, 4, 6, 8, 10}=>intArray(2) có giá trị là 6

Mảng động:Dim empArray As Employee() = _

{New Employee(5), New Employee(7), New Employee(9)}

Duyệt mảng động:Dim e As Employee

For Each e In empArrayConsole.WriteLine(e.ToString())

Next e

Các lệnh lặp 30

Page 31: BÀI 5: Các lệnh lặp - Giáo trình FPT

NumericUpDown

NumericUpdown cho phép lựa chọn giá trị bằng cáchnhấn vào mũi tên lên xuống

NumericUpDowntrên TooBox

Kích vào mũitên lên xuống

để chọn

Các lệnh lặp 31

NumericUpDowntrên TooBox

NumericUpDowntrên giao diện

Kích vào mũitên lên xuống

để chọn

Page 32: BÀI 5: Các lệnh lặp - Giáo trình FPT

NumericUpDown

Thuộc tính quan trọngNgoài những thuộc tính thông thường như Name,Location…NumericUpDown còn có những thuộc tính đặc trưng sau

Increment - Chỉ ra giá trị hiện thời của điều khiểnNumericUpDown sẽ thay đổi bao nhiêu khi người dùng nhấnmũi tên đi lên (để tăng) hoặc xuống ( để giảm) trên điềukhiển.Maximum - Cho biết giá trị nhập vào lớn nhất của điềukhiển NumericUpDown.Minimum - Cho biết giá trị nhập vào nhỏ nhất của điềukhiển NumericUpDown.Value - Chỉ ra giá trị của điều khiển NumericUpDown.

Thuộc tính quan trọngNgoài những thuộc tính thông thường như Name,Location…NumericUpDown còn có những thuộc tính đặc trưng sau

Increment - Chỉ ra giá trị hiện thời của điều khiểnNumericUpDown sẽ thay đổi bao nhiêu khi người dùng nhấnmũi tên đi lên (để tăng) hoặc xuống ( để giảm) trên điềukhiển.Maximum - Cho biết giá trị nhập vào lớn nhất của điềukhiển NumericUpDown.Minimum - Cho biết giá trị nhập vào nhỏ nhất của điềukhiển NumericUpDown.Value - Chỉ ra giá trị của điều khiển NumericUpDown.

Các lệnh lặp 32

Page 33: BÀI 5: Các lệnh lặp - Giáo trình FPT

Demo sử dụng NumericUpDown

Thêm điều khiển NumericUpDown vào FormThiết lập giới hạn giá trịThiết lập bước tăng

Các lệnh lặp 33

Page 34: BÀI 5: Các lệnh lặp - Giáo trình FPT

TextBox nhiều dòng

Dùng để hiển thị văn bản nhiều hơn một dòngCó thể tạo ra bằng cách thiết lập thuộc tính Multiline củaTextBox là True

Các lệnh lặp 34

TextBoxnhiều dòng

Thanh cuộn

Page 35: BÀI 5: Các lệnh lặp - Giáo trình FPT

Chuyển focus

Chuyển focus tới điều khiển nhằm hướng dẫn ngườidùng hành động tiếp theo cần phải thực hiệnChuyển focus hợp lý sẽ làm ứng dụng dễ dùng hơn,người dùng sẽ không phải sử dụng chuột và bàn phímđể chuyển focus đến điều khiển mong muốn

Các lệnh lặp 35

Nhập xong một điểm Focuschuyển về TextBox

Enter grade: để người dùngnhập tiếp điểm tiếp theo

Nhập xong 10 điểm,focus sẽ chuyển về

Button Average để ngườidùng tính điểm

Page 36: BÀI 5: Các lệnh lặp - Giáo trình FPT

Demo chuyển Focus

Các lệnh lặp 36

Chuyển Focus tới điềukhiển gradeTextBox

Page 37: BÀI 5: Các lệnh lặp - Giáo trình FPT

Vô hiệu hóa điều khiển

Khi một điều khiển bị vô hiệu hóa (disable), điều khiển đósẽ không hồi đáp lại thao tác của người dùng lên nóVô hiệu hóa điều khiển ngăn không cho người dùng thaotác với điều khiển để tránh những thao tác không mongmuốn từ phía người dùng

Các lệnh lặp 37

Điều khiển bị vôhiệu hóa

Page 38: BÀI 5: Các lệnh lặp - Giáo trình FPT

Demo vô hiệu hóavà kích hoạt điều khiển

Vô hiệu hóa điều khiển

Các lệnh lặp 38

vô hiệu hóa điều khiển

Page 39: BÀI 5: Các lệnh lặp - Giáo trình FPT

Demo vô hiệu hóavà kích hoạt điều khiển

Kích hoạt điều khiển

Các lệnh lặp 39

kích hoạt điều khiển

Page 40: BÀI 5: Các lệnh lặp - Giáo trình FPT

Sử dụng biến kiểu String

Biến String dùng để lưu một chuỗi ký tựBao gồm các chữ cái, chữ số và các ký tự khác như $, *…

Thuộc tính Text của Label và TextBox đều được biểudiễn dưới dạng StringNếu gán giá trị kiểu số cho thuộc tính Text của Label, giátrị số đó được tự động chuyển về kiểu String rồi mới gáncho thuộc tính Text

Biến String dùng để lưu một chuỗi ký tựBao gồm các chữ cái, chữ số và các ký tự khác như $, *…

Thuộc tính Text của Label và TextBox đều được biểudiễn dưới dạng StringNếu gán giá trị kiểu số cho thuộc tính Text của Label, giátrị số đó được tự động chuyển về kiểu String rồi mới gáncho thuộc tính Text

Các lệnh lặp 40

Page 41: BÀI 5: Các lệnh lặp - Giáo trình FPT

Sử dụng biến kiểu String

Giá trị gán cho biến kiểu String phải được bao bằng dấungoặc kép

Chuỗi rỗng (“”) đại diện cho một String không chứa kýtự nàoCó thể thêm một String khác vào cuối String khác bằngcách sử dụng toán tử ghép (&)

name = “Nam”

Giá trị gán cho biến kiểu String phải được bao bằng dấungoặc kép

Chuỗi rỗng (“”) đại diện cho một String không chứa kýtự nàoCó thể thêm một String khác vào cuối String khác bằngcách sử dụng toán tử ghép (&)

Các lệnh lặp 41

name = “Nam” & “Anh”

Page 42: BÀI 5: Các lệnh lặp - Giáo trình FPT

Demo sử dụng biến kiểu String

Khai báo biến StringGán giá trị cho biến StringGhép các String với nhau

Các lệnh lặp 42

Page 43: BÀI 5: Các lệnh lặp - Giáo trình FPT

Giảng viên hướng dẫn sinh viên làm assignment

Hướng dẫn làm Assignment

Các lệnh lặp 43

Page 44: BÀI 5: Các lệnh lặp - Giáo trình FPT

Visual Basic cung cấp các cấu trúc điều khiển lặp như sau:Do While…Loop: Kiểm tra điều kiện tiếp tục vòng lặp rồi mớithực thi phần thân vòng lặpLệnh Do Until…Loop: Kiểm tra điều kiện kết thúc vòng lặp rồimới thực thi thân vòng lặpDo…Loop While: Thực thi thân vòng lặp rồi mới kiểm tra điềukiện tiếp tục vòng lặpDo…Loop Until: Thực thi thân vòng lặp rồi mới kiểm tra điềukiện kết thúc vòng lặpFor…Next: Sử dụng thay cho vòng lặp dùng biến đếm, trong đótiêu đề của lệnh này có cả 4 yếu tố cơ bản của vòng lặp dùngbiến đếm

Các cấu trúc điều khiển trên có thể dùng thay thế cho nhau

Tổng kết bài học

Visual Basic cung cấp các cấu trúc điều khiển lặp như sau:Do While…Loop: Kiểm tra điều kiện tiếp tục vòng lặp rồi mớithực thi phần thân vòng lặpLệnh Do Until…Loop: Kiểm tra điều kiện kết thúc vòng lặp rồimới thực thi thân vòng lặpDo…Loop While: Thực thi thân vòng lặp rồi mới kiểm tra điềukiện tiếp tục vòng lặpDo…Loop Until: Thực thi thân vòng lặp rồi mới kiểm tra điềukiện kết thúc vòng lặpFor…Next: Sử dụng thay cho vòng lặp dùng biến đếm, trong đótiêu đề của lệnh này có cả 4 yếu tố cơ bản của vòng lặp dùngbiến đếm

Các cấu trúc điều khiển trên có thể dùng thay thế cho nhau

Các lệnh lặp 44

Page 45: BÀI 5: Các lệnh lặp - Giáo trình FPT

Điều khiển ListBox, ListView cho phép người dùng xemvà lựa chọn nhiều phần tử trên danh sách. Có thể thêmhoặc xóa các phần tử của điều khiển này bằng cách lậptrìnhCách sử dụng mảngĐiều khiển NumericUpDown cho phép lựa chọn giá trị sốbằng cách nhấn vào mũi tên lên xuống. Có thể thiết lậpgiới hạn giá trị và bước tăng cho điều khiển nàyChuyển Focus hợp lý sẽ làm cho ứng dụng dễ dùng hơnVô hiệu hóa điều khiển ngăn không cho người dùng thaotác với điều khiển để tránh những thao tác không mongmuốn từ phía người dùng

Tổng kết bài học

Điều khiển ListBox, ListView cho phép người dùng xemvà lựa chọn nhiều phần tử trên danh sách. Có thể thêmhoặc xóa các phần tử của điều khiển này bằng cách lậptrìnhCách sử dụng mảngĐiều khiển NumericUpDown cho phép lựa chọn giá trị sốbằng cách nhấn vào mũi tên lên xuống. Có thể thiết lậpgiới hạn giá trị và bước tăng cho điều khiển nàyChuyển Focus hợp lý sẽ làm cho ứng dụng dễ dùng hơnVô hiệu hóa điều khiển ngăn không cho người dùng thaotác với điều khiển để tránh những thao tác không mongmuốn từ phía người dùng

Các lệnh lặp 45