Tìm trong:Webe-CHÍP

Bộ gõ (kiểu Vni/Telex/Viqr)Tắt (Alt+T)Mở (Alt+M)

 
Trang chủ QUÁN LẬP TRÌNH  
Mảng và cấu trúc trong VB.NET
Hầu hết các game dạng bảng như Line-NIIT đều đòi hỏi việc sử dụng mảng hoặc cấu trúc tương tự mảng để quản lý trạng thái của game. Bài viết này sẽ giới thiệu một số kỹ thuật cơ bản liên quan đến mảng và cấu trúc trong VB.NET.
Mảng là gì?
Mảng là một dãy gồm nhiều phần tử được xếp thứ tự. Mỗi phần tử trong mảng được truy xuất qua một con số dùng để xác định vị trí của nó trong mảng. Các giá trị lưu trữ trong mảng phải có cùng kiểu dữ liệu, bao gồm các kiểu dữ liệu cơ bản như mảng các chuỗi (string), mảng số nguyên (integer) hay mảng các đối tượng thuộc kiểu Balls do người dùng tự định nghĩa.
Khởi động
Câu lệnh sau khai báo một mảng các chuỗi có thể chứa 3 phần tử:
Dim DanhSach (3) As String
‘Truyền giá trị vào các phần tử của mảng
DanhSach (0) = “C++”
DanhSach (1) = “VB”
DanhSach (2) = “C#”
Mảng DanhSach được tổ chức trong bộ nhớ như một giá sách với các chỉ số tương ứng như sau:
Có thể khai báo và khởi gán các phần tử mảng chỉ với một dòng lệnh như sau:
Dim DanhSach () As String = {"C++", " VB", "C#"}
Để truy xuất phần tử thứ 2 trong mảng, ta dùng câu lệnh sau:
Dim GiaTri As String
‘Lưu ý: Phần tử thứ 2 có chỉ số là 1
GiaTri = DanhSach (1)
Mảng hai chiều
Bên cạnh mảng một chiều dùng để lưu trữ tên sách như trên, ta có thể lưu trữ cả giá tiền từng cuốn sách bằng một mảng khác với chỉ số tương ứng:
Dim Gia () As String = {“20$”, “18$”, “25$”}
Có cách khác hay hơn là dùng một mảng hai chiều để thay thế cả hai mảng trên:
‘ Khai báo một mảng hai chiều 3 cột, 2 hàng
Dim DanhMuc (3,1) As String
‘Truyền giá trị vào cho từng phần tử trong mảng
DanhMuc(0,0) = “C++”
DanhMuc(0,1) = “20$”
DanhMuc(1,0) = “VB”
DanhMuc(1,1) = “18$”
...
Cấu trúc (Structure)
Cấu trúc là một kiểu dữ liệu do ngưởi dùng tự định nghĩa dùng để tập hợp các thành phần dữ liệu có quan hệ với nhau thành một cấu trúc duy nhất. Ví dụ, để tổ chức lưu trữ tên một quyển sách cùng với giá của nó, ta khai báo cấu trúc Book như sau:
Structure Book
Public name As String
Public price As Double
End Structure
Ta khai báo một đối tượng thuộc kiểu Book bằng câu lệnh:
Dim CBook As Book
Các thành phần dữ liệu bên trong cấu trúc được truy xuất bằng cách sử dụng dấu chấm:
CBook.name = “C++”
CBook.price = “18”
Ta có thể tạo ra một cấu trúc kiểu Ball để lưu trữ đặc trưng của từng quả bóng (màu sắc, kích thước), sau đó đặt chúng vào một mảng hai chiều biểu diễn bảng game Line-NIIT:
Đây chỉ là một phương pháp khả dĩ. Việc sử dụng mảng và cấu trúc phụ thuộc vào giải thuật mà các bạn lựa chọn để giải quyết vấn đề đặt ra.
Lê Xuân Hưng (Giảng viên NIIT)
Tham khảo thông tin về cuộc thi “Đầu Bếp Quán Lập Trình” trong chuyên mục Quán lập trình trên Website e-CHÍP (www.echip.com.vn) hay trên các số e-CHÍP ra ngày thứ Ba và thứ Sáu hàng tuần.
 

THÔNG BÁO CỦA BTC CUỘC THI “ĐẦU BẾP QUÁN LẬP TRÌNH”

BTC cuộc thi “Đầu Bếp Quán Lập Trình” trân trọng thông báo: Do đề thi tháng 10 có tính chất kế thừa của đề thi tháng 9 nên không được nhiều bạn đọc tham dự, ngoài ra, những bài dự thi trong tháng này không đáp ứng được những yêu cầu BTC đề ra nên không có bài thi nào đạt giải.
Được sự đồng ý của nhà tài trợ là Học viện NIIT, để khuyến khích các “Đầu Bếp”, BTC quyết định cộng dồn giải thưởng tháng 10 vào giải thưởng tháng 11. Vì vậy, mỗi giải thưởng tháng 11 sẽ là quà tặng trị giá 2 triệu đồng.
Để xây dựng chương trình ngày càng tốt hơn, tạo sân chơi rộng rãi cho bạn đọc nhiều hơn nữa, BTC rất hoan nghênh những ý kiến đóng góp xây dựng chương trình “Đầu bếp Quán Lập Trình”.
Xin mời các bạn gởi ý kiến đóng góp, xây dựng và cải tiến cuộc thi về địa chỉ email: daubepquanlaptrinh@yahoo.com.vn. Những ý kiến đóng góp có giá trị sẽ được nhận những phần quà của tạp chí e-CHÍP và nhà tài trợ NIIT.
BTC cuộc thi “Đầu Bếp Quán Lập Trình”

Đầu trang