Khai báo hằng, khai báo biến và biểu thức câu lệnh

Xin chào các bạn, Hôm nay WIKIPASCAL sẽ hướng dẫn các bạn về Khai báo hằng, khai báo biến và biểu thức câu lệnh trong Pascal
Khai bao hang, khai bao bien va bieu thuc cau lenh - Wiki Pascal
Khai báo hằng, khai báo biến và biểu thức câu lệnh


I – Khai báo hằngbiến

1. Khai báo hằng:

Hằng là các đại lượng không thay đổi giá trị. Có các loại hằng số (nguyên và thực), hằng kí tự, hằng Boolean. Khai báo hằng : các hằng (hằng số, hằng kítự, hằng Boolean) được khai báo bằng một tên đặt trong phần khai báo Const ở đầu chương trình.​


Cách viết : Tên_hằng := Giá_trị_của_hằng ;


Một dòng khai báo hằng được kết thúc bằng dấu chấm phẩy. Tên hằng được viết theo quy tắc viết tên đã trình bày ở chương trước.​


Ví dụ :


Code:
Const

  B = True ; (* hằng Boolean *)

  A = 5 ;  (* hằng số nguyên *)

  Pi = 3.14 ; (* hằng số thực *)

  CCC = ‘Z’ ; (* hằng kí tự *)



* Các hằng giữ nguyên giá trị của nó trong suốt chương trình.​


2. Khai báo biến:

Biến (variance) là đại lượng có thể thay đổi giá trị. Tên biến của chương trình là tên của ô nhớ cất giữ dữ liệu.Khác với hằng, biến có thể thay đổi đựoc giá trị của nó. Các biến được khai báo bằng cách đặt tên các biến vào phần khai báo biến ở đầu chương trình, sau từ khóa Var.​



Cách viết : Tên_biến : Kiểu_dữ_liệu_của_biến ;


Dấu hai chấm bắt buộc phải có để ngăn cách hai phần của khai báo biến. Dấu chấm phẩy kết thúc một dòng khai báo.​

Nhiều biến có cùng kiểu có thể đựoc khai báo với nhau bằng cách viết tên các biến đặt cách nhau qua dấu phẩy (,) như các biến M23, A25, AAA ở ví dụ dưới đây :​


Code:
Var 

   M23, A25, AAA : Real ;

  My_name : String [ 25 ] ;

  Y : Boolean ;

  X : Integer ;


II – Định nghĩa kiểu dữ liệu mới

a) Chúng ta đã làm quen với khái niệm kiểu dữ liệu ở trên. Đối với các kiểu dữ liệu cơ sở (real, Integer, Byte, Char, Boolean) đã được Pascal định nghĩa sẵn nên khi khai báo biến ta có thể dùng trực tiếp các kiểu dữ kiệu này ngay. Còn các kiểu dữ liệu khác thì ta phải định nghĩa ra, mô tả một cách tường minh trong phần khai báo của chương trình sau từ khóa Type. Sau đó sẽ khai báo các biến thuộc kiểu dữ liệu mới mô tả. Chúng ta sẽ dần dần tìm hiểu sau này.



b) Cách khai báo


Code:
Type

Tên kiểu = Mô tả xây dựng kiểu ;




Ví dụ:

Code:
Type

SoNguyen = integer ;

Ten = String[11] ;

Tuoi = 1.. 100 ;

Color = (Red, Blue, Green)

Thu = (ChuNhat, ThuHai, ThuBa, ThuTu, ThuNam, ThuSau, ThuBay) ;




Và khi đã khai báo kiểu thì ta có quyền sủ dụng để khai báo biến.



Ví dụ:



Code:
Var

I, J : SoNguyen ;

Khach_hang : Ten ;

T : Tuoi ;

Mau : Color ;

Ngay_hoc : Thu ;


III – Biểu thức (Expression)

Biểu thức (Expression) là một công thức tính toán để có một giá trị theo một quy tắc toán học nào đó. Một biểu thức bao gồm : toán tử (operator) và toán hạng (operand). Toán tử đựoc viết ra bằng dấu phép toán. Toán hạng có thể là hằng, là hàm, là biến. Các phần tử của biểu thức có thể được phân thành số hạng, thừa số, biểu thức đơn giản.​



Ví dụ:
Code:
3 + PI * Sin ( x) ;


Trong ví dụ này, các toán tử (các phép toán) la phép cộng (+) và phép nhân (*). Các toán hạng là hằng số 3 và PI, là hàm Sin với đối số là biến X.

* Biểu thức số học là biểu thức có giá trị bằng số (là Integer, Byte, Real)

* Biểu thức logic Bun ( Boolean ) là biểu thức có giá trị là True hoặc False.

* Một biểu thức chứa các toán tử quan hệ ( <>, <, >, <=, >=, = ) đựoc gọi là một biểu thức Boolean đơn giản hay một biểu thức quan hệ. Các toán hạng trong biểu thức quan hệ có thể là các số nguyên, số thực, kí tự và chúng phải tương thích nhau về kiểu.​



Ví dụ minh họa về trình tự tính toán :



Code:
7 + 3 * 5 = 7 + ( 3 * 5 ) = 22

5 / 2 * 3 = ( 5 / 2 ) * 3 = 7.5

18 Div 4 * 4 = ( 18 Div 4 ) * 4 = 16

2 * ( 3 + 5 ) = 2 * 8 = 16




Ví dụ: Để giải phương trình bậc hai ta có thể phát biểu điều kiện về các hệ số A, B, C như sau :


Nếu ( (A = 0) And (B = 0) And (C = 0) ) = True

thì bài toán không có lời giải.

hoặc có thể viết gọn hơn :

Nếu (A = 0) And (B = 0) And (C = 0)

thì bài toán không có lời giải.​

IV – Câu lệnh và lệnh ghép

1. Câu lệnh ( Instruction, Statement ):

Bên cạnh phần mô tả dữ liệu là phần là phấn lệnh (intruction) của chương trình. Phần này xác định các công việc mà chương trình phảo thực hiện để xử lý các dữ liệu đã được mô tả và khai báo. Các câu lệnh cách nhau bằng dấu chấm phẩy. Câu lệnh chia ra hai loại :

- Câu lệnh đơn giản : là những câu lệnh không chứa các lệnh khác. Đó là phép gán, lời gọi chương trình con loại Procedure ( thủ tục ) bao hàm rất nhiều quá trình xử lý khác nhau như :

+ Vào dữ liệu : Read, Readln

+ Ra dữ liệu : Write, Writeln

+ Xử lý tập tin : Reset, Rewrite, Assign

- Câu lệnh có cấu trúc : là khối lệnh, lệnh thử và rẽ nhánh, lệnh lặp.

Lệnh hợp thành hay lệnh ghép bao gồm nhiều lệnh đơn giản và có khi có cả lệnh ghép bên trong. Các lệnh này được thực hiện theo thứ tự như đã viết trong lệnh ghép Nó bắt đầu bằng từ Begin và kết thúc bằng từ End.

Mỗi một câu lệnh của Pascal bao giờ cũng được đặt cách nhau bằng dấu chấm phẩy (;). Dấu chấm phẩy chỉ có tác dụng ngăn cách các câu lệnh chứ không phải là dấu kết thúc câu lệnh và nó không phụ thuộc vào câu lệnh.Pascal không bắt buộc viết mỗi câu lệnh một dòng. Vấn đề là chúng ta phải trình bày chương trình sau cho đẹp, rõ ràng, thể hiện được thuật toán ...​


Ví dụ : chúng ta có thể viết liền nhau trên một dòng chương trình :

Code:
X := 2 ; Y := 3 < 5 * 8 ; Z := Pi ;



hoặc viết thành từng dòng :

Code:
X := 2 ;

Y := 3 < 5 * 8 ;

Z := Pi ;



* Phép gán :

Phép gán được dùng để gán giá trị của một biểu thức, một hằng vào một biến.

Phép gán được kí hiệu là := .


Code:
 Biến := Biểu_thức ;



Vế trái của phép gán chỉ có thể là biến mà thôi.​


Ví du:


X := 6 ; (* có nghĩa là biến X nhận giá trị bằng 6 *)

Y := True ; (* có nghĩa là biến Y nhận giá trị True *)

X := X + 3 ; (* có nghĩa là giá trị của X sẽ bằng giá trị của X cộng với 3. Ví dụ nếu lúc đầu X có giá trị là 6 thì sau khi thực hiện câu lệnh này, X sẽ có giá trị là 9. Xin bạn nhớ lại cho X chỉ là tên của một ô nhớ. X + 3 đựoc hiểu là lấy nội dung của ô nhớ X đem cộng với 3, sau đó lại để vào ô nhớ X *)


* Tính tương thích của các kiểu dữ liệu

Nguyên tắc chung khi dùng phép gán thì kiểu của biến và kiểu của biểu thức ở vế phải phải giống nhau.


Ví dụ : Một biến nguyên I không thể nhận một giá trị kí tự được.


I := 'A' ; là điều không thể chấp nhận được.


* Ngoại lệ :

Tuy một biến nguyên không thể nhận giá trị là một số thực nhưng một số thực thì lại có thể nhận một giá trị nguyên.



X := 6.0 ; là sai vì X là biến Integer, 6.0 là giá trị thực.

M23 := 6 ; là đúng vì M23 là biến thực, nó có thể nhận trực tiếp giá trị nguyên. M23 sẽ chứa số 6 dưới dạng số thực 6.00000000E + 00.​

2. Lệnh ghép (Compound Statement):

Một nhóm lệnh đơn giản được đặt giữa hai chữ Begin , End sẽ tạo thành một câu lệnh hợp thành hay lệnh ghép với mẫu viết như sau :​


Code:
Begin

  Câu lệnh 1 ;

  Câu lệnh 2 ;

  ..................

  Câu lệnh N ;

End ;


Một lệnh ghép hiểu theo một nghĩa nào đó giống như việc ta đặt cặp dấu ngoặc đơn vào một biểu thức. Cấu trúc Begin...End của câu lệnh ghép sẽ cho ta thấy rõ hơn tính có cấu trúc của ngôn ngữ Pascal : nhóm các lệnh thành từng khối. Một khối lệnh chỉ có một đầu vào (qua chữ Begin) và một đầu ra (qua chữ End).​

Nhận xét

Bài đăng phổ biến từ blog này