Kiến thức - Học sinh biết đợc ý nghĩa của cấu trúc rẽ nhánh.. - Học sinh biết đợc cấu trúc chung của cấu trúc rẽ nhánh.. - Học sinh biết sử dụng đúng hai dạng cấu trúc rẽ nhánh trong lập
Trang 1Danh s¸ch nhãm 4
1 Ph¹m TuÊn Anh
2 Ph¹m V¨n Huy
3 Gi¸p V¨n Khiªm
4 NguyÔn ThÞ Loan A
5 Lu V¨n Long
6 NguyÔn ThÞ NghÜa
7 NguyÔn ThÞ Nhung A
8 TrÇn ThÞ Trang
9 TrÇn DiÖu Thuý
10 §ç ThÞ Thanh V©n
11 §ç ThÞ Xu©n
12 TrÇn ThÞ YÕn
Trang 2Giáo án lý thuyết - Nhóm 4
Bài 9: Cấu trúc rẽ nhánh
Ngày soạn:
Ngày giảng:
Ngời dạy:
Giáo viên hớng dẫn:
II Mục đích, yêu cầu 1 Kiến thức - Học sinh biết đợc ý nghĩa của cấu trúc rẽ nhánh - Học sinh biết đợc cấu trúc chung của cấu trúc rẽ nhánh - Học sinh biết sử dụng đúng hai dạng cấu trúc rẽ nhánh trong lập trình: dạng thiếu và dạng đủ 2 Kỹ năng - Bớc đầu sử dụng đợc cấu trúc rẽ nhánh If Then Else trong ngôn ngữ lập trình Pascal để viết chơng trình giải quyết đợc một số bài toán đơn giản III Chuẩn bị của giáo viên và học sinh 1 Chuẩn bị của giáo viên - Giáo án - Phiếu học tập 2 Chuẩn bị của học sinh - Sách giáo khoa tin học 11 IV Hoạt động dạy học 1 Lên lớp Kiểm tra sĩ số: Tổng số: Vắng:
Có phép: Không phép:
2 Triển khai bài mới • Hoạt động 1: Tìm hiểu ý nghĩa của tổ chức rẽ nhánh.
Hoạt động của giáo viên Hoạt động của học sinh Thời gian
GV: Khi đến ngã ba đờng cùng
một lúc chúng ta có thể đi đợc
nhiều ngả không?
HS: Trả lời câu hỏi
GV: Ta chỉ đợc phép lựa chọn
1 trong 2, nếu đi ngả này thì
2
Trang 3không đi đợc ngả kia.
GV: Yêu cầu học sinh đọc ví
dụ trong SGK
HS: Đọc ví dụ GV: Em hãy đa ra cấu trúc
chung cho cách diễn đạt ở VD1
HS: Nếu thì
GV: Em hãy đa ra cấu trúc
chung cho cách diễn đạt ở VD2
GV: Chia lớp thành 3 nhóm, đa
ra 3 bài toán Mỗi nhóm sẽ cùng
nhau thảo luận bài toán của nhóm
mình rồi cử đại diện lên bảng
HS: Nếu thì không thì
HS: Thảo luận theo nhóm
- Bài toán 1: Khi đa ra một
điểm số trong học tập, hãy xác
định điểm đó có hợp lệ hay
không? (0<= điểm hợp lệ<= 10)
Hãy trình bày thuật toán ở dạng
sơ đồ khối?
- Nhóm 1:
Đúng Sai
- Bài toán 2: Kiểm tra hệ số a
xem có thoả mãn phơng trình
bậc hai hay không? Trình bày
thuật toán ở dạng sơ đồ khối
- Nhóm 2:
Đúng Sai
- Bài toán 3: Kiểm tra 3
số a, b, c (a, b, c>0) có thoả mãn
là 3 cạnh của tam giác hay
không? Trình bày thuật toán ở
dạng sơ đồ khối
- Nhóm 3:
Đúng Sai
Nhập a, b, c
(a+b>c) and (a+c>b) and (b+c>a)
Thoả mãn là 3 cạnh của tam giác Không thoả mãn là 3 cạnh của tam giác
Nhập điểm số a
(a >=0) and (a <=10)
Điểm hợp lệ Điểm không
hợp lệ
Kết thúc
Thoả mãn PT bậc 2 Không thoả mãn PT bậc 2
Kết thúc Nhập a, b, c
a<>0
Trang 4GV: Yêu cầu các nhóm nhận
xét chéo
GV: Đa ra sơ đồ chung để giải
quyết bài toán
Đúng Sai
GV: Em hiểu thế nào là rẽ
nhánh?
- 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 công việc phù hợp với một điều kiện
đang xảy ra
GV Trong ngôn ngữ lập trình
cấu trúc dùng để mô tả các
mệnh đề “Nếu … thì …”, “Nếu … thì
… nếu không thì …” đợc gọi là cấu
trúc rẽ nhánh dạng thiếu và cấu
trúc rẽ nhánh dạng đủ
• Hoạt động 2: Tìm hiểu cấu trúc lệnh rẽ nhánh If … Then … trong ngôn
ngữ lập trình Pascal
Hoạt động của giáo viên Hoạt động của học sinh Thời gian
2 Câu lệnh If - then
GV: Đa ra cấu trúc dạng đủ và
dạng thiếu
15’
a Cú pháp:
- Dạng thiếu:
If <điều kiện> Then <câu lệnh>;
- Dạng đủ:
If <điều kiện> then <câu lệnh 1>
else <câu lệnh 2>;
- Học sinh ghi bài
b ý nghĩa:
- If, then, else: là các từ khoá
- Điều kiện: là một biểu thức
quan hệ hoặc một biểu thức
lôgic
- Câu lệnh, câu lệnh 1, câu
4
Điều kiện
Công việc nếu
điều kiện đúng nếu điều kiện Công việc
sai
Trang 5lệnh 2: là một lệnh nào đó của
Pascal
Lu ý: 1) Các biểu thức trong dấu
<> là bắt buộc phải có
2) Câu lệnh đứng ngay trớc
else không có dấu “;” ở cuối
GV: Dựa vào cấu trúc của lệnh
rẽ nhánh dạng đủ và dạng thiếu
Hãy vẽ sơ đồ thực hiện 2 câu
lệnh đó?
HS1: Sơ đồ dạng thiếu
HS2: Sơ đồ dạng đủ
Sai Đúng
c Hoạt động:
Dạng thiếu:
+ Tính giá trị của biểu thức
điều kiện
- Lắng nghe và ghi bài
+ Nếu điều kiện đúng (có giá trị
True) thì câu lệnh sẽ đợc thực
hiện, ngợc lại thì câu lệnh sẽ bị
bỏ qua và thực hiện các công
việc tiếp theo
Dạng đủ:
+ Tính giá trị của biểu thức
điều kiện
+ Nếu điều kiện đúng thì thực
hiện câu lệnh 1, ngợc lại câu
lệnh 2 sẽ đợc thực hiện
Sai
Điều kiện
Câu lệnh
Đúng
Điều kiện
Câu lệnh 2 Câu lệnh 1
Trang 6Lu ý: Câu lệnh rẽ nhánh dạng
thiếu là 1 trờng hợp đặc biệt của
câu lệnh rẽ nhánh dạng đủ trong
trờng hợp câu lệnh 2 là câu lệnh
rỗng (câu lệnh rỗng là câu lệnh
không thực hiện thao tác nào)
VD: Nhập a, b từ bàn phím
Nếu a>b thì c:=a+b
không thì c:=a*b;
GV: Hãy viết câu lệnh tơng
ứng với mệnh đề trên:
- Câu lệnh:
If a>b then c:=a+b Else c:=a*b;
TH1: a = 5; b = 2;
TH2: a = 5; b =12;
GV: Kết quả thu đợc trong 2
trờng hợp trên nh thế nào?
- Với b = 2 < a nên c= a+b = 7
- Với b = 12>a nên c= a*b = 60
- Theo dõi ví dụ 1, ví dụ 2
(SGK-Tr 40)
GV: Ví dụ 1 sử dụng cấu trúc
rẽ nhánh dạng nào? Điều kiện ở
đây là gì? Câu lệnh ở đây là gì?
- Ví dụ 1:
+ Cấu trúc rẽ nhánh dạng thiếu + Điều kiện: biểu thức lôgic D<0; + Câu lệnh: thông báo kết quả ra màn hình:
Writeln(‘Phuong trinh vo nghiem’); GV: Tơng tự ở ví dụ 2 - Ví dụ 2:
+ Cấu trúc rẽ nhánh dạng đủ + Điều kiện: Biểu thức logic a mod 3
= 0;
+ Câu lệnh: Thông báo kết quả ra màn hình:
Write(‘ a chia het cho 3 ‘);
Write(‘ a khong chia het cho 3’); GV: Chúng ta có thể dùng các
câu lệnh If lồng nhau đối với
một số bài toán để có thể kiểm
tra đợc hết tất cả các điều kiện
- Học sinh quan sát và ghi bài
6
Trang 7cña nã 1 c¸ch chÆt chÏ.
VD: Bµi to¸n xÕp lo¹i häc sinh
Lo¹i giái: 8.0 <= DTB <= 10
Lo¹i kh¸: 6.5 <= DTB < 8.0
Lo¹i trung b×nh: 5 <= DTB < 6.5
- Treo b¶ng phô
Trang 8• Hoạt động 3: Tìm hiểu sự cần thiết của câu lệnh ghép
gian
Câu lệnh ghép trong Pascal
có dạng:
Begin
<Các câu lệnh>;
End;
- Học sinh ghi bài
- Trong đó:
+ Begin, End là các từ
khoá
+ Các câu lệnh là lệnh
trong Pascal, có thể là đơn
hoặc ghép
- Yêu cầu học sinh theo dõi
ví dụ SGK – Tr40
- Theo dõi ví dụ trong sách giáo khoa GV: Điều kiện ở đây là gì?
Các câu lệnh ở đây là gì?
- HS:
+ Điều kiện: D<0 + Câu lệnh 1:
Writeln(‘Phuong trinh vo nghiem’);
+ Câu lệnh 2:
Begin
x1:= (-b-sprt(b*b-4*a*c))/(2*a);
x2 := - b/a – x1; end;
• Hoạt động 4: Rèn luyện kỹ năng vận dụng câu lệnh If…Then…
Hoạt động của giáo viên Hoạt động của học sinh Thời gian
VD1: Tìm nghiệm thực của
phơng trình bậc 2:
ax2 + bx + c = 0 (a<>0)
- Xác định Input, Output? - Input: Các hệ số a, b, c nhập từ bàn
phím
8
Trang 9- Output: Đa ra màn hình các nghiệm thực hoặc thông báo PT vô nghiệm
- Xét giải thuật giải phơng
trình bậc 2 Em hãy cho biết
trong trờng hợp Delta < 0 thì
có kết luận gì? Delta >= 0 thì
có kết luận gì?
- Nếu Delta < 0 thì kết luận phơng trình vô nghiệm
- Nếu Delta>=0 thì đa ra nghiệm thực của phơng trình
GV: Để viết chơng trình giải
phơng trình bậc 2 ta cần dùng
bao nhiêu lệnh rẽ nhánh và
thuộc dạng nào?
- HS: Có thể dùng 2 lệnh rẽ nhánh dạng thiếu hoặc 1 lệnh rẽ nhánh dạng đủ
- Hãy đa ra câu lệnh tơng
ứng với cả 2 trờng hợp Delta <
0 và Delta >= 0
- Biểu diễn câu lệnh:
+ If D < 0 then Writeln (‘Phuong trinh vo nghiem’);
+ If D >= 0 then Begin
x1:= (- b - sqrt (D)) / (2*a);
x2:= -b / a - x1;
Writeln(‘x1=’,x1:8:3,’x2=’,x2:8:3);
End;
GV: Yêu cầu học sinh về
nhà hoàn chỉnh bài tập
• Hoạt động 5: Củng cố và giao bài tập về nhà
gian
Những nội dung đã học:
- Cấu trúc chung của câu lệnh
rẽ nhánh
- Sự thực hiện của máy khi gặp
câu lệnh rẽ nhánh
- Sơ đồ thực hiện của cấu trúc
rẽ nhánh If
Câu hỏi và bài tập về nhà:
- Trả lời câu hỏi 1, 2, 4 – Sgk
– Tr50
- Viết chơng trình nhập vào 3
số tự nhiên a, b, c In ra màn hình
giá trị lớn nhất của 3 số đó
- Ghi câu hỏi và bài tập về nhà
- Ghi những chuẩn bị cho bài sau
Trang 10- Xem tríc néi dung bµi CÊu
tróc lÆp
V Rót kinh nghiÖm sau bµi gi¶ng
10