17
BÀI 9: CẤU TRÚC RẼ NHÁNH

Cấu Trúc Rẽ Nhánh

Embed Size (px)

Citation preview

Page 1: Cấu Trúc Rẽ Nhánh

BÀI 9: CẤU TRÚC RẼ

NHÁNH

Page 2: Cấu Trúc Rẽ Nhánh

2

1. Rẽ nhánh 2. Câu lệnh

if - then

3. Câu lệnh ghép 4. Ví dụ

Nội dung

Page 3: Cấu Trúc Rẽ Nhánh

Nêu các bước giải PT bậc hai:

Page 4: Cấu Trúc Rẽ Nhánh

1. Rẽ nhánhVí dụ 1:

Nếu em còn ngủ gật trong lớp thì em sẽ bị phạt

Kết luận: Nếu…thì… Cách diễn đạt ở ví dụ 1 thuộc cấu trúc dạng thiếu

Page 5: Cấu Trúc Rẽ Nhánh

1. Rẽ nhánhVí dụ 2:

Kết luận: Nếu…thì…, nếu…không …thì Cách diễn đạt ở ví dụ 2 thuộc cấu trúc dạng đủ.

Khi tìm nghiệm PTB2: Nếu Delta >= 0 thì sao?

Ngược lại thì sao?

Nếu Delta >= 0 thì PT có nghiệm thực

nếu không thìPT vô nghiệm

Page 6: Cấu Trúc Rẽ Nhánh

1. Rẽ nhánh Kết luận:

Cấu trúc dùng để mô tả các mệnh đề có dạng như trên được gọi là cấu trúc rẽ nhánh thiếu và đủ.

Nhập a, b, c

𝐃≥𝟎?Sai Đúng

Thông báo vô nghiệm, rồi

kết thúc

Tính và đưa ra nghiệm thực, rồi kết thúc

Vẽ sơ đồ thể hiện cấu trúc rẽ nhánh khi giải PTB2:

Page 7: Cấu Trúc Rẽ Nhánh

2. Câu lệnh if - then Cú pháp dạng đủ:

Trong đó: điều kiện là biểu thức logic. câu lệnh 1, câu lệnh 2 là một câu lệnh của Pascal.

if <điều kiện> then <câu lệnh1> else <câu lệnh 2>;

Sơ đồ khối dạng đủ

Điều kiện Câu lệnh 1

ĐúngCâu lệnh 2

Sai

Page 8: Cấu Trúc Rẽ Nhánh

2. Câu lệnh if - then Cú pháp dạng thiếu:

Trong đó: điều kiện là biểu thức logic. câu lệnh là một câu lệnh của Pascal.

if <điều kiện> then <câu lệnh>;

Sơ đồ khối dạng thiếu

Điều kiện Câu lệnh

Đúng

Sai

Khi không đề cập đến việc gì sẽ xảy ra nếu điều kiện không thỏa mãn, ta có cấu trúc như thế nào?

Page 9: Cấu Trúc Rẽ Nhánh

2. Câu lệnh if - then Lưu ý:

Trước từ khóa else không có dấu “ ; ” Sau then và sau else chỉ có một lệnh chương trình

Tìm nghiệm PTB2: bằng 2 cách: dạng thiếu

và dạng đủ

Dạng thiếu:if D < 0 then writeln (‘PT VN’);if D >= 0 then writeln (‘PT có nghiệm’, (

Dạng đủ:if D < 0 then write (‘PT VN’) else write (‘PT có nghiệm’, (

Page 10: Cấu Trúc Rẽ Nhánh

Theo các cú pháp trên thì sau then hoặc else phải là một câu lệnh, nhưng trong nhiều trường hợp lại có nhiều câu lệnh. Vậy theo các bạn, ta nên làm như thế nào?

Nhóm các câu lệnh lại thành một lệnh bằng câu lệnh ghép

Page 11: Cấu Trúc Rẽ Nhánh

3. Câu lệnh ghépSau then hoặc else

nếu muốn thực hiện nhiều hơn một câu lệnh thì ta phải ghép các câu lệnh đó lại thành một gọi là câu lệnh ghép.

Cú pháp

begin<các câu lệnh>;end;

Viết lệnh tìm nghiệm PTB2:

bằng câu lệnh ghép.

if D < 0 then writeln (‘PT VN.’) else begin x1 := (( x2 := end;

Page 12: Cấu Trúc Rẽ Nhánh

ÂM MỸ DUNG – BÙI THỊ KIM NGÂN

4. Ví dụTìm số ngày của năm N, biết rằng năm nhuận là năm chia hết cho 400 hoặc chia hết cho 4 nhưng không chia hết cho 100. 

Page 13: Cấu Trúc Rẽ Nhánh

4. Ví dụ

Xác định bài toán:

Ý tưởng

• Input: N nhập từ bàn phím• Output: Đưa số ngày của năm N ra màn hình

• Kiểm tra N chia hết cho 400 hoặc (N chia hết cho 4 và không chia hết cho 100). Nếu đúng thì thông báo năm N có 366 ngày. Nếu sai thông báo năm N có 365 ngày

Page 14: Cấu Trúc Rẽ Nhánh

4. Ví dụThuật toán b) Sơ đồ khối

a) Cách liệt kê• B1: Nhập N• B2: Nếu chia hết cho

400 hoặc (N chia hết cho 4 và không chia hết cho 100) thì thông báo năm N có 366 ngày rồi kết thúc.

• B3: Thông báo năm N có 365 ngày rồi

kết thúc.

Nhập N

(N mod 400 = 0) or ((N mod 4 = 0) and (N mod 100 <>0))

Sai Đúng

Thông báo năm N có 365 ngày

rồi kết thúc

Thông báo năm N có 366 ngày rồi kết thúc

Page 15: Cấu Trúc Rẽ Nhánh

LÂM MỸ DUNG – BÙI THỊ KIM NGÂN

4. Ví dụBài giải

Page 16: Cấu Trúc Rẽ Nhánh

Củng cố bài học

Page 17: Cấu Trúc Rẽ Nhánh

Chúc các em học tốt