Bài 9. Cấu trúc rẽ nhánh
Chia sẻ bởi Trần Thị Lĩnh |
Ngày 10/05/2019 |
54
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:
CHƯƠNG 3:
CẤU TRÚC RẼ NHÁNH VÀ LẶP
BÀI 9:
CẤU TRÚC RẼ NHÁNH
Nội dung:
Rẽ nhánh
2. Câu lệnh if-then
Lai Khê
Hải Phòng
Hà Nội
?
Nếu em rẽ trái thì em sẽ đến Hải Phòng
Nếu em rẽ trái thì em sẽ đến Hải Phòng ngược lại em sẽ đi đến Hà Nội
Dạng thiếu:
Nếu … thì…
Dạng đủ:
Nếu … thì… nếu không thì…
Nếu trời mưa thì Minh sẽ ở nhà xem ti vi.
Nếu trời mưa thì Minh sẽ ở nhà xem ti vi, nếu trời không mưa (điều kiện ngược lại)thì Minh sẽ đi đá bóng với Hùng
Rẽ nhánh
Ví dụ: Giải phương trình bậc hai: ax2 + bx +c =0
Giải thuật:
?
Bước 1: tính delta D = b2 – 4ac
Bước 2: kiểm tra D
+Nếu D<0:
Bước 3: Ta sẽ thông báo phương trình vô nghiệm.
+ Nếu D>0:
Bước 4: Tính và đưa ra nghiệm của phương trình.
Nhập a,b,c
D = b2 – 4ac
D>=0 ?
Đúng
Sai
Thông báo vô nghiệm rồi kết thúc
Tính và đưa ra nghiệm thực rồi kết thúc
Để mô tả cấu trúc rẽ nhánh, Pascal dùng câu lệnh if-then
2 dạng:
Trong đó:
- Điều kiện là một biểu thức logic (trả về kết quả đúng hoặc sai)
- Câu lệnh, câu lệnh 1, câu lệnh 2 là một câu lệnh của Pascal
2. Câu lệnh if-then
SO D? HO?T D?NG C?A CU L?NH IF.. THEN
Dạng thiếu
If <điều kiện> then;
<ĐK>
Đ
S
Khi điều kiện không thỏa, câu lệnh có được thực hiện hay không?
Câu lệnh sẽ không được thực hiện, chương trình sẽ thoát
Bài toán: Giải phương trình bậc hai: ax2 + bx +c =0
Bước 1: tính delta D = b2 – 4ac
Bước 2: kiểm tra D
+Nếu D<0:
Bước 3: Ta sẽ thông báo phương trình vô nghiệm
If D<0 then writeln(‘ phuong trinh vo nghiem’);
Ví dụ:
Dạng đủ
If <điều kiện> then else ;
2 câu lệnh có xảy ra đồng thời hay không?
Bài toán: Giải phương trình bậc hai: ax2 + bx +c =0
Bước 1: tính delta D = b2 – 4ac
Bước 2: kiểm tra D
+Nếu D<0:
Bước 3: Ta sẽ thông báo phương trình vô nghiệm
+ Nếu D>=0:
Bước 4: Tính và đưa ra màn hình nghiệm của phương trình.
Trước else không có dấu “ ; “
Ví dụ:
Khác nhau:
+ Dạng thiếu: điều kiện sai sẽ bỏ qua câu lệnh.
+ Dạng đủ: điều kiện sai sẽ thực hiện câu lệnh 2.
Giống nhau: là câu lệnh cấu trúc rẽ nhánh, khi gặp điều kiện sẽ thực hiện thao tác thích hợp.
Tìm giống và khác nhau giữa 2 dạng ?
Program ptbac2;
Uses crt;
Var a, b, c, d, x1, x2: real;
Begin
Write(‘nhap he so a, b, c ‘);
Readln (a, b, c);
D := b*b - 4*a*c;
If (D<0) then writeln(‘phuong trinh vo nghiem’);
else
begin
x1 := (-b + sqrt (D) ) / (2*a);
x2 := (-b – sqrt (D) ) / (2*a);
writeln(‘x1= ’ , x1:7:3, ’ x2= ’ , x2:7:3);
end;
readln
End.
* Bài tập củng cố:
1. Nêu cú pháp của câu lệnh if-then ở hai dạng thiếu và đủ?
2. Bài tập trắc nghiệm:
Câu 1: Hãy chọn phương án ghép đúng nhất. Trong câu lệnh IF – THEN,
sau IF là <điều kiện>. Điều kiện là:
A, Biểu thức logic. B. Biểu thức số học. C. Một câu lệnh.
Câu 2: Hãy chọn phương án ghép đúng nhất.
Trong câu lệnh IF <điều kiện> THEN.
Câu lệnh đứng sau THEN được thực hiện khi?
điều kiện cho giá trị sai. B. điều kiện cho giá trị đúng.
C. Không cần xét điều kiện
Câu 3: Với cấu trúc IF <điều kiện> THEN ELSE ,
câu lệnh 2 được thực hiện khi?
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 tập củng cố:
Áp dụng: hãy nhập vào một số nguyên a,nếu a chia hết cho hai thì in ra màn hình “a la so chan”, ngược lại in ra “a la so le”.
Program baitap1;
Uses crt;
Var a: integer;
Begin
Write(‘nhap so nguyen a ‘); readln(a);
If (a mod 2 =0) then
Writeln(a, ‘la so chan’);
Else
Writeln(a, ‘la so le’);
Readln
End.
* Dặn dò:
- Học cấu trúc và hoạt động của câu lệnh If…then dang đủ và dạng thiếu.
- Đọc trước phần 3,4 SGK và trả lời câu hỏi: Nếu sau Then hoặc Else nhiều hơn 1 câu lệnh thì giải quyết như thế nào?
Thank you !!!
CẤU TRÚC RẼ NHÁNH VÀ LẶP
BÀI 9:
CẤU TRÚC RẼ NHÁNH
Nội dung:
Rẽ nhánh
2. Câu lệnh if-then
Lai Khê
Hải Phòng
Hà Nội
?
Nếu em rẽ trái thì em sẽ đến Hải Phòng
Nếu em rẽ trái thì em sẽ đến Hải Phòng ngược lại em sẽ đi đến Hà Nội
Dạng thiếu:
Nếu … thì…
Dạng đủ:
Nếu … thì… nếu không thì…
Nếu trời mưa thì Minh sẽ ở nhà xem ti vi.
Nếu trời mưa thì Minh sẽ ở nhà xem ti vi, nếu trời không mưa (điều kiện ngược lại)thì Minh sẽ đi đá bóng với Hùng
Rẽ nhánh
Ví dụ: Giải phương trình bậc hai: ax2 + bx +c =0
Giải thuật:
?
Bước 1: tính delta D = b2 – 4ac
Bước 2: kiểm tra D
+Nếu D<0:
Bước 3: Ta sẽ thông báo phương trình vô nghiệm.
+ Nếu D>0:
Bước 4: Tính và đưa ra nghiệm của phương trình.
Nhập a,b,c
D = b2 – 4ac
D>=0 ?
Đúng
Sai
Thông báo vô nghiệm rồi kết thúc
Tính và đưa ra nghiệm thực rồi kết thúc
Để mô tả cấu trúc rẽ nhánh, Pascal dùng câu lệnh if-then
2 dạng:
Trong đó:
- Điều kiện là một biểu thức logic (trả về kết quả đúng hoặc sai)
- Câu lệnh, câu lệnh 1, câu lệnh 2 là một câu lệnh của Pascal
2. Câu lệnh if-then
SO D? HO?T D?NG C?A CU L?NH IF.. THEN
Dạng thiếu
If <điều kiện> then
<ĐK>
Đ
S
Khi điều kiện không thỏa, câu lệnh có được thực hiện hay không?
Câu lệnh sẽ không được thực hiện, chương trình sẽ thoát
Bài toán: Giải phương trình bậc hai: ax2 + bx +c =0
Bước 1: tính delta D = b2 – 4ac
Bước 2: kiểm tra D
+Nếu D<0:
Bước 3: Ta sẽ thông báo phương trình vô nghiệm
If D<0 then writeln(‘ phuong trinh vo nghiem’);
Ví dụ:
Dạng đủ
If <điều kiện> then
2 câu lệnh có xảy ra đồng thời hay không?
Bài toán: Giải phương trình bậc hai: ax2 + bx +c =0
Bước 1: tính delta D = b2 – 4ac
Bước 2: kiểm tra D
+Nếu D<0:
Bước 3: Ta sẽ thông báo phương trình vô nghiệm
+ Nếu D>=0:
Bước 4: Tính và đưa ra màn hình nghiệm của phương trình.
Trước else không có dấu “ ; “
Ví dụ:
Khác nhau:
+ Dạng thiếu: điều kiện sai sẽ bỏ qua câu lệnh.
+ Dạng đủ: điều kiện sai sẽ thực hiện câu lệnh 2.
Giống nhau: là câu lệnh cấu trúc rẽ nhánh, khi gặp điều kiện sẽ thực hiện thao tác thích hợp.
Tìm giống và khác nhau giữa 2 dạng ?
Program ptbac2;
Uses crt;
Var a, b, c, d, x1, x2: real;
Begin
Write(‘nhap he so a, b, c ‘);
Readln (a, b, c);
D := b*b - 4*a*c;
If (D<0) then writeln(‘phuong trinh vo nghiem’);
else
begin
x1 := (-b + sqrt (D) ) / (2*a);
x2 := (-b – sqrt (D) ) / (2*a);
writeln(‘x1= ’ , x1:7:3, ’ x2= ’ , x2:7:3);
end;
readln
End.
* Bài tập củng cố:
1. Nêu cú pháp của câu lệnh if-then ở hai dạng thiếu và đủ?
2. Bài tập trắc nghiệm:
Câu 1: Hãy chọn phương án ghép đúng nhất. Trong câu lệnh IF – THEN,
sau IF là <điều kiện>. Điều kiện là:
A, Biểu thức logic. B. Biểu thức số học. C. Một câu lệnh.
Câu 2: Hãy chọn phương án ghép đúng nhất.
Trong câu lệnh IF <điều kiện> THEN
Câu lệnh đứng sau THEN được thực hiện khi?
điều kiện cho giá trị sai. B. điều kiện cho giá trị đúng.
C. Không cần xét điều kiện
Câu 3: Với cấu trúc IF <điều kiện> THEN
câu lệnh 2 được thực hiện khi?
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 tập củng cố:
Áp dụng: hãy nhập vào một số nguyên a,nếu a chia hết cho hai thì in ra màn hình “a la so chan”, ngược lại in ra “a la so le”.
Program baitap1;
Uses crt;
Var a: integer;
Begin
Write(‘nhap so nguyen a ‘); readln(a);
If (a mod 2 =0) then
Writeln(a, ‘la so chan’);
Else
Writeln(a, ‘la so le’);
Readln
End.
* Dặn dò:
- Học cấu trúc và hoạt động của câu lệnh If…then dang đủ và dạng thiếu.
- Đọc trước phần 3,4 SGK và trả lời câu hỏi: Nếu sau Then hoặc Else nhiều hơn 1 câu lệnh thì giải quyết như thế nào?
Thank you !!!
* 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ẻ: Trần Thị Lĩnh
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)