Mặc dù Pascal có nhiều ưu điểm và nhược điểm, nhưng không thể phủ nhận rằng đây là một ngôn ngữ cơ bản mà bất kỳ lập trình viên nào cũng cần phải biết. Các kiểu dữ liệu trong Pascal không chỉ là về ý nghĩa và ràng buộc, mà còn liên quan đến giá trị, toán tử, hàm và phương thức.
Các kiểu dữ liệu như Integer (số nguyên), Real (kiểu thực), Boolean và Character (kiểu ký tự) được gọi là những kiểu dữ liệu chuẩn. Các kiểu dữ liệu có thể được phân loại thành kiểu vô hướng (scalar), kiểu dữ liệu con trỏ (pointer) và kiểu dữ liệu cấu trúc (structured).
Ví dụ về các kiểu dữ liệu vô hướng (scalar) như số nguyên (integer), thực (real), Logic (Boolean), ký tự (character), miền con (subrange) và liệt kê (enumerate). Kiểu dữ liệu cấu trúc được tạo thành từ các kiểu dữ liệu vô hướng, như mảng (array), bản ghi (record), tệp tin và tập hợp (set). Kiểu dữ liệu con trỏ (pointer) sẽ được Mytour giới thiệu sau.
Kiểu Dữ Liệu Trong Pascal
Các kiểu dữ liệu trong Pascal được tóm gọn trong sơ đồ dưới đây:
1. Khai Báo Kiểu (Declaration)
Để xác định kiểu dữ liệu của một định danh, chúng ta sử dụng khai báo kiểu. Cú pháp khai báo kiểu như sau:
định_danh_kiểu-1, định_danh_kiểu-2 = kiểu-mô_tả;
Ví dụ dưới đây mô tả các biến ngày và tuổi sử dụng kiểu số nguyên, yes và true với kiểu Logic, tên và thành phố với kiểu chuỗi, cũng như khoản phí và chi phí với kiểu số thực:
kiểu
ngày, tuổi = số nguyên;
có, đúng = logic;
tên, thành phố = chuỗi;
phí, chi phí = số thực;
Kiểu Số Nguyên (Integer)
Bảng dưới đây mô tả chi tiết về các kiểu số nguyên tiêu chuẩn, kích thước lưu trữ và các phạm vi giá trị được sử dụng trong Object Pascal:
2. Hằng Số (Constant)
Việc sử dụng hằng số giúp chương trình trở nên dễ đọc và giữ giá trị không thay đổi trong suốt quá trình thực thi. Trong Pascal, hằng số có thể là số, logic, chuỗi và các ký tự.
Hằng số có thể được định nghĩa trong phần khai báo của chương trình thông qua việc sử dụng từ khóa const.
Cú pháp để khai báo hằng số:
const
Định_Danh = Giá_Trị_Hằng_Số;
Dưới đây là một minh họa về cách khai báo hằng số:
TỐC_ĐỘ_ÁNH_SÁNG = 3.0E=10;
DIỆN_TÍCH = 3.141592;
TÊN_NHÂN_VẬT = 'Stuart Nhỏ Bé';
LỰA_CHỌN = có;
TOÁN_TỬ = '+';
Tất cả các hằng số phải được khai báo trước khi khai báo biến.
3. Kiểu dữ liệu danh sách
Dữ liệu kiểu liệt kê đặc tả các kiểu dữ liệu do người dùng định nghĩa. Loại dữ liệu này cho phép các giá trị được liệt kê trong một danh sách. Chỉ hỗ trợ các toán tử gán và quan hệ trên các kiểu dữ liệu liệt kê. Cú pháp khai báo kiểu liệt kê như sau:
kiểu
liệt_kê-định_danh = (phần_tử1, phần_tử2, phần_tử3, ... )
Dưới đây là một ví dụ về cách khai báo kiểu liệt kê:
kiểu
MÙA_HÈ = (Tháng Tư, Tháng Năm, Tháng Sáu, Tháng Bảy, Tháng Chín);
MÀU_SẮC = (Đỏ, Xanh Lá, Xanh Dương, Vàng, Magenta, Cyan, Đen, Trắng);
PHƯƠNG_TIỆN = (Xe Buýt, Tàu Hỏa, Máy Bay, Tàu);
Trong ví dụ trên, các phần tử được liệt kê trong phạm vi của một kiểu liệt kê xác định thứ tự của chúng. Ví dụ, trong kiểu dữ liệu liệt kê MÙA_HÈ, tháng 4 đứng trước tháng 5, tháng 5 đứng trước tháng 6, … . Phạm vi của các định danh kiểu liệt kê không thể chứa các hằng số hoặc ký tự.
4. Kiểu dữ liệu Phạm vi con (Subrange)
Kiểu dữ liệu Phạm vi con cho phép một biến giả sử các giá trị nằm trong một khoảng nhất định. Ví dụ, nếu tuổi của cử tri nằm trong khoảng 18 đến 100, biến tên là:
biến
tuổi: 18 ... 100;
Trong các phần sau, Mytour sẽ hướng dẫn bạn cách chi tiết để khai báo biến. Bạn cũng có thể xác định phạm vi con của khai báo bằng cách sử dụng khai báo kiểu. Cú pháp để định nghĩa kiểu phạm vi con như sau:
kiểu
phạm_vi_con-định_danh = giới_hạn_dưới ... giới_hạn_trên;
Dưới đây là một số ví dụ về cách khai báo phạm vi con:
hằng_số
X = 18;
Y = 90;
kiểu
Số_Nguyên = 1 ... 100;
Giá_Trị = P ... Q;
Các kiểu khai báo phạm vi con có thể được tạo ra từ tập con của kiểu dữ liệu liệt kê đã được xác định.
Ví dụ:
kiểu
tháng = (Th01, Th02, Th03, Th04, Th05, Th06, Th07, Th08, Th09, Th10, Th11, Th12);
Mùa_Hè = Th04 ... Th08;
Mùa_Dông = Th10 ... Th12;
Tóm lại, trong Pascal, kiểu dữ liệu được phân loại thành kiểu vô hướng (scalar), kiểu dữ liệu con trỏ (pointer) và kiểu dữ liệu cấu trúc (structured). Trong những bài viết sắp tới, Mytour sẽ hướng dẫn chi tiết về biến và cách khai báo biến trong Pascal.