Phần 24 này chúng ta sẽ thảo luận về cấu trúc rẽ nhánh và lựa chọn

Cấu trúc rẽ nhánh có lẽ phải gọi là “trái tim” của Lập trình nói chung. Trừ những chương trình quá đơn giản chỉ có ý nghĩa học tập, những chương trình đích thực đều phải có cấu trúc rẽ nhánh.

CẤU TRÚC RẼ NHÁNH

1.Dạng Không Đầy Đủ
Cú pháp: IF Điều kiện THEN Công việc;
Nếu điều kiện là đúng thì thực hiện công việc (ngược lại là điều kiện sai thì không thực thi công việc).

2.Dạng Đầy Đủ
Cú pháp: IF Điều kiện THEN Công việc 1
ELSE Công việc 2;
Nếu điều kiện là đúng thì thực hiện công việc 1, ngược lại là điều kiện sai thì thực thi công việc 2. Chú ý trước ELSE không có dấu ; (chấm phẩy).

CẤU TRÚC LỰA CHỌN
1.Dạng Không Đầy Đủ
Cú pháp: CASE biến OF
Hằng 1a, 1b,…, 1x: Công việc 1;
Hằng 2a, 2b,…, 2x: Công việc 2;

Hằng na, nb,…, nx: Công việc n;
END;

Ý nghĩa: Trước hết kiểm tra giá trị của biến có bằng một trong các hằng 1a, 1b,…, 1x hay không. Nếu đúng thì thực hiện công việc 1, rồi kết thúc lệnh (thực hiện tiếp các lệnh sau END; nếu có). Nếu không, thì kiểm tra giá trị của biến có bằng một trong các hằng 2a, 2b,…, 2x hay không. Nếu đúng thì thực hiện công việc 2, rồi kết thúc lệnh (thực hiện tiếp các lệnh sau END). Nếu không thì cứ tiếp tục kiểm tra như vậy. Nếu giá trị của biến không bằng bất cứ hằng nào từ 1a đến nx thì câu lệnh CASE kết thúc mà không làm gì cả.

2.Dạng Đầy Đủ
Cú pháp: CASE biến OF
Hằng 1a, 1b,…, 1x: Công việc 1;
Hằng 2a, 2b,…, 2x: Công việc 2;

Hằng na, nb,…, nx: Công việc n;
ELSE

END;
Ý nghĩa: Khác dạng không đầy đủ ở chỗ nếu giá trị của biến không bằng bất cứ hằng nào từ 1a đến nx thì câu lệnh CASE sẽ thực thi công việc N+1.