HH. Powered by Blogger.

5. Các kiểu dữ liệu trong Pascal

Kiểu dữ liệu của một thực thể bao hàm ý nghĩa, ràng buộc, giá trị phù hợp, toán tử, hàm và phương pháp lưu trữ thực thể đó.

Kiểu Integer, real, Boolean and character có thể được gọi chung là kiểu dữ liệu chuẩn. Các kiểu dữ liệu có thể phân thành kiểu vô hướng, con trỏ và kiểu dữ liệu có cấu trúc. Ví dụ kiểu vô hướng có thể là integer, real, Boolean, character, kiểu miền con hay kiểu liệt kê. Kiểu dữ liệu có cấu trúc được tạo nên từ kiều dữ liệu vô hướng; ví dụ: kiểu mảng, bản ghi, tệp, tập hợp. Riêng kiểu con trỏ trong ngôn ngữ lập trình Pascal sẽ được đề cập ở một bài khác.

Các kiểu dữ liệu trong Pascal

Kiểu dữ liệu trong Pascal
Kiểu dữ liệu trong Pascal

Khai báo kiểu

 type-identifier-1, type-identfier-2 = type-specifier;
Ví dụ: đoạn khai báo dưới đây khai báo các biến days, age kiểu số nguyên, biến yes, true là kiểu Boolean, biến name, city kiểu string, biến fees và expenses kiểu real
type
days, age = integer;
yes, true = boolean;
name, city = string;
fees, expenses = real;

Kiểu số nguyên

Bảng dưới đây là kiểu dữ liệu Integer với miền giá trị và kích thước vùng nhớ được sử dụng trong Object Pascal.
TypeMinimumMaximumFormat
Integer-21474836482147483647signed 32-bit
Cardinal04294967295unsigned 32-bit
Shortint-128127signed 8-bit
Smallint-3276832767signed 16-bit
Longint-21474836482147483647signed 32-bit
Int64-2^632^63 - 1signed 64-bit
Byte0255unsigned 8-bit
Word065535unsigned 16-bit
Longword04294967295unsigned 32-bit

Hằng số

Việc sử dụng hằng số trong chương trình làm cho dễ đọc hơn và giúp giữ các giá trị đặc biệt ở một vị trí đầu chương trình. Pascal cho phép các hằng số học, hằng logic, hằng chuỗi, hằng kí tự. Việc khai báo hằng trong phần khai báo bắt đầu với từ khóa Const.
Cú pháp khai báo hằng:
const
Identifier = contant_value;
Dưới đây là một vài ví dụ đúng về 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 trong chương trình phải đặt ở phía trước phần khai báo biến.

Kiểu liệt kê

Kiểu liệt kê (Enumerated) là kiểu dữ liệu do người dùng định nghĩa, trong kiểu này các giá trị được xác định có thứ tự trong một danh sách. Chỉ có phép gán và phép toán quan hệ được phép thực hiện trên kiểu dữ liệu này. Cú pháp khai báo kiểu liệt kê:
type
enum-identifier = (item1, item2, item3, ... )
Dưới đây là các khai báo kiểu liệt kê đúng:
type
SUMMER = (April, May, June, July, September);
COLORS = (Red, Green, Blue, Yellow, Magenta, Cyan, Black, White);
TRANSPORT = (Bus, Train, Airplane, Ship);
Thứ tự các thành phần được liệt kê trong miền liệt kê được định nghĩa là thứ tự của phần tử đó. Ví dụ: biến liệt kê Summer, April đứng trước May, May trước June,... Miền của kiểu liệt kê không chứa các hằng số học hay hằng kí tự.

Kiểu miền con (Subrange)

Kiểu miền con cho phép biến nhận giá trị trong một khoảng nhất định. Ví dụ, nếu tuổi của người ứng cử phải nằm trong khoảng 18 đến 100 thì biến Age sẽ được khai báo như sau:
var
age: 18 ... 100;
Ta nhìn vào cú pháp khai báo dưới đây. Có thể định nghĩa kiểu miền con bằng khai báo Type. Cú pháp như sau:
type
subrange-identifier = lower-limit ... upper-limit;
Dưới đây là một vài ví dụ khai báo kiểu miền con
const
P = 18;
Q = 90;
type
Number = 1 ... 100;
Value = P ... Q;
Kiểu miền con có thể được tạo từ một tập hợp các phần tử của một biến kiểu liệt kê. Ví dụ:
type
months = (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);
Summer = Apr ... Aug;
Winter = Oct ... Dec;

0 comments:

Post a Comment