RÏ nh¸nh TL1: Ngày mai nếu trời không mưa thì Châu sẽ đến nhà Ngọc.. VD 2: Ngày mai nếu trời không mưa thì Châu sẽ đến nhà Ngọc, nếu mưa thì Châu sẽ gọi điện để trao đổi bài Thuộc vào
Trang 1Thời gian 1 tiết
Trang 21 RÏ nh¸nh
TL1: Ngày mai nếu trời không mưa thì Châu sẽ đến nhà Ngọc.
VD 2: Ngày mai nếu trời không mưa thì Châu sẽ đến nhà Ngọc,
nếu mưa thì Châu sẽ gọi điện để trao đổi bài
Thuộc vào dạng điều kiện thiếu
Nếu…… thì……
Nếu…… thì…….nếu không thì….
Thuộc vào dạng điều kiện đủ:
Trang 3VÝ dơ: Gi¶i ph ¬ng tr×nh bËc hai ax2+bx+c=0 (a ≠ 0)
D:=b*b-4*a*c
D>=0?
Thơng báo VN Kết thúc
Cấu trúc rẽ nhánh là một
điều khiển chọn thực hiện
hay không thực hiện một
công việc phù hợp với
điều kiện đang xảy ra
Cấu trúc rẽ nhánh?
Trang 4Cấu trúc rẽ nhánh là một điều khiển chọn thực hiện hay không thực hiện một công việc phù hợp với điều kiện đang xảy ra
Dạng điều kiện thiếu
Nếu…… thì……
Nếu…… thì…….nếu khơng thì….
Dạng điều kiện đủ:
Trang 5Nếu <ĐK> thỡ <CV> Nếu <ĐK> thỡ <CV1>nếu khụng thỡ <CV2>
IF <ĐK> THEN <CL>; IF <ĐK> THEN <CL1> ELSE <CL2>;
- IF, THEN, ELSE là các từ khoá.
- Điều kiện là biểu thức có giá trị lôgic.
- Câu lệnh, CL1,CL2 là một lệnh của TP.
Trong đó:
SƠ ĐỒ KHỐI
Trang 6Điều kiện Câu lệnh 1
Câu lệnh 2
Ý nghĩa câu lệnh rẽ nhánh:
Kiểm tra ĐK nếu đúng thì thực hiện CL, ngược lại thì
bỏ qua câu lệnh và thoát khỏi lệnh if-then
Dạng thiếu:
Dạng đủ:Kiểm tra nếu ĐK đúng thì thực hiện CL1, ngược lại thì thực hiện CL2;
L u ý:- Sau Then và sau else chỉ có 1 c©u lệnh chương trình.
- Trước Else không chứa dấu “;”
Trang 7VD2: Nếu điểm trung bình >= 5 thì xuất ra màn hình thông báo “bạn đã đậu”
IF ĐTB>= 5 THEN WRITE(‘Ban đa đau’);
VD1: Kiểm tra, nếu n chia hết cho 2 thì xuất ra màn hình thông báo ‘n lµ so
chan’ IF n mod 2 = 0 THEN write(‘n chan’);
VD4: Kết luận nghiệm PT bậc hai:
IF D<0 THEN writeln(‘phuong trinh vo nghiem’)
ELSE writeln(‘phuong trinh co nghiem’);
2 CÂU LỆNH IF – THEN
2 CÂU LỆNH IF – THEN
Trang 8Theo cú pháp, sau một số từ khóa (như THEN, ELSE) phải là một câu lệnh
Nhưng trong nhiều trường hợp, các thao tác sau những tên dành riêng đó khá phức tạp, đòi hỏi không phải chỉ một mà là nhiều câu lệnh để mô tả.
Trang 104 MỘT SỐ VÍ DỤ
* Input: Các hệ số a, b, c nhập từ bàn phím.
* Output: Đưa ra màn hình các nghiệm PT hoặc thông báo
“Phương trình vô nghiệm”
Yêu cầu đề bài:
Ví dụ 1: Viết chương trình tìm nghiệm thực của phương trình bậc hai: ax2 + bx + c = 0 với a≠0
Trang 11Câu lệnh ghép sau Else
Sau End có dấu “;”
Sau Else không có dấu “;”
Trang 13* Input: N nhập từ bàn phím.
* Output: Đưa số ngày của năm N ra màn hình.
Yêu cầu đề bài:
Trang 15C ng c ủ ố
“ NÕu … th× … ng îc l¹i …” gäi lµ cÊu tróc rÏ nh¸nh.
Trang 16Trắc nghiệm
Câu 1: Cho biết kết quả hiển thị lên màn hình của đoạn chương trình sau:
Var a, b,max: word;
A:= 100; b:=5;
Max:=a;
If b>a then max:=b;
Write(‘so lon nhat la: ‘, max);
A so lon nhat la: max B 100
C so lon nhat la: 100 d so lon nhat la: 5
Đáp án: Câu C
Trang 17Trắc nghiệm
Câu 2 : Đoạn chương trình sau đưa ra màn hình kết quả gì?
Var a,b: integer;
Trang 20Bµi tËp v nh ề à :
Viết câu lệnh rẽ nhánh tính:
1
2 1
+
+ +
=
x
x y
2 2
y x
y
x z
Nếu nếu nếu