Kiểu dữ liệu trong Pascal

Mặc dù có nhiều ưu và nhược điểm trên Pascal nhưng không thể phủ nhận rằng ngôn ngữ này là 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 của Pascal chỉ ra ý nghĩa, ràng buộc, các giá trị có thể, các toán tử, các hàm và phương thức lưu trữ gắn liền với nó.

Các kiểu dữ liệu Integer (số nguyên), Real (kiểu thực), Boolean và Character (kiểu ký tự) được gọi là kiểu dữ liệu chuẩn. Các kiểu dữ liệu có thể được phân loại dưới dạng kiểu vô hướng (scalar), kiểu dữ liệu dạng 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ư integer (kiểu số nguyên), real (kiểu thực), Boolean, character (kiểu ký tự), subrange (kiểu miền con) và enumerate (kiểu liệt kê). Kiểu dữ liệu cấu trúc được tạo từ kiểu dữ liệu vô hướng, ví dụ như array (mảng), record (bản ghi), file và set (tập hợp). Kiểu dữ liệu dạng con trỏ (pointer) Taimienphi.vn sẽ đề cập đến 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:

kieu du lieu trong pascal

1. Khai báo kiểu (declaration)

Khai báo kiểu được sử dụng để khai báo kiểu dữ liệu của một định danh. Cú pháp khai báo kiểu:

type-identifier-1, type-identfier-2 = type-specifier;

Ví dụ khai báo dưới đây định nghĩa các biến ngày và tuổi theo kiểu integer (kiểu số nguyên), yes và true theo kiểu Boolean, tên và thành phố theo kiểu string (kiểu chuỗi), các khoản phí và chi phí là kiểu real (kiểu thực):

type

days, age = integer;

yes, true = boolean;

name, city = string;

fees, expenses = real;

Kiểu Integer (kiểu số nguyên)

Bảng dưới đây là chi tiết các kiểu số nguyên chuẩn với kích thước lưu trữ và các dải giá trị được sử dụng trong Object Pascal:

kieu du lieu trong pascal 2

2. Hằng (Constant)

Sử dụng hằng để chương trình có thể đọc được nhiều hơn và có giá trị không thay đổi trong suốt quá trình thực hiện chương trình. Pascal cho phép hằng là các số, chuỗi logic, chuỗi và các ký tự.

Hằng số có thể được khai báo trong phần khai báo của chương trình bằng cách xác định khai báo const.

Cú pháp khai báo kiểu hàm:

const

Identifier = contant_value;

Dưới đây là ví dụ khai báo hằng:

VELOCITY_LIGHT = 3.0E=10;

PIE = 3.141592;

NAME = ‘Stuart Little’;

CHOICE = yes;

OPERATOR = ‘+’;

Tất cả các khai báo hằng phải được đặt trước khai báo biến.

3. Kiểu dữ liệu liệt kê

Kiểu dữ liệu liệt kê là các kiểu dữ liệu do người dùng xác định. Kiểu dữ liệu này cho phép các giá trị được chỉ định trong một danh sách. Chỉ cho phép các toán tử gán và các toán tử quan hệ trên các kiểu dữ liệu liệt kê. Kiểu dữ liệu được liệt kê được khai báo như sau:

type

enum-identifier = (item1, item2, item3, … )

Dưới đây là ví dụ kiểu khai báo liệt kê:

type

SUMMER = (April, May, June, July, September);

COLORS = (Red, Green, Blue, Yellow, Magenta, Cyan, Black, White);

TRANSPORT = (Bus, Train, Airplane, Ship);

Trong ví dụ trên, các mục được liệt kê trong miền của một kiểu liệt kê xác định thứ tự các mục. Ví dụ, trong kiểu dữ liệu liệt kê SUMMER, tháng 4 có trước tháng 5, tháng 5 có trước tháng 6, … . Miền của các định danh kiểu liệt kê không thể bao gồm các hằng số hoặc các hằng ký tự.

4. Kiểu dữ liệu miền con (Subrange)

Kiểu dữ liệu miền con cho phép một biến giả sử các giá trị nằm trong một dải nhất định. Ví dụ, nếu tuổi của cử tri nằm trong 18 đến 100, biến bao gồm tên tuổi là:

var

age: 18 … 100;

Trong các phần tiếp theo Taimienphi.vn sẽ giới thiệu cho bạn chi tiết cách khai báo biến. Ngoài ra bạn cũng có thể xác định kiểu khai báo miền con bằng cách sử dụng khai báo kiểu. Cú pháp để khai báo kiểu phân loại:

type

subrange-identifier = lower-limit … upper-limit;

Dưới đây là một số ví dụ kiểu khai báo miền con:

const

P = 18;

Q = 90;

type

Number = 1 … 100;

Value = P … Q;

Các kiểu khai báo miền con có thể được tạo ra từ tập hợp con của kiểu dữ liệu liệt kê đã được xác định.

Ví dụ:

type

months = (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);

Summer = Apr … Aug;

Winter = Oct … Dec;