Phần trước là tổng hợp lại lý thuyết. Chúng ta sẽ xét vài ví dụ trong phần này

1/Giả sử ta cần rẽ nhánh với câu hỏi đơn giản sau
-Chia số a cho số b
-NẾU b khác không thì TRẢ LỜI KẾT QUẢ
-Nếu b = 0 thì KHÔNG LÀM GÌ CẢ

Rõ ràng ta sẽ cần lệnh IF
Đây là ví dụ

program Chia_Hai_So;
Var a,b: Integer;
Begin
Write( ‘Nhập a: ’); Readln(a);
Write( ‘Nhập b: ‘); Readln(b);
If b <> 0 then
Write( ‘Thương hai số vừa nhập: ’,a/b:5:2);
Readln;
End.

Phát triển chương trình trên thêm một bước, thay vì KHÔNG LÀM GÌ CẢ, ta sẽ trả lời người dùng là không thể chia cho một số 0. Ta cần phải sử dụng cấu trúc IF…ELSE

program Chia_Hai_So2;
Var a,b: Integer;
Begin
Write( ‘Nhập a: ’); Readln(a);
Write( ‘Nhập b: ‘); Readln(b);
If b <>0 then
Write( ‘Thương hai số vừa nhập: ’,a/b:5:2);
Else
Write( ‘Không thể chia cho 0’ );
Readln;
End.

2/Một bài toán khác: Viết chương trình nhập vào một tháng, sau đó in lên màn hình tháng đó có bao nhiêu ngày. Có lẽ bạn cũng sẽ đoán ra la ta cần sử dụng cấu trúc lựa chọn CASE. Lưu ý, bài toán này vẫn có thể sử dụng IF…ELSE, ví dụ tháng chẵn mà nhỏ hơn 7 thì sao, tháng chẵn lớn hơn 7 thì sao….Tuy nhiên ở đây chúng ta sẽ dùng CASE. Điều này cũng cho ta thấy, cùng một bài toán có thể có rất nhiều lời giải khác nhau, bạn không cần cứng nhắc theo một kiểu, cứ mặc sức “sáng tạo”

program Ngay_Thang;
Var T: Integer;
Begin
Write( ‘Nhập vào một tháng: ’); Readln(T);
CASE T OF
1, 3, 5, 7, 8, 10, 12: Write( ‘Tháng có 31 ngày.’);
4, 6, 9, 11: Write( ‘Tháng có 30 ngày.’);
2: Write( ‘Tháng có 28 (nhuần 29) ngày.’);
End;
Readln;
End.