Bài 9
(2 tiết)
Giáo án điện tử tin học lớp 11
1. Rẽ nhánh
Mời các bạn cùng
xem và tìm
hiểu các tình
huống sau nhÐ!
à! Nếu ngày
mai ma thì tớ
Nếu ngày
nghỉ, nếu
mai ừm,
ma
không ma thì
thì tớ
tớ đến nhàđể tớ
nghỉ.
nghĩ
cậu học nhé.
đÃ.
Này, ngày
mai cậu có
đi häc
nhãm
kh«ng?
Nếu ...
thì
Nếu
thì, nếu
không thì
Cấu
Cấu trúc
trúc dùng
dùng để
để mô
mô tả
tả các
các mệnh
mệnh đề
đề có
có dạng
dạng nh
nh trên
trên
gọi
gọi là
là
Ví dụ: Giải phơng trình bậc hai ax2+bx+c=0
(a0)
HÃy nêu các
bớc giải ph
ơng trình
bậc hai?
-
Nhập hệ số a,b,c
Tính Delta=b2 - 4ac
Nếu Delta âm thì thông
báo PT vô nghiệm, ngợc lại
tính và ®a ra nghiÖm.
Các em hÃy vẽ
sơ đồ thuật
toán giải phơng
trình bậc 2 (víi
a 0)
NhËp a, b, c
TÝnh Delta = b2 – 4ac
Sai
KiĨm tra
Đúng
Delta < 0
Sau
khi
tính
Delta, tuỳ thuộc
vào giá trị Delta,
một
trong
hai
thao tác sẽ thực
hiện.
Tính và
đa ra
nghiệm
Thông
báo vô
nghiệm
Kết thúc
2. Câu lệnh IF - THEN
IF <Điều kiện> THEN
lệnh>;
a. Dạng
thiếu
Trong đó: - Điều kiện là biểu thức quan hệ hoặc biểu thức
lôgic.
- Câu lệnh là một lệnh của TP.
Đúng
Điều kiện
Câu lệnh
Sai
<điều
kiện>
<câu lệnh>
ợc
VíNếuIF
a mod
2=0 đúng
THENthì
Writeln(
a la sođchan);
thực hiện,
dụ:
IF <Điều kiện> THEN <Câu lệnh 1> ELSE
<Câu lệnh 2>;
b. Dạng
đủ
Sai
Đúng
Điều kiện
Câu lệnh 2
Câu lệnh 1
Nếu <điều kiện> đúng thì <câu lệnh1> đợc
Ví
IF a mod 2=0 THEN Writeln(a là so
thực hiện,
dụ:
chan) ngợc lại thì <câu lệnh 2> đợc thực
HÃy dùng câu
lệnh IF THEN
viết lệnh để
xét các trờng
hợp của DELTA
IF Delta<0 THEN Writeln(Phơng trình vô
nghiệm)
ELSE
X1:= (-B + SQRT(Delta))/(2*A);
X2:= (-B - SQRT(Delta))/(2*A);
Writeln(‘ Nghiem X1= ’, X1:5:1);
Writeln(‘ Nghiem X2= ’, X2:5:1);
3. C©u lƯnh ghÐp
Trong TP cho phÐp gép nhiỊu c©u lệnh thành một
câu lệnh gọi là câu lệnh ghép, có dạng:
BEGIN
BEGIN
<
< Các
Các câu
câu lệnh>;
lệnh>;
END;
END;
Ví dụ:
IF Delta<0 THEN Writeln(Phơng trình vô
nghiệm)
ELSE
BEGIN
X1:= (-B + SQRT(Delta))/(2*A);
X2:= (-B - SQRT(Delta))/(2*A);
Writeln(‘ Nghiem X1= ’,
X1:5:1);
4. Một số ví dụ
Ví dụ
1
:
Program GPTB2;
hÃy hoàn
UsesEm
crt;
thiện chơng
Var trình
. . . ; giải ph
ơng trình bậc 2
(a 0) theo dµn ý
BEGIN
sau:
. . . NhËp vµo 3 hƯ sè a,b,c .. .
Delta :=. . .;
Nếu Delta<0 thì Writeln(PTVN)
ngợc lại Tính vµ in
nghiƯm;
Readln;
END.
Ví dụ 2: 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 4 nhng không
chia hết cho 100.
HÃy xác
định Input
và Output
của bài?
Input: Nhập N từ bàn phím.
Output: Đa số ngày của năm N ra màn
hình.
Nếu N chia hết cho 400 hoặc N chia
hết cho 4 nhng không chia hết cho
100
thì
In ra số ngày của năm nhuận là
366,
ngợc lại In ra số ngµy lµ 365
Nhập
vào số
NĂM
cầncủa
tính
số nhuận,
lợng
Viếtnhận
thì
điều
kiện:
ngày
năm
Em
hÃy khai báo biến cho bài toán
ngày
Nếu
ng
N
chia
nhận
hết
số cho
ngày400
củahoặc
năm th
chia
In ợc
ra lại
kết
quả?
trên?
hết cho 4 nhng không chia hết cho
ờng.
100
HÃy nhớ
IF <điều kiện> THEN
<Câu lệnh>;
IF <điều kiện> THEN
lệnh 1>
lệnh2>;
Cấu trúc mô tả các mệnh
đề:
Nếu thì
Nếu thì ngợc lại
gọi là cấu trúc rẽ nhánh.
Lệnh rẽ nhánh dạng thiếu
Lệnh rẽ nhánh dạng đủ
ELSE
Câu lệnh ghép
BEGIN
<Các câu lệnh>;
END;