Bài 9. Cấu trúc rẽ nhánh

- 0 / 0
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Trần Minh Nhựt
Ngày gửi: 11h:22' 30-01-2022
Dung lượng: 1.0 MB
Số lượt tải: 167
Nguồn:
Người gửi: Trần Minh Nhựt
Ngày gửi: 11h:22' 30-01-2022
Dung lượng: 1.0 MB
Số lượt tải: 167
Số lượt thích:
0 người
HỌC ONLINE
MÔN: TIN HỌC 11
CHỦ ĐỀ 3:
CẤU TRÚC RẼ NHÁNH VÀ LẶP
BÀI 9:
CẤU TRÚC RẼ NHÁNH
BÀI 9: CẤU TRÚC RẼ NHÁNH
MỤC TIÊU BÀI HỌC
1) Kiến thức
Hiểu nhu cầu của cấu trúc rẽ nhánh trong biểu diễn thuật toán;
Hiểu câu lệnh rẽ nhánh (dạng thiếu và dạng đủ);
Hiểu cú pháp và sử dụng câu lệnh ghép trong viết chương trình.
2) Kỹ năng
Viết được câu lệnh rẽ nhánh dạng thiếu, rẽ nhánh dạng đủ và áp dụng để thể hiện được thuật toán của một bài toán đơn giản.
BÀI 9: CẤU TRÚC RẼ NHÁNH
1/ Khái niệm rẽ nhánh
BÀI 9: CẤU TRÚC RẼ NHÁNH
Mời các em cùng xem và tìm hiểu các tình huống sau đây!
Ừm, để tớ nghĩ đã.
Nếu ngày mai mưa thì tớ nghỉ.
À! Nếu ngày mai mưa thì tớ nghỉ, nếu không mưa thì tớ đến nhà cậu học.
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 trúc dùng để mô tả các mệnh đề có dạng như trên gọi là cấu trúc rẽ nhánh.
1/ Khái niệm rẽ nhánh
BÀI 9: CẤU TRÚC RẼ NHÁNH
1/ Khái niệm rẽ nhánh
BÀI 9: CẤU TRÚC RẼ NHÁNH
Ví dụ: Giải phương trình bậc hai ax2+bx+c=0 (a0)
Chúng ta nhớ lại 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 phương trình vô nghiệm, ngược lại tính và đưa ra nghiệm.
1/ Khái niệm rẽ nhánh
BÀI 9: CẤU TRÚC RẼ NHÁNH
Ví dụ: Giải phương trình bậc hai ax2+bx+c=0 (a0)
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.
Nhập a, b, c
Tính Delta = b2 – 4ac
Kiểm tra
Delta < 0
Tính và đưa ra nghiệm
Thông báo vô nghiệm
Kết thúc
Sai
Đúng
2/ Câu lệnh IF - THEN
BÀI 9: CẤU TRÚC RẼ NHÁNH
a) Dạng thiếu
IF <Điều kiện> THEN
;
<điều kiện> là biểu thức quan hệ hoặc biểu thức lôgic.
là một lệnh của Pascal.
Điều kiện
Đúng
Câu lệnh
Sai
Câu lệnh
Đúng
Câu lệnh
Điều kiện
Điều kiện
Nếu <điều kiện> đúng thì được thực hiện,
sai bị bỏ qua.
Ví dụ: IF (a mod 2=0) THEN
Writeln( a, ‘ la so chan’);
2/ Câu lệnh IF - THEN
BÀI 9: CẤU TRÚC RẼ NHÁNH
b) Dạng đủ
IF <Điều kiện> THEN
ELSE;
Điều kiện
Đúng
Câu lệnh 1
Sai
Câu lệnh 2
Điều kiện
Câu lệnh 1
Câu lệnh 2
Điều kiện
Câu lệnh 1
Điều kiện
Nếu <điều kiện> đúng thì được thực hiện
ngược lại thì được thực hiện.
Ví dụ: IF (a mod 2=0) THEN Writeln( a, ‘ la so chan’)
ELSE Writeln( a, ‘ la so le’);
, là một câu lệnh của Pascal.
2/ Câu lệnh IF - THEN
BÀI 9: CẤU TRÚC RẼ NHÁNH
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
Hết giờ
1
:
0
Thời gian còn lại ...
Bắt đầu tính giờ
00
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
09
08
07
06
05
04
03
02
01
00
0
IF Delta<0 THEN
Writeln(‘Phuong trinh vo nghiem’)
ELSE
X1:= (-b + Sqrt(Delta))/(2*a);
X2:= (-b - Sqrt(Delta))/(2*a);
Writeln(‘ Nghiem X1= ’, X1:6:2);
Writeln(‘ Nghiem X2= ’, X2:6:2);
3/ Câu lệnh GHÉP
BÀI 9: CẤU TRÚC RẼ NHÁNH
Trong Pascal 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
;
;
………
;
END;
3/ Câu lệnh GHÉP
BÀI 9: CẤU TRÚC RẼ NHÁNH
Ví dụ:
IF Delta<0 THEN
Writeln(‘Phuong trinh vo nghiem’)
ELSE
BEGIN
X1:= (-b + Sqrt(Delta))/(2*a);
X2:= (-b - Sqrt(Delta))/(2*a);
Writeln(‘ Nghiem X1= ’, X1:6:2);
Writeln(‘ Nghiem X2= ’, X2:6:2);
END;
BÀI 9: CẤU TRÚC RẼ NHÁNH
Ví dụ 1: Tìm nghiệm thực của phương trình bậc hai:
ax2 + bx + c =0, (với a <>0)
Input: Nhập vào các hệ số a, b, c từ bàn phím.
Output: Đưa ra màn hình nghiệm thực của phương trình hoặc thông báo ‘Phuong trinh vo Nghiem’
4/ Một số ví dụ
4/ Một số ví dụ
BÀI 9: CẤU TRÚC RẼ NHÁNH
Hết giờ
1
:
0
Thời gian còn lại ...
Bắt đầu tính giờ
00
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
09
08
07
06
05
04
03
02
01
00
0
Em hãy hoàn thiện chương trình giải phương trình bậc 2 (a<>0) theo dàn ý sau:
4/ Một số ví dụ
BÀI 9: CẤU TRÚC RẼ NHÁNH
BÀI 9: CẤU TRÚC RẼ NHÁNH
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 nhưng không chia hết cho 100.
(Ví dụ: Các năm 2000, 2004 là năm nhuận có số ngày là 366;
Các năm 1900, 1945 không phải là năm nhuận và có số ngày là 365)
Input: Nhập vào năm N từ bàn phím
Output: Đưa ra màn hình số ngày của năm N?
4/ Một số ví dụ
Hãy xác định Input và Output của bài toán?
BÀI 9: CẤU TRÚC RẼ NHÁNH
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 nhưng không chia hết cho 100.
4/ Một số ví dụ
NẾU (N chia hết cho 400) hoặc ((N chia hết cho 4) và (N 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
Hết giờ
1
:
0
Thời gian còn lại ...
Bắt đầu tính giờ
00
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
09
08
07
06
05
04
03
02
01
00
0
Các em hãy chuyển đổi câu lệnh trên sang câu lệnh IF – THEN trong Pascal
BÀI 9: CẤU TRÚC RẼ NHÁNH
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 nhưng không chia hết cho 100.
4/ Một số ví dụ
IF (N mod 400 =0) OR ((N mod 4 = 0) AND (N mod 100 <> 0)) THEN
Writeln(‘So ngay cua nam ‘, N,’ la 366’)
ELSE
Writeln(‘So ngay cua nam ‘, N,’ la 365’);
CỦNG CỐ
BÀI 9: CẤU TRÚC RẼ NHÁNH
Câu lệnh IF - THEN
Dạng thiếu
IF <Điều kiện> THEN
;
Dạng đủ
IF <Điều kiện> THEN
ELSE
;
Khái niệm rẽ nhánh
Câu lệnh ghép
BEGIN
;
;
………
;
END;
Ví dụ áp dụng
Cảm ơn sự chú ý theo dõi của các em học sinh!
Các em nhớ đăng ký kênh để nhận thông báo khi thầy đăng bài giảng mới! Cảm ơn các em!
MÔN: TIN HỌC 11
CHỦ ĐỀ 3:
CẤU TRÚC RẼ NHÁNH VÀ LẶP
BÀI 9:
CẤU TRÚC RẼ NHÁNH
BÀI 9: CẤU TRÚC RẼ NHÁNH
MỤC TIÊU BÀI HỌC
1) Kiến thức
Hiểu nhu cầu của cấu trúc rẽ nhánh trong biểu diễn thuật toán;
Hiểu câu lệnh rẽ nhánh (dạng thiếu và dạng đủ);
Hiểu cú pháp và sử dụng câu lệnh ghép trong viết chương trình.
2) Kỹ năng
Viết được câu lệnh rẽ nhánh dạng thiếu, rẽ nhánh dạng đủ và áp dụng để thể hiện được thuật toán của một bài toán đơn giản.
BÀI 9: CẤU TRÚC RẼ NHÁNH
1/ Khái niệm rẽ nhánh
BÀI 9: CẤU TRÚC RẼ NHÁNH
Mời các em cùng xem và tìm hiểu các tình huống sau đây!
Ừm, để tớ nghĩ đã.
Nếu ngày mai mưa thì tớ nghỉ.
À! Nếu ngày mai mưa thì tớ nghỉ, nếu không mưa thì tớ đến nhà cậu học.
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 trúc dùng để mô tả các mệnh đề có dạng như trên gọi là cấu trúc rẽ nhánh.
1/ Khái niệm rẽ nhánh
BÀI 9: CẤU TRÚC RẼ NHÁNH
1/ Khái niệm rẽ nhánh
BÀI 9: CẤU TRÚC RẼ NHÁNH
Ví dụ: Giải phương trình bậc hai ax2+bx+c=0 (a0)
Chúng ta nhớ lại 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 phương trình vô nghiệm, ngược lại tính và đưa ra nghiệm.
1/ Khái niệm rẽ nhánh
BÀI 9: CẤU TRÚC RẼ NHÁNH
Ví dụ: Giải phương trình bậc hai ax2+bx+c=0 (a0)
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.
Nhập a, b, c
Tính Delta = b2 – 4ac
Kiểm tra
Delta < 0
Tính và đưa ra nghiệm
Thông báo vô nghiệm
Kết thúc
Sai
Đúng
2/ Câu lệnh IF - THEN
BÀI 9: CẤU TRÚC RẼ NHÁNH
a) Dạng thiếu
IF <Điều kiện> THEN
<điều kiện> là biểu thức quan hệ hoặc biểu thức lôgic.
Điều kiện
Đúng
Câu lệnh
Sai
Câu lệnh
Đúng
Câu lệnh
Điều kiện
Điều kiện
Nếu <điều kiện> đúng thì
sai
Ví dụ: IF (a mod 2=0) THEN
Writeln( a, ‘ la so chan’);
2/ Câu lệnh IF - THEN
BÀI 9: CẤU TRÚC RẼ NHÁNH
b) Dạng đủ
IF <Điều kiện> THEN
ELSE
Điều kiện
Đúng
Câu lệnh 1
Sai
Câu lệnh 2
Điều kiện
Câu lệnh 1
Câu lệnh 2
Điều kiện
Câu lệnh 1
Điều kiện
Nếu <điều kiện> đúng thì
ngược lại thì
Ví dụ: IF (a mod 2=0) THEN Writeln( a, ‘ la so chan’)
ELSE Writeln( a, ‘ la so le’);
2/ Câu lệnh IF - THEN
BÀI 9: CẤU TRÚC RẼ NHÁNH
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
Hết giờ
1
:
0
Thời gian còn lại ...
Bắt đầu tính giờ
00
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
09
08
07
06
05
04
03
02
01
00
0
IF Delta<0 THEN
Writeln(‘Phuong trinh vo nghiem’)
ELSE
X1:= (-b + Sqrt(Delta))/(2*a);
X2:= (-b - Sqrt(Delta))/(2*a);
Writeln(‘ Nghiem X1= ’, X1:6:2);
Writeln(‘ Nghiem X2= ’, X2:6:2);
3/ Câu lệnh GHÉP
BÀI 9: CẤU TRÚC RẼ NHÁNH
Trong Pascal 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
………
END;
3/ Câu lệnh GHÉP
BÀI 9: CẤU TRÚC RẼ NHÁNH
Ví dụ:
IF Delta<0 THEN
Writeln(‘Phuong trinh vo nghiem’)
ELSE
BEGIN
X1:= (-b + Sqrt(Delta))/(2*a);
X2:= (-b - Sqrt(Delta))/(2*a);
Writeln(‘ Nghiem X1= ’, X1:6:2);
Writeln(‘ Nghiem X2= ’, X2:6:2);
END;
BÀI 9: CẤU TRÚC RẼ NHÁNH
Ví dụ 1: Tìm nghiệm thực của phương trình bậc hai:
ax2 + bx + c =0, (với a <>0)
Input: Nhập vào các hệ số a, b, c từ bàn phím.
Output: Đưa ra màn hình nghiệm thực của phương trình hoặc thông báo ‘Phuong trinh vo Nghiem’
4/ Một số ví dụ
4/ Một số ví dụ
BÀI 9: CẤU TRÚC RẼ NHÁNH
Hết giờ
1
:
0
Thời gian còn lại ...
Bắt đầu tính giờ
00
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
09
08
07
06
05
04
03
02
01
00
0
Em hãy hoàn thiện chương trình giải phương trình bậc 2 (a<>0) theo dàn ý sau:
4/ Một số ví dụ
BÀI 9: CẤU TRÚC RẼ NHÁNH
BÀI 9: CẤU TRÚC RẼ NHÁNH
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 nhưng không chia hết cho 100.
(Ví dụ: Các năm 2000, 2004 là năm nhuận có số ngày là 366;
Các năm 1900, 1945 không phải là năm nhuận và có số ngày là 365)
Input: Nhập vào năm N từ bàn phím
Output: Đưa ra màn hình số ngày của năm N?
4/ Một số ví dụ
Hãy xác định Input và Output của bài toán?
BÀI 9: CẤU TRÚC RẼ NHÁNH
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 nhưng không chia hết cho 100.
4/ Một số ví dụ
NẾU (N chia hết cho 400) hoặc ((N chia hết cho 4) và (N 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
Hết giờ
1
:
0
Thời gian còn lại ...
Bắt đầu tính giờ
00
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
09
08
07
06
05
04
03
02
01
00
0
Các em hãy chuyển đổi câu lệnh trên sang câu lệnh IF – THEN trong Pascal
BÀI 9: CẤU TRÚC RẼ NHÁNH
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 nhưng không chia hết cho 100.
4/ Một số ví dụ
IF (N mod 400 =0) OR ((N mod 4 = 0) AND (N mod 100 <> 0)) THEN
Writeln(‘So ngay cua nam ‘, N,’ la 366’)
ELSE
Writeln(‘So ngay cua nam ‘, N,’ la 365’);
CỦNG CỐ
BÀI 9: CẤU TRÚC RẼ NHÁNH
Câu lệnh IF - THEN
Dạng thiếu
IF <Điều kiện> THEN
Dạng đủ
IF <Điều kiện> THEN
ELSE
Khái niệm rẽ nhánh
Câu lệnh ghép
BEGIN
………
END;
Ví dụ áp dụng
Cảm ơn sự chú ý theo dõi của các em học sinh!
Các em nhớ đăng ký kênh để nhận thông báo khi thầy đăng bài giảng mới! Cảm ơn các em!
 







Các ý kiến mới nhất