Câu Lệnh - THẾ GIỚI TIN HỌC

1. Câu lệnh (statement)

        a.Trong một chương trình Pascal, sau phần mô tả dữ liệu là phần mô tả các câu lệnh. Các câu lệnh có nhiệm vụ xác định các công việc mà máy tính phải thực hiện để xử lý các dữ liệu đã được mô tả và khai báo.

        b.Câu lệnh được chia thành câu lệnh đơn giản và câu lệnh có cấu trúc.

(xem phần bài đọc thêm)

– Câu lệnh đơn giản

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

+ Ra dữ liệu(OUTPUT)    :           Write, Writeln

+ Lệnh gán      :           :=

+ Lời gọi chương trình con     (gọi trực tiếp tên của chương trình con)

+ Xử lý tập tin :            RESET, REWRITE, ASSIGN …

                – Câu lệnh có cấu trúc

+ Lệnh ghép    :           BEGIN .. END

+ Lệnh chọn    :           IF .. THEN .. ELSE, CASE .. OF .

+ Lệnh lặp       :           FOR .. TO .. DO, REPEAT .. UNTIL, WHILE .. DO

         c.Các câu lệnh phải được ngăn cách với nhau bởi dấu chấm phẩy ( ; ) và Các câu lệnh có thể viết trên một dòng hay nhiều dòng.

2. Cấu trúc tuần tự

         a.Lệnh gán (Assignment statement)

Một trong các lệnh đơn giản và cơ bản nhất của Pascal là lệnh gán. Mục đích của lệnh này là gán cho một biến đã khai báo một giá trị nào đó cùng kiểu với biến.

* Cách viết:

                        <Tên_biến>  :=  <biểu thức>  ;

Ví dụ 6.12:       Khi đã khai báo

VAR

c : Char ;

i,j : Integer ;

x, y : Real ;

p, q : Boolean ;

thì ta có thể có các phép gán sau :

c := ‘A’ ;

c := Chr(90) ;

i := (35+7)*2 mod 4 ;

i := i div 7 ;

x := 0.5 ;

x := i + 1 ;

q := i > 2*j +1 ;

q := not p ;

* Ý nghĩa:

Biến và các phát biểu gán là các khái niệm quan trọng của một họ các ngôn ngữ lập trình mà Pascal là một đại diện tiêu biểu. Chúng phản ánh cách thức hoạt động của máy tính hiện nay, đó là:

– Lưu trữ các giá trị khác nhau vào một ô nhớ tại những thời điểm khác nhau.

– Một quá trình tính toán có thể coi như là một quá trình làm thay đổi giá trị của một (hay một số) ô nhớ nào đó, cho đến khi đạt được giá trị cần tìm.

         b.Lệnh ghép (Compound statement)

Một nhóm câu lệnh đơn được đặt giữa 2 chữ BEGIN và END sẽ tạo thành một câu lệnh ghép.

Trong Pascal ta có thể đặt các lệnh ghép con trong các lệnh ghép lớn hơn bao ngoài của nó và có thể hiểu tương tự như cấu trúc ngoặc đơn ( ) trong các biểu thức toán học.

* Sơ đồ:

Hình 6.2:   Sơ đồ cấu trúc BEGIN .. END;

Ở hình minh họa trên ta dễ thấy các nhóm lệnh thành từng khối (block). Một khối lệnh bắt đầu bằng BEGIN và chấm dứt ở END; . Trong một khối lệnh cũng có thể có các khối lệnh con nằm trong nó. Một khối chương trình thường được dùng để nhóm từ 2 lệnh trở lên để tạo thành một <Công việc> của các lệnh có cấu trúc, ta có thể gặp khái niệm này trong nhiều ví dụ ở các phần sau.

3. Cấu trúc rẽ nhánh

         a.Lệnh IF .. THEN .. và Lệnh IF .. THEN .. ELSE..

*  Lưu đồ diễn tả các lệnh và ý nghĩa cách viết:

Hình 6. 3: Lệnh IF <Ðiều kiện> THEN <Công việc>;

Hình 6. 4:   Lệnh IF .. THEN .. ELSE ..;

Chú ý:

– Ðiều kiện là một biểu thức Boolean.

– Nếu <Công việc>sau THEN hoặc ELSE có nhiều hơn một lệnh thì ta phải gói  lại trong BEGIN .. END;

– Toàn bộ lệnh IF .. THEN .. ELSE xem như 1 lệnh đơn.

Ví dụ 6.13:  Tính căn bậc 2 của một số

PROGRAM Tinh_can_bac_hai ;

VAR

a : Real ;

BEGIN

Write ( Nhập số a =  ) ;

Readln(a) ;

IF a < 0 THEN

Write (‘ a : 10 : 2 , là số âm nên không lấy căn được !!! ‘)

ELSE

Writeln (‘ Căn số bậc 2 của , a : 2 : 2 , la , SQRT(a) :10 : 3 ‘);

Writeln (‘ Nhấn ENTER để thoát … ‘) ;

Readln; {Dừng màn hình để xem kết quả}

END.

Ghi chú:

Trong chương trình trên, a ta thấy có dạng a :m :n với ý nghĩa m là số định khoảng mà phần nguyên của a sẽ chiếm chỗ và n là khoảng cho số trị phần thập phân của a.

         b.Lệnh CASE .. OF

* Lưu đồ biểu diễn:

Hình 6.5:  Lưu đồ lệnh CASE .. OF

* Cách viết, ý nghĩa:

Cách viết                                             Ý nghĩa

CASE <Biểu thức > OF                 Xét giá trị của biểu thức chọn

GT1 : Công việc 1 ;                 Nếu có giá trị 1 (GT1) thì thi hành Công việc 1

…………………..                         ……………………………..

GTi  : Công việc i ;                  Nếu có giá trị i  (GT i) thì thi hành Công việc i

…………………..                         ………………………………

ELSE  Công việc 0 ;                       Nếu không có giá trị nào thỏa thì thực hiện Công việc 0

END;

Ghi chú:

– Lệnh CASE .. OF có thể không có ELSE

– Biểu thức chọn là kiểu rời rạc như Integer, Char, không chọn kiểu Real

– Nếu muốn ứng với nhiều giá trị khác nhau của biểu thức chọn vẫn thi hành một lệnh thì giá trị đó có thể viết trên cùng một hàng cách nhau bởi dấu phẩy (,) : Giá trị k1, k2, …, kp  : Lệnh k ;

Ví dụ 6.14:       PROGRAM Chon_mau ;

VAR     color : char ;

BEGIN

write (‘ Chọn màu theo một trong 3 ký tự đầu là R / W / B  ‘) ;

readln ( color) ;

CASE   color   OF

‘R’ ,’r’   :  write (‘ RED = màu đỏ ‘) ;

‘W’, ‘w’ :  write (‘ WHITE = màu trắng ‘) ;

‘B’ , ‘b’   :  write (‘ BLUE = màu xanh dương ‘) ;

END ;

Readln;

END.

                                 (trích từ websvr1)

Từ khóa » Câu Lệnh Trong Tin Học