6. Các kiểu biến trong Pascal
Một biến được xác định bằng tên gán cho một vùng nhớ mà chương trình của bạn có thể truy cập và các thao tác. Mỗi biến trong Pascal có một kiểu cụ thể, kiểu đó sẽ xác định kích thước và bộ nhớ, khoảng giá trị mà có thể lưu trữ và tập hợp các toán tử áp dụng trên biến đó.
Tên biến có thể bao gồm các kí tự, số và dấu gạch dưới _. Phải bắt đầu bằng kí tự hoặc dấu gạch dưới. Tên không phân biệt chữ hoa chữ thường. Dựa trên các kiểu dữ liệu cơ bản trong Pascal ở các bài trước, dưới đây là các kiểu biến cơ bản.
NNLT Pascal cho phép định nghĩa rất nhiều kiểu dữ liệu khác cho biến, các phần này sẽ được trình bày sau như kiểu con trỏ Pointer, Mảng, Bản ghi, Tập hợp, tệp,... còn ở bài này chỉ xét đến các kiểu dữ liệu cơ bản.
Tên biến có thể bao gồm các kí tự, số và dấu gạch dưới _. Phải bắt đầu bằng kí tự hoặc dấu gạch dưới. Tên không phân biệt chữ hoa chữ thường. Dựa trên các kiểu dữ liệu cơ bản trong Pascal ở các bài trước, dưới đây là các kiểu biến cơ bản.
Kiểu biến cơ bản trong Pascal
Type | Description |
---|---|
Character | Typically a single octet (one byte). This is an integer type. |
Integer | The most natural size of integer for the machine. |
Real | A single-precision floating point value. |
Boolean | Specifies true or false logical values. This is also an integer type. |
Enumerated | Specifies a user-defined list. |
Subrange | Represents variables, whose values lie within a range. |
String | Stores an array of characters. |
Khai báo biến trong Pascal
Tất cả các biến dùng trong chương trình đều phải được khai báo. Phần khai báo bắt đầu bằng từ khóa VAR. Cú pháp khai báo biến như sau:var variable_list : type;Kiểu dữ liệu (Type) ở cú pháp trên phải là một trong các kiểu dữ liệu của Pascal hoặc được người dùng định nghĩa, mỗi danh sách biến (variable_list) có thể gồm nhiều tên biến cách nhau bởi dấu phẩy (,). Dưới đây là một số khai báo biến đúng:
var age, weekdays : integer; taxrate, net_income: real; choice, isready: boolean; initials, grade: char; name, surname : string;Trong phần trước đã học đến câu lệnh Type để khai báo một kiểu. Một kiểu có thể được xác định bằng tên (hay định danh). Kiểu này có thể được dùng để định nghĩa biến thuộc kiểu đó. Ví dụ:
type days, age = integer; yes, true = boolean; name, city = string; fees, expenses = real;Bây giờ ta sẽ khai báo các biến với kiểu vừa định nghĩa ở trên:
var weekdays, holidays : days; choice: yes; student_name, emp_name : name; capital: city; cost: expenses;Lưu ý sự khác nhau giữa khai báo Type và khai báo Var.
Khởi tạo giá trị cho biến
Các biến được gán cho một giá trị bằng câu lệnh gán. Dưới đây là câu lệnh gán giá trị hằng cho biến. Cú pháp chung như sau:variable_name := value;Mặc định các biến trong Pascal không được khởi tạo là 0. Nó có thể chứa một giá trị rác nào đó. Tốt hơn cả là bạn khởi tạo một giá trị cho các biến trong chương trình. Các biến có thể được gán giá trị ngay từ lúc khai báo. Việc khởi tạo giá trị sau từ khóa Var theo cú pháp dưới đây:
var variable_name : type = value;Một vài ví dụ cụ thể:
age: integer = 15; taxrate: real = 0.5; grade: char = 'A'; name: string = 'John Smith';Chúng ta xem xét một ví dụ về việc sử dụng các kiểu dữ liệu của biến được đề cập phía trên:
program Greetings; const message = ' Welcome to the world of Pascal '; type name = string; var firstname, surname: name; begin writeln('Please enter your first name: '); readln(firstname); writeln('Please enter your surname: '); readln(surname); writeln; writeln(message, ' ', firstname, ' ', surname); end.Khi chương trình trên được thực thi, kết quả sẽ như sau:
Please enter your first name: John Please enter your surname: Smith Welcome to the world of Pascal John Smith
Biến kiểu liệt kê
Khai báo biến kiểu liệt kê:var var1, var2, ... : enum-identifier;Khi bạn khai báo kiểu liệt kê, bạn có thể khai báo các biến thuộc kiểu đó. Ví dụ:
type months = (January, February, March, April, May, June, July, August, September, October, November, December); Var m: months; ... M := January;Dưới đây là ví dụ minh họa:
program exEnumeration; type beverage = (coffee, tea, milk, water, coke, limejuice); var drink:beverage; begin writeln('Which drink do you want?'); drink := limejuice; writeln('You can drink ', drink); end.Khi chạy đoạn mã trên sẽ đưa kết quả như sau:
Which drink do you want? You can drink limejuice
Biến kiểu miền con
Khai báo biến kiểu miền con:var subrange-name : lowerlim ... uperlim;Ví dụ về biến có kiểu miền con:
var marks: 1 ... 100; grade: 'A' ... 'E'; age: 1 ... 25;Dưới đây là ví dụ minh họa:
program exSubrange; var marks: 1 .. 100; grade: 'A' .. 'E'; begin writeln( 'Enter your marks(1 - 100): '); readln(marks); writeln( 'Enter your grade(A - E): '); readln(grade); writeln('Marks: ' , marks, ' Grade: ', grade); end.Chương trình trên chạy sẽ đưa kết quả như sau:
Enter your marks(1 - 100): 100 Enter your grade(A - E): A Marks: 100 Grade: A
0 comments:
Post a Comment