Bài 9. Cấu trúc rẽ nhánh
Chia sẻ bởi Hoàng Thanh |
Ngày 10/05/2019 |
77
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:
Kính chào thầy cô và các em
CHƯƠNG III: CẤU TRÚC RẼ NHÁNH VÀ LẶP
TIẾT 11:
BÀI 9: CẤU TRÚC RẼ NHÁNH
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
1
Rẽ nhánh
Xét tình huống sau: Châu và Ngọc thường cùng nhau chuẩn bị các bài thực hành môn Tin học.
- Một lần Châu hẹn với Ngọc: “ Chiều mai nếu trời không mưa thì Châu sẽ đến nhà Ngọc”
- Một lần khác , Ngọc nói với Châu: “Chiều mai nếu trời không mưa thì Ngọc sẽ đến nhà Châu, nếu không thì sẽ gọi điện cho Châu để trao đổi”
Dạng thiếu: Nếu......thì......
Dạng đủ: Nếu......thì......, nếu không thì......
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
1
Rẽ nhánh
=> Cấu trúc dùng để mô tả các mệnh đề có dạng như trên được gọi là cấu trúc rẽ nhánh dạng thiếu và dạng đủ
Vậy trong nhiều thuật toán, các thao tác tiếp theo sẽ phụ thuộc vào kết quả nhận được từ các bước trước đó.
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
1
Rẽ nhánh
Xét ví dụ: Kiểm tra phương trình bậc hai: ax2+bx+c=0,(a<>0) có nghiệm hay không?
Nhập a, b, c
Delta b2 – 4ac
Delta≥0?
Thông báo PT vô nghiệm
rồi kết thúc
Sai
Đúng
Thông báo PT có nghiệm
rồi kết thúc
- B1: Tính Delta = b2 - 4ac;
- B2: Nếu Delta >=0 thì thông báo PT có nghiệm rồi kết thúc;
- B3: Nếu Delta <0 thì thông báo pt vô nghiệm rồi kết thúc.
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
2
Câu lệnh if - then
a) Dạng thiếu
Cú pháp:
if <điều kiện> then;
Sơ đồ khối:
b) Dạng đủ
Cú pháp:
if <điều kiện> then
else;
Sơ đồ khối:
Trong đó: - Điều kiện là biểu thức logic;
- Câu lệnh, câu lệnh 1, câu lệnh 2 là một câu lệnh của Pascal.
- if, then, else là từ khoá
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
2
Câu lệnh if - then
a) Dạng thiếu
Sơ đồ khối:
b) Dạng đủ
Sơ đồ khối:
Câu lệnh 1
Câu lệnh 2
Điều
Kiện
Đúng
Câu lệnh
Điều kiện
Sai
Hoạt động:
- Điều kiện sẽ được tính và kiểm tra. Nếu điều kiện đúng (có giá trị true) thì câu lệnh được thực hiện, ngược lại thì câu lệnh sẽ bỏ qua.
- Điều kiện sẽ được tính và kiểm tra. Nếu điều kiện đúng (có giá trị true) thì câu lệnh 1 được thực hiện, ngược lại thì câu lệnh 2 sẽ được thực hiện.
Hoạt động:
Đúng
Sai
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
2
Câu lệnh if - then
Ví dụ:
- Ví dụ 1: if Delta<0 then writeln(‘ phuong trinh vo nghiem’);
- Ví dụ 2: if Delta<0 then writeln(‘ phuong trinh vo nghiem’)
else writeln(‘ Phuong trinh co nghiem.’);
- Ví dụ 3: Vận dụng cả hai dạng câu lệnh rẽ nhánh cho bài toán tìm giá trị lớn nhất (max) trong 2 số a và b
Dạng thiếu: max:= a;
if b>a then max:=b;
Dạng đủ: if b>a then max:=b
else max:=a;
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
2
Câu lệnh if - then
Chú ý:
- Câu lệnh if-then dạng đủ có thể lồng nhau
Ví dụ: If (a>b) and (a>c) then max:=a
else
if (b>a) and (b>c) then max:=b
else max:=c;
- Trước từ khóa else không có dấu chấm phẩy (;)
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
3
Câu lệnh ghép
- Khái niệm: Là một câu lệnh được hợp thành từ nhiều câu lệnh thành phần.
- Cú pháp:
Begin
;
End;
Ví dụ: if Delta>=0 then
Begin
Writeln (‘ PT co nghiem’);
x1:= (-b-sqrt(Delta))/(2*a);
x2:= (-b+sqrt(Delta))/(2*a);
Writeln(‘x1= ‘,x1:6:2,’x2= ‘,x2:6:2);
End;
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
Câu hỏi và bài tập củng cố
Câu hỏi và bài tập củng cố
BÀI 9: CẤU TRÚC RẼ NHÁNH
CÂU LỆNH IF - THEN
RẼ NHÁNH
BÀI 9: CẤU TRÚC RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
RẼ NHÁNH
BÀI 9: CẤU TRÚC RẼ NHÁNH
CÂU LỆNH IF - THEN
Câu 1:
Câu lệnh ghép
MỘT SỐ VÍ DỤ
CÂU LỆNH GHÉP
RẼ NHÁNH
BÀI 9: CẤU TRÚC RẼ NHÁNH
CÂU LỆNH IF - THEN
Câu 2: Hãy chỉ ra các lỗi trong đoạn chương trình sau:
Var a,b: interger; {1}
Begin {2}
Write(‘Nhap a,b:’);readln(a,b); {3}
if (a>b) then write(‘max:’,a); {4}
eles write(‘Max:’,b); {5}
End {6}
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
Câu 3: Cho đoạn chương trình sau:
A:=5; b:=7;
If b mod a<>0 then b:=b-a;
X:=a*b;
Sau khi thực hiện chương trình xong, giá trị của x là?
a. a*b
b. 5*2
c.10
d. ‘a*b’
Câu hỏi và bài tập củng cố
Câu 4: Đối với câu lệnh if – then dạng đủ, câu lệnh 2 được thực hiện khi nào?
a) Biểu thức điều kiện đúng
b) Biểu thức điều kiện sai
c) Câu lệnh 1 được thực hiện
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
Câu hỏi và bài tập củng cố
Câu 5: Hãy viết câu lệnh rẽ nhánh dạng thiếu và dạng đủ cho bài toán sau: Hãy kiểm tra xem số nguyên a có phải là số chẵn không?
Dạng thiếu: if a mod 2=0 then writeln(‘a la so chan.’);
If a mod 2 <>0 then writeln(‘a khong la so chan.’);
Dạng đủ: if a mod 2=0 then writeln(‘a la so chan.’)
else writeln(‘a khong phai la so chan.’);
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
Câu hỏi và bài tập củng cố
Câu 6: Lập trình kiểm tra số nguyên a có phải là số chẵn không?
- Xem trước : Phần 4. Một số ví dụ.
- Trả lời các câu hỏi và bài tập 1, 2,4 (trang 64 - SGK).
DẶN DÒ
BÀI HỌC ĐẾN ĐÂY LÀ KẾT THÚC
XIN CHÂN THÀNH CẢM ƠN THẦY CÔ VÀ CÁC EM!
CHƯƠNG III: CẤU TRÚC RẼ NHÁNH VÀ LẶP
TIẾT 11:
BÀI 9: CẤU TRÚC RẼ NHÁNH
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
1
Rẽ nhánh
Xét tình huống sau: Châu và Ngọc thường cùng nhau chuẩn bị các bài thực hành môn Tin học.
- Một lần Châu hẹn với Ngọc: “ Chiều mai nếu trời không mưa thì Châu sẽ đến nhà Ngọc”
- Một lần khác , Ngọc nói với Châu: “Chiều mai nếu trời không mưa thì Ngọc sẽ đến nhà Châu, nếu không thì sẽ gọi điện cho Châu để trao đổi”
Dạng thiếu: Nếu......thì......
Dạng đủ: Nếu......thì......, nếu không thì......
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
1
Rẽ nhánh
=> Cấu trúc dùng để mô tả các mệnh đề có dạng như trên được gọi là cấu trúc rẽ nhánh dạng thiếu và dạng đủ
Vậy trong nhiều thuật toán, các thao tác tiếp theo sẽ phụ thuộc vào kết quả nhận được từ các bước trước đó.
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
1
Rẽ nhánh
Xét ví dụ: Kiểm tra phương trình bậc hai: ax2+bx+c=0,(a<>0) có nghiệm hay không?
Nhập a, b, c
Delta b2 – 4ac
Delta≥0?
Thông báo PT vô nghiệm
rồi kết thúc
Sai
Đúng
Thông báo PT có nghiệm
rồi kết thúc
- B1: Tính Delta = b2 - 4ac;
- B2: Nếu Delta >=0 thì thông báo PT có nghiệm rồi kết thúc;
- B3: Nếu Delta <0 thì thông báo pt vô nghiệm rồi kết thúc.
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
2
Câu lệnh if - then
a) Dạng thiếu
Cú pháp:
if <điều kiện> then
Sơ đồ khối:
b) Dạng đủ
Cú pháp:
if <điều kiện> then
else
Sơ đồ khối:
Trong đó: - Điều kiện là biểu thức logic;
- Câu lệnh, câu lệnh 1, câu lệnh 2 là một câu lệnh của Pascal.
- if, then, else là từ khoá
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
2
Câu lệnh if - then
a) Dạng thiếu
Sơ đồ khối:
b) Dạng đủ
Sơ đồ khối:
Câu lệnh 1
Câu lệnh 2
Điều
Kiện
Đúng
Câu lệnh
Điều kiện
Sai
Hoạt động:
- Điều kiện sẽ được tính và kiểm tra. Nếu điều kiện đúng (có giá trị true) thì câu lệnh được thực hiện, ngược lại thì câu lệnh sẽ bỏ qua.
- Điều kiện sẽ được tính và kiểm tra. Nếu điều kiện đúng (có giá trị true) thì câu lệnh 1 được thực hiện, ngược lại thì câu lệnh 2 sẽ được thực hiện.
Hoạt động:
Đúng
Sai
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
2
Câu lệnh if - then
Ví dụ:
- Ví dụ 1: if Delta<0 then writeln(‘ phuong trinh vo nghiem’);
- Ví dụ 2: if Delta<0 then writeln(‘ phuong trinh vo nghiem’)
else writeln(‘ Phuong trinh co nghiem.’);
- Ví dụ 3: Vận dụng cả hai dạng câu lệnh rẽ nhánh cho bài toán tìm giá trị lớn nhất (max) trong 2 số a và b
Dạng thiếu: max:= a;
if b>a then max:=b;
Dạng đủ: if b>a then max:=b
else max:=a;
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
2
Câu lệnh if - then
Chú ý:
- Câu lệnh if-then dạng đủ có thể lồng nhau
Ví dụ: If (a>b) and (a>c) then max:=a
else
if (b>a) and (b>c) then max:=b
else max:=c;
- Trước từ khóa else không có dấu chấm phẩy (;)
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
3
Câu lệnh ghép
- Khái niệm: Là một câu lệnh được hợp thành từ nhiều câu lệnh thành phần.
- Cú pháp:
Begin
End;
Ví dụ: if Delta>=0 then
Begin
Writeln (‘ PT co nghiem’);
x1:= (-b-sqrt(Delta))/(2*a);
x2:= (-b+sqrt(Delta))/(2*a);
Writeln(‘x1= ‘,x1:6:2,’x2= ‘,x2:6:2);
End;
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
Câu hỏi và bài tập củng cố
Câu hỏi và bài tập củng cố
BÀI 9: CẤU TRÚC RẼ NHÁNH
CÂU LỆNH IF - THEN
RẼ NHÁNH
BÀI 9: CẤU TRÚC RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
RẼ NHÁNH
BÀI 9: CẤU TRÚC RẼ NHÁNH
CÂU LỆNH IF - THEN
Câu 1:
Câu lệnh ghép
MỘT SỐ VÍ DỤ
CÂU LỆNH GHÉP
RẼ NHÁNH
BÀI 9: CẤU TRÚC RẼ NHÁNH
CÂU LỆNH IF - THEN
Câu 2: Hãy chỉ ra các lỗi trong đoạn chương trình sau:
Var a,b: interger; {1}
Begin {2}
Write(‘Nhap a,b:’);readln(a,b); {3}
if (a>b) then write(‘max:’,a); {4}
eles write(‘Max:’,b); {5}
End {6}
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
Câu 3: Cho đoạn chương trình sau:
A:=5; b:=7;
If b mod a<>0 then b:=b-a;
X:=a*b;
Sau khi thực hiện chương trình xong, giá trị của x là?
a. a*b
b. 5*2
c.10
d. ‘a*b’
Câu hỏi và bài tập củng cố
Câu 4: Đối với câu lệnh if – then dạng đủ, câu lệnh 2 được thực hiện khi nào?
a) Biểu thức điều kiện đúng
b) Biểu thức điều kiện sai
c) Câu lệnh 1 được thực hiện
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
Câu hỏi và bài tập củng cố
Câu 5: Hãy viết câu lệnh rẽ nhánh dạng thiếu và dạng đủ cho bài toán sau: Hãy kiểm tra xem số nguyên a có phải là số chẵn không?
Dạng thiếu: if a mod 2=0 then writeln(‘a la so chan.’);
If a mod 2 <>0 then writeln(‘a khong la so chan.’);
Dạng đủ: if a mod 2=0 then writeln(‘a la so chan.’)
else writeln(‘a khong phai la so chan.’);
BÀI 9: CẤU TRÚC RẼ NHÁNH
RẼ NHÁNH
CÂU LỆNH IF - THEN
CÂU LỆNH GHÉP
MỘT SỐ VÍ DỤ
Câu hỏi và bài tập củng cố
Câu 6: Lập trình kiểm tra số nguyên a có phải là số chẵn không?
- Xem trước : Phần 4. Một số ví dụ.
- Trả lời các câu hỏi và bài tập 1, 2,4 (trang 64 - SGK).
DẶN DÒ
BÀI HỌC ĐẾN ĐÂY LÀ KẾT THÚC
XIN CHÂN THÀNH CẢM ƠN THẦY CÔ VÀ CÁC EM!
* 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ẻ: Hoàng Thanh
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)