Bài 9. Cấu trúc rẽ nhánh
Chia sẻ bởi nguyễn thị niên |
Ngày 10/05/2019 |
42
Chia sẻ tài liệu: Bài 9. Cấu trúc rẽ nhánh thuộc Tin học 11
Nội dung tài liệu:
TRƯỜNG THPT QUỲNH THỌ
CẤU TRÚC RẼ NHÁNH VÀ LẶP
Lớp 11A1
Bài 9
cấu trúc rẽ nhánh
Giáo án điện tử tin học lớp 11
(1tiết)
1. Rẽ nhánh
Nếu ngày mai mưa thì tớ ở nhà học bài
À! Nếu ngày mai mưa thì tớ ở nhà học bài, nếu không mưa thì tớ đi xem phim hoạt hình.
Này, ngày mai cậu có đi xem phim hoạt hình không?
Tom: “Nếu ngày mai mưa thì tớ ở nhà học bài”
Câu nói của Tom cho biết việc làm cụ thể nào? Và điều kiện đó là gì?
Câu nói của Tom có đề cập đến việc gì sẽ xảy ra khi điều kiện đó không được thỏa mãn không?
- D?ng thi?u: N?u.thỡ.
Tình huống 1:
Nhận xét:
1. Rẽ nhánh
Tom: “Nếu ngày mai mưa thì tớ ở nhà học bài nếu không thì tớ đi xem phim hoạt hình”
Câu nói của Tom khẳng định hai việc cụ thể gì?
Vậy mỗi việc sẽ được thực hiện khi nào?
- D?ng d?: N?u.thỡ.n?u khụng thỡ .
Tình huống 2:
Nhận xét:
1. Rẽ nhánh
Có khi nào cả hai việc cùng được thực hiện 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.
CÁC EM HÃY VẼ SƠ ĐỒ THUẬT TOÁN GIẢI PHƯƠNG TRÌNH BẬC 2 (VỚI 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
Thuật toán ở trên viết cho người hiểu tiếng Việt.
Bây giờ ta phải viết chương trình cho máy tính thực
hiện thì viết thế nào?
2. Câu lệnh If – then.
Dạng thiếu
Dạng đủ
a. Cú pháp:
If <Điều kiện> then;
If <Điều kiện> then Else ;
Trong đó:
- Điều kiện là biểu thức quan hệ hoặc biểu thức logic.
- Câu lệnh, câu lệnh1, câu lệnh2 là một câu lệnh của Pascal .
- Trước else không có dấu ;
b. Sơ đồ khối:
Điều kiện
Câu lệnh
Điều kiện
Câu lệnh 1
Câu lệnh 2
Điều kiện
Câu lệnh
Điều kiện
Câu lệnh 1
Câu lệnh 2
T
T
F
F
T
F
T
F
c. Cách thực hiện:
Tính và kiểm tra điều kiện, nếu điều kiện đúng thì thực hiện câu lệnh, còn không thì câu lệnh bị bỏ qua.
Tính và kiểm tra điều kiện, nếu điều kiện đúng thì thực hiện câu lệnh 1, nếu sai thì thực hiện câu lệnh 2.
Dạng thiếu
Dạng đủ
d. Ví dụ:
Vd1: Dạng thiếu:
- Thông báo ra màn hình nếu delta <0 thì phương trình vô nghiệm
Vd2: Dạng đủ:
- Kiểm tra hai số nguyên a, b số nào max?
IF d<0 then writeln(‘phuong trinh vo nghiem’);
IF a>b THEN max:=a ELSE max:=b;
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(`phuong trinh vo nghiem`)
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
< Các câu lệnh>;
END;
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);
Writeln(` Nghiem X2= `, X2:5:1);
END;
Ví dụ:
Program GPTB2;
Uses crt;
Var . . . ;
BEGIN
. . . Nhập vào 3 hệ số a,b,c…
Delta :=. . .;
Readln;
END.
Nếu Delta<0 thì writeln(‘ptvn’)
Ngược lại Tính và in ra nghiệm;
4. Một số ví dụ
EM HÃY HOÀN THIỆN CHƯƠNG TRÌNH GIẢI PHƯƠNG TRÌNH BẬC 2 (A0) THEO DÀN Ý SAU:
Ví dụ 1:
Hãy xác định input và output của bài toán?
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.
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 nhưng 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
Em hãy khai báo biến cho bài toán trên?
Viết điều kiện:
Nếu N chia hết cho 400 hoặc chia hết cho 4 nhưng không chia hết cho 100
thì nhận số ngày của năm nhuận, ngược lại nhận số ngày của năm thường.
Nhập vào NĂM cần tính số lượng ngày
In ra kết quả?
Hãy nhớ
1. CẤU TRÚC MÔ TẢ CÁC MỆNH ĐỀ
“Nếu … thì…”
“Nếu … thì …nếu không thì…”
Gọi là cấu trúc rẽ nhánh.
2. LỆNH RẼ NHÁNH DẠNG THIẾU
3. LỆNH RẼ NHÁNH DẠNG ĐỦ
4. CÂU LỆNH GHÉP
Begin
;
End;
IF <Điều kiện> THEN;
IF <Điều kiện> THEN
ELSE;
Câu 1: Trong cấu trúc rẽ nhánh dạng đủ, được thực hiện khi nào?
Câu hỏi củng cố
A. Biểu thức <điều kiện> cho giá trị True
B. Biểu thức <điều kiện> cho giá trị False
C. Biểu thức <điều kiện> không thể tính được
D. Sau khi thực hiện xong
Câu 2: Trong lập trình Pascal, câu lệnh nào sau đây là đúng?
A. If a:=5 then a:=a+1 else a:=a+5;
B. If a=5 then a:=a+1; else a:=a+5;
C. If a=5 then a:=a+1 else a:=a+5;
D. If a:=5 then a:=a+1; else a:=a+5;
Câu hỏi củng cố
Câu 3: Cho biết giá trị của biến nguyên i sau khi thực hiện các câu lệnh sau:
i:=2; if i =1 then i:=i+1 else i:=i+2;
A. 2
B. 3
C. 4
D. 5
Câu hỏi củng cố
- Vd3: Viết đoạn chương trình kiểm tra một số nguyên dương m là số chẵn hay số lẽ. In kết quả ra màn hình.
- NHÓM 1: Viết câu lệnh rẽ nhánh dạng thiếu.
- NHÓM 2: Viết câu lệnh rẽ nhánh dạng đủ.
Câu hỏi củng cố
BÀI TẬP VỀ NHÀ
Bài 1: Viết chương trình tìm nghiệm của phương trình bậc nhất: ax + b = 0 (a # 0)
Bài 2: Viết chương trình nhập vào 1 số nguyên bất kì. Cho biết số đó là số 0, số âm hay số dương
Bài 3: Tìm giá trị lớn nhất của 3 số a, b, c bất kì nhập vào từ bàn phím
Xin chân thành cảm ơn
Quý thầy cô !
CẤU TRÚC RẼ NHÁNH VÀ LẶP
Lớp 11A1
Bài 9
cấu trúc rẽ nhánh
Giáo án điện tử tin học lớp 11
(1tiết)
1. Rẽ nhánh
Nếu ngày mai mưa thì tớ ở nhà học bài
À! Nếu ngày mai mưa thì tớ ở nhà học bài, nếu không mưa thì tớ đi xem phim hoạt hình.
Này, ngày mai cậu có đi xem phim hoạt hình không?
Tom: “Nếu ngày mai mưa thì tớ ở nhà học bài”
Câu nói của Tom cho biết việc làm cụ thể nào? Và điều kiện đó là gì?
Câu nói của Tom có đề cập đến việc gì sẽ xảy ra khi điều kiện đó không được thỏa mãn không?
- D?ng thi?u: N?u.thỡ.
Tình huống 1:
Nhận xét:
1. Rẽ nhánh
Tom: “Nếu ngày mai mưa thì tớ ở nhà học bài nếu không thì tớ đi xem phim hoạt hình”
Câu nói của Tom khẳng định hai việc cụ thể gì?
Vậy mỗi việc sẽ được thực hiện khi nào?
- D?ng d?: N?u.thỡ.n?u khụng thỡ .
Tình huống 2:
Nhận xét:
1. Rẽ nhánh
Có khi nào cả hai việc cùng được thực hiện 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.
CÁC EM HÃY VẼ SƠ ĐỒ THUẬT TOÁN GIẢI PHƯƠNG TRÌNH BẬC 2 (VỚI 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
Thuật toán ở trên viết cho người hiểu tiếng Việt.
Bây giờ ta phải viết chương trình cho máy tính thực
hiện thì viết thế nào?
2. Câu lệnh If – then.
Dạng thiếu
Dạng đủ
a. Cú pháp:
If <Điều kiện> then
If <Điều kiện> then
Trong đó:
- Điều kiện là biểu thức quan hệ hoặc biểu thức logic.
- Câu lệnh, câu lệnh1, câu lệnh2 là một câu lệnh của Pascal .
- Trước else không có dấu ;
b. Sơ đồ khối:
Điều kiện
Câu lệnh
Điều kiện
Câu lệnh 1
Câu lệnh 2
Điều kiện
Câu lệnh
Điều kiện
Câu lệnh 1
Câu lệnh 2
T
T
F
F
T
F
T
F
c. Cách thực hiện:
Tính và kiểm tra điều kiện, nếu điều kiện đúng thì thực hiện câu lệnh, còn không thì câu lệnh bị bỏ qua.
Tính và kiểm tra điều kiện, nếu điều kiện đúng thì thực hiện câu lệnh 1, nếu sai thì thực hiện câu lệnh 2.
Dạng thiếu
Dạng đủ
d. Ví dụ:
Vd1: Dạng thiếu:
- Thông báo ra màn hình nếu delta <0 thì phương trình vô nghiệm
Vd2: Dạng đủ:
- Kiểm tra hai số nguyên a, b số nào max?
IF d<0 then writeln(‘phuong trinh vo nghiem’);
IF a>b THEN max:=a ELSE max:=b;
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(`phuong trinh vo nghiem`)
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
< Các câu lệnh>;
END;
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);
Writeln(` Nghiem X2= `, X2:5:1);
END;
Ví dụ:
Program GPTB2;
Uses crt;
Var . . . ;
BEGIN
. . . Nhập vào 3 hệ số a,b,c…
Delta :=. . .;
Readln;
END.
Nếu Delta<0 thì writeln(‘ptvn’)
Ngược lại Tính và in ra nghiệm;
4. Một số ví dụ
EM HÃY HOÀN THIỆN CHƯƠNG TRÌNH GIẢI PHƯƠNG TRÌNH BẬC 2 (A0) THEO DÀN Ý SAU:
Ví dụ 1:
Hãy xác định input và output của bài toán?
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.
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 nhưng 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
Em hãy khai báo biến cho bài toán trên?
Viết điều kiện:
Nếu N chia hết cho 400 hoặc chia hết cho 4 nhưng không chia hết cho 100
thì nhận số ngày của năm nhuận, ngược lại nhận số ngày của năm thường.
Nhập vào NĂM cần tính số lượng ngày
In ra kết quả?
Hãy nhớ
1. CẤU TRÚC MÔ TẢ CÁC MỆNH ĐỀ
“Nếu … thì…”
“Nếu … thì …nếu không thì…”
Gọi là cấu trúc rẽ nhánh.
2. LỆNH RẼ NHÁNH DẠNG THIẾU
3. LỆNH RẼ NHÁNH DẠNG ĐỦ
4. CÂU LỆNH GHÉP
Begin
End;
IF <Điều kiện> THEN
IF <Điều kiện> THEN
ELSE
Câu 1: Trong cấu trúc rẽ nhánh dạng đủ,
Câu hỏi củng cố
A. Biểu thức <điều kiện> cho giá trị True
B. Biểu thức <điều kiện> cho giá trị False
C. Biểu thức <điều kiện> không thể tính được
D. Sau khi thực hiện xong
Câu 2: Trong lập trình Pascal, câu lệnh nào sau đây là đúng?
A. If a:=5 then a:=a+1 else a:=a+5;
B. If a=5 then a:=a+1; else a:=a+5;
C. If a=5 then a:=a+1 else a:=a+5;
D. If a:=5 then a:=a+1; else a:=a+5;
Câu hỏi củng cố
Câu 3: Cho biết giá trị của biến nguyên i sau khi thực hiện các câu lệnh sau:
i:=2; if i =1 then i:=i+1 else i:=i+2;
A. 2
B. 3
C. 4
D. 5
Câu hỏi củng cố
- Vd3: Viết đoạn chương trình kiểm tra một số nguyên dương m là số chẵn hay số lẽ. In kết quả ra màn hình.
- NHÓM 1: Viết câu lệnh rẽ nhánh dạng thiếu.
- NHÓM 2: Viết câu lệnh rẽ nhánh dạng đủ.
Câu hỏi củng cố
BÀI TẬP VỀ NHÀ
Bài 1: Viết chương trình tìm nghiệm của phương trình bậc nhất: ax + b = 0 (a # 0)
Bài 2: Viết chương trình nhập vào 1 số nguyên bất kì. Cho biết số đó là số 0, số âm hay số dương
Bài 3: Tìm giá trị lớn nhất của 3 số a, b, c bất kì nhập vào từ bàn phím
Xin chân thành cảm ơn
Quý thầy cô !
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: nguyễn thị niên
Dung lượng: |
Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)