Cấu trúc rẽ nhánh
Chia sẻ bởi Nguyễn Thị Kim |
Ngày 25/04/2019 |
69
Chia sẻ tài liệu: Cấu trúc rẽ nhánh thuộc Tin học 11
Nội dung tài liệu:
CHÀO MỪNG CÁC THẦY CÔ GIÁO VỀ DỰ GIỜ!
Giáo viên: Nguyễn Thị Kim
Trường THPT số 2 Bố Trạch
Câu hỏi 1: Em hãy viết thủ tục nhập dữ liệu vào từ bàn phím? Lấy 1 ví dụ.
Câu hỏi 2: Em hãy viết thủ tục đưa dữ liệu ra màn hình? Lấy 1 ví dụ.
Đáp án
Câu 1: - Thủ tục nhập dữ liệu vào từ bàn phím:
Read();
hoặc Readln();
Câu 2: - Thủ tục đưa dữ liệu ra màn hình:
Write();
hoặc Writeln();
- Ví dụ: read(a,b); readln(a,b);
- Ví dụ: write (a,b); writeln(‘phương trình có nghiệm’);
KIỂM TRA BÀI CŨ
À, 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
Nếu ngày mai mưa thì tớ ở nhà học bài
Để tớ nghĩ đã
Tom, ngày mai cậu định làm gì ?
Chương III: CẤU TRÚC RẼ NHÁNH VÀ LẶP
BÀI 9: CẤU TRÚC RẼ NHÁNH
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ì ?
Có khi nào cả hai việc cùng được thực hiện không?
Vậy mỗi việc sẽ được thực hiện khi nào?
- Dạng đủ: Nếu . thì . nếu không thì .
Tình huống 2:
1. Rẽ nhánh
Nhận xét:
1. Rẽ nhánh
Bài toán: Viết chương trình giải phương trình bậc hai: ax2 + bx + c=0; (a?0)
Để giải phương trình trên, trước tiên ta cần tính gì?
Sau đó ta làm gì?
Tính ?=b2 - 4ac
Sau đó, tuỳ thuộc vào giá trị ? mà ta có
kết luận nghiệm hay không.
Cụ thể:
- Nếu ? < 0 thì phương trình vô nghiệm
- Nếu ?? 0 thì phương trình có nghiệm
Đúng
Sai
Sơ đồ kh?i
Bài toán: Viết chương trình giải phương trình bậc hai:
ax2 + bx + c=0; (a?0)
Kiểm tra
? ? 0
Thông báo vô nghiệm
Tính và đưa ra nghiệm
Kết thúc
*Keát luaän: Neáu < 0 thì phöông trình voâ nghieäm,
ngöôïc laïi thì phöông trình coù nghieäm.
?
1. KHÁI NIỆM RẼ NHÁNH
Nếu ... Thì.
Nếu . thì.
nếu không thì.
Cấu trúc để mô tả các mệnh đề như trên
gọi là cấu trúc rẽ nhánh
a. Dạng thiếu
- Cú pháp:
If
<Điều kiện>
Then
;
Trong đó:
If
Then
,
: Từ khóa
<Điều kiện>
: Biểu thức quan hệ hoặc lôgic
: Là một câu lệnh của Pascal
2. Câu lệnh IF..THEN
Biểu thức quan hệ hoặc logic nhận 2 giá trị nào?
Đkiện chỉ có giá trị True (Đúng) hoặc False (sai)
- Ý nghĩa:
Nếu điều kiện nhận giá trị đúng thì thực hiện câu lệnh
- Sơ đồ khối:
Đ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
a. Dạng thiếu: If <điều kiện> Then;
2. Câu lệnh IF..THEN
- Ví dụ:
+ Nếu DT < 0 thì trả lời "PT vô nghiệm"
If
Then
DT < 0
Write(`PT vo nghiem`);
a. Dạng thiếu: If <Điều kiện> Then;
2. Câu lệnh IF..THEN
+ Nếu a > b thì Max=a
IF a > b Then Max := a;
- Cú pháp
If
<Điều kiện>
Then
;
Trong đó:
Else
If
Then
Else
,
,
: Từ khóa
<Điều kiện>
: Biểu thức quan hệ hoặc logic
,
: Là một câu lệnh của Pascal
b. Dạng đủ:
2. Câu lệnh IF..THEN
a. Dạng thiếu:
- Ý nghĩa:
Nếu điều kiện nhận giá trị đúng thì thực hiện CL1, ngược lại (điều kiện nhận giá trị sai) thì thực hiện CL2
* Chú ý:
- Trước Else không được có dấu chấm phẩy (;)
- Sau Then, Else chỉ có một câu lệnh
b. Dạng đủ: If <ĐK> Then Else ;
2. Câu lệnh IF..THEN
- Sơ đồ khối
Đ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
b. Dạng đủ:
2. Câu lệnh IF..THEN
Nếu điều kiện nhận giá trị đúng thì thực hiện CL1, ngược lại (điều kiện nhận giá trị sai) thì thực hiện CL2
- Ví dụ
Nếu DT < 0 thì trả lời "PT vô nghiệm"
ngược lại trả lời "PT có nghiệm"
If
Then
DT < 0
Write(`PT vo nghiem`)
Else
Write(`PT co nghiem`);
b. Dạng đủ
2. Câu lệnh IF..THEN
Trong câu lệnh IF - THEN hoặc IF – THEN – ELSE muốn thực hiện nhiều lệnh sau then hay sau else thì làm thế nào?
Tỡnh huống đặt ra: Nếu phương trỡnh có nghiệm thỡ hãy tính và đưa ra nghiệm của phương trỡnh?
?
Tức là:
Begin
;
;
.
;
End;
- Sau Then hoặc Else nếu muốn thực hiện nhiều hơn một câu lệnh thì ta phải ghép các câu lệnh đó lại thành một gọi là câu lệnh ghép.
- Cú pháp câu lệnh ghép
3. Câu lệnh ghép
Chỉ rõ đâu là câu lệnh ghép trong đoạn chương trình này?
DT < 0
begin
Write(`PT co 2 nghiem phan biet`);
Then Write(`phuong trinh vo nghiem`) Else
If
x1 := (-b - sqrt(DT) ) / (2*a);
x2 := (-b + sqrt(DT) ) / (2*a);
- Ví dụ: ta cĩ do?n chuong trình sau:
Writeln(`Nghiem x1=`,x1, `x1=`,x2);
3. Câu lệnh ghép
end
;
4. MỘT SỐ VÍ DỤ
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
Xác định Input và Output của bài toán?
Input: Các hệ số a,b,c; nhập từ bàn phím.
Output: Đưa ra màn hình các nghiệm thực hoặc thông báo "Phuong trinh vo nghiệm".
?
Mô phỏng
Xác định Input và Output của bài toán?
INPUT: Nhập a từ bàn phím
OUTPUT: + Nếu a>0 thì tính chu vi và diện tích của hình vuông có cạnh là a
+ Nếu a<=0 thì a không là cạnh của hình vuông
Ví dụ 2: Viết chương trình nhập vào một số a bất kì từ bàn phím. Kiểm tra:
Nếu a > 0 thì tính chu vi, diện tích của hình vuông có cạnh là a.
Ngược lại a <= 0 thì kết luận a không phải là cạnh hình vuông.
4. MỘT SỐ VÍ DỤ
Mô phỏng
BÀI TẬP TRẮC NGHIỆM
TÓM TẮT BÀI HỌC
1. Câu lệnh rẽ nhánh dạng thiếu
;
If
Then
<Điều kiện>
;
If
Then
Else
<Điều kiện>
2. Câu lệnh rẽ nhánh dạng đủ
3. Câu lệnh ghép
Begin
;
End;
Bài học đến đây đã kết thúc rồi!
Chúc chị em 20/10 vui, khoẻ, trẻ,
đẹp, hạnh phúc và thành đạt!
Giáo viên: Nguyễn Thị Kim
Trường THPT số 2 Bố Trạch
Câu hỏi 1: Em hãy viết thủ tục nhập dữ liệu vào từ bàn phím? Lấy 1 ví dụ.
Câu hỏi 2: Em hãy viết thủ tục đưa dữ liệu ra màn hình? Lấy 1 ví dụ.
Đáp án
Câu 1: - Thủ tục nhập dữ liệu vào từ bàn phím:
Read(
hoặc Readln(
Câu 2: - Thủ tục đưa dữ liệu ra màn hình:
Write(
hoặc Writeln(
- Ví dụ: read(a,b); readln(a,b);
- Ví dụ: write (a,b); writeln(‘phương trình có nghiệm’);
KIỂM TRA BÀI CŨ
À, 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
Nếu ngày mai mưa thì tớ ở nhà học bài
Để tớ nghĩ đã
Tom, ngày mai cậu định làm gì ?
Chương III: CẤU TRÚC RẼ NHÁNH VÀ LẶP
BÀI 9: CẤU TRÚC RẼ NHÁNH
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ì ?
Có khi nào cả hai việc cùng được thực hiện không?
Vậy mỗi việc sẽ được thực hiện khi nào?
- Dạng đủ: Nếu . thì . nếu không thì .
Tình huống 2:
1. Rẽ nhánh
Nhận xét:
1. Rẽ nhánh
Bài toán: Viết chương trình giải phương trình bậc hai: ax2 + bx + c=0; (a?0)
Để giải phương trình trên, trước tiên ta cần tính gì?
Sau đó ta làm gì?
Tính ?=b2 - 4ac
Sau đó, tuỳ thuộc vào giá trị ? mà ta có
kết luận nghiệm hay không.
Cụ thể:
- Nếu ? < 0 thì phương trình vô nghiệm
- Nếu ?? 0 thì phương trình có nghiệm
Đúng
Sai
Sơ đồ kh?i
Bài toán: Viết chương trình giải phương trình bậc hai:
ax2 + bx + c=0; (a?0)
Kiểm tra
? ? 0
Thông báo vô nghiệm
Tính và đưa ra nghiệm
Kết thúc
*Keát luaän: Neáu < 0 thì phöông trình voâ nghieäm,
ngöôïc laïi thì phöông trình coù nghieäm.
?
1. KHÁI NIỆM RẼ NHÁNH
Nếu ... Thì.
Nếu . thì.
nếu không thì.
Cấu trúc để mô tả các mệnh đề như trên
gọi là cấu trúc rẽ nhánh
a. Dạng thiếu
- Cú pháp:
If
<Điều kiện>
Then
;
Trong đó:
If
Then
,
: Từ khóa
<Điều kiện>
: Biểu thức quan hệ hoặc lôgic
: Là một câu lệnh của Pascal
2. Câu lệnh IF..THEN
Biểu thức quan hệ hoặc logic nhận 2 giá trị nào?
Đkiện chỉ có giá trị True (Đúng) hoặc False (sai)
- Ý nghĩa:
Nếu điều kiện nhận giá trị đúng thì thực hiện câu lệnh
- Sơ đồ khối:
Đ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
a. Dạng thiếu: If <điều kiện> Then
2. Câu lệnh IF..THEN
- Ví dụ:
+ Nếu DT < 0 thì trả lời "PT vô nghiệm"
If
Then
DT < 0
Write(`PT vo nghiem`);
a. Dạng thiếu: If <Điều kiện> Then
2. Câu lệnh IF..THEN
+ Nếu a > b thì Max=a
IF a > b Then Max := a;
- Cú pháp
If
<Điều kiện>
Then
;
Trong đó:
Else
If
Then
Else
,
,
: Từ khóa
<Điều kiện>
: Biểu thức quan hệ hoặc logic
,
: Là một câu lệnh của Pascal
b. Dạng đủ:
2. Câu lệnh IF..THEN
a. Dạng thiếu:
- Ý nghĩa:
Nếu điều kiện nhận giá trị đúng thì thực hiện CL1, ngược lại (điều kiện nhận giá trị sai) thì thực hiện CL2
* Chú ý:
- Trước Else không được có dấu chấm phẩy (;)
- Sau Then, Else chỉ có một câu lệnh
b. Dạng đủ: If <ĐK> Then
2. Câu lệnh IF..THEN
- Sơ đồ khối
Đ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
b. Dạng đủ:
2. Câu lệnh IF..THEN
Nếu điều kiện nhận giá trị đúng thì thực hiện CL1, ngược lại (điều kiện nhận giá trị sai) thì thực hiện CL2
- Ví dụ
Nếu DT < 0 thì trả lời "PT vô nghiệm"
ngược lại trả lời "PT có nghiệm"
If
Then
DT < 0
Write(`PT vo nghiem`)
Else
Write(`PT co nghiem`);
b. Dạng đủ
2. Câu lệnh IF..THEN
Trong câu lệnh IF - THEN hoặc IF – THEN – ELSE muốn thực hiện nhiều lệnh sau then hay sau else thì làm thế nào?
Tỡnh huống đặt ra: Nếu phương trỡnh có nghiệm thỡ hãy tính và đưa ra nghiệm của phương trỡnh?
?
Tức là:
Begin
.
End;
- Sau Then hoặc Else nếu muốn thực hiện nhiều hơn một câu lệnh thì ta phải ghép các câu lệnh đó lại thành một gọi là câu lệnh ghép.
- Cú pháp câu lệnh ghép
3. Câu lệnh ghép
Chỉ rõ đâu là câu lệnh ghép trong đoạn chương trình này?
DT < 0
begin
Write(`PT co 2 nghiem phan biet`);
Then Write(`phuong trinh vo nghiem`) Else
If
x1 := (-b - sqrt(DT) ) / (2*a);
x2 := (-b + sqrt(DT) ) / (2*a);
- Ví dụ: ta cĩ do?n chuong trình sau:
Writeln(`Nghiem x1=`,x1, `x1=`,x2);
3. Câu lệnh ghép
end
;
4. MỘT SỐ VÍ DỤ
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
Xác định Input và Output của bài toán?
Input: Các hệ số a,b,c; nhập từ bàn phím.
Output: Đưa ra màn hình các nghiệm thực hoặc thông báo "Phuong trinh vo nghiệm".
?
Mô phỏng
Xác định Input và Output của bài toán?
INPUT: Nhập a từ bàn phím
OUTPUT: + Nếu a>0 thì tính chu vi và diện tích của hình vuông có cạnh là a
+ Nếu a<=0 thì a không là cạnh của hình vuông
Ví dụ 2: Viết chương trình nhập vào một số a bất kì từ bàn phím. Kiểm tra:
Nếu a > 0 thì tính chu vi, diện tích của hình vuông có cạnh là a.
Ngược lại a <= 0 thì kết luận a không phải là cạnh hình vuông.
4. MỘT SỐ VÍ DỤ
Mô phỏng
BÀI TẬP TRẮC NGHIỆM
TÓM TẮT BÀI HỌC
1. Câu lệnh rẽ nhánh dạng thiếu
;
If
Then
<Điều kiện>
;
If
Then
Else
<Điều kiện>
2. Câu lệnh rẽ nhánh dạng đủ
3. Câu lệnh ghép
Begin
End;
Bài học đến đây đã kết thúc rồi!
Chúc chị em 20/10 vui, khoẻ, trẻ,
đẹp, hạnh phúc và thành đạt!
* 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ị Kim
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)