Giáo án điện tử tin học lớp 11
Cấu Trúc Rẽ Nhánh Và Lặp
Tiết 11:
Chương III
Ngô Thái Gil _THPT Phú Hưng
Mục tiêu:
1. Về kiến thức:
- Phát biểu được nội dung và nhu cầu của cấu trúc rẽ nhánh trong biểu diễn thuật toán.
- Sử dụng được cấu trúc rẽ nhánh trong mô tả thuật toán của một số bài toán đơn giản.
2. Về kỹ năng:
- Phân biệt và sử dụng được câu lệnh rẽ nhánh ở 2 dạng: dạng thiếu và đầy đủ
- Viết được các câu lệnh rẽ nhánh dạng thiếu, rẽ nhánh dạng đầy đủ và áp dụng để thực hiện được thuật toán của một bài toán đơn giản.
Giáo án điện tử tin học lớp 11
4..Một số ví dụ
Mời các bạn cùng xem và tìm hiểu các tình huống sau nhé!
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”.
Câu nói của Châu cho biết việc làm cụ thể nào? Và điều kiện đó là gì ?
Câu nói của Châu 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 ?
Ta nói cách diễn đạt như vậy thuộc dạng thiếu: Nếu…thì…
Nhận xét:
Tình Huống 1:
Câu nói của Châu cho biết việc làm cụ thể Châu sẽ đến nhà Ngọc và điều kiện là Nếu trời không mưa (thỏa mãn)
Câu nói của Châu không đề cập đến việc gì sẽ xảy ra khi điều kiện đó không được thỏa mãn (trời mưa)?
Tình Huống 2:
Ngọc hẹn 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 mưa thì sẽ gọi điện cho Châu để trao đổi ”.
Câu nói của Ngọc 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?
Ta nói cách diễn đạt như vậy thuộc dạng đủ: Nếu…thì…, nếu không thì…
Nhận xét
?
?
?
Câu nói của Ngọc khẳng định hai việc cụ thể Ngọc sẽ đến nhà Châu và Ngọc gọi điện cho Châu để trao đổi
Cả hai việc không thể thực hiện cùng 1 thời điểm. Tuy nhiên việc nào trong 2 việc sẽ được thực hiện tùy thuộc vào điều kiện cụ thể.
Mỗi việc sẽ được thực hiện khi trời không mưa thì Ngọc sẽ đến nhà Châu. Nếu trời mưa sẽ gọi điện cho Châu.
Nếu… thì….
Nếu…thì…, nếu không thì…
Một việc làm cụ thể sẽ diễn ra nếu một điều kiện cụ thể được thỏa mãn
Hai việc làm cụ thể chắc chắn sẽ diễn ra tùy thuộc điều kiện cụ thể có thỏa mãn hay không
Cấu trúc dùng đề mô tả các mệnh đề như trên gọi là
cấu trúc rẽ nhánh
Rẽ nhánh là một điều khiển chọn thực hiện hay không thực hiện một công việc phù hợp với một điều kiện đang xảy ra.
Thực chất là dạy máy học cách xử lý tình huống.
Ví dụ: Giải phương trình bậc hai ax2 + bx + c =0, (a # 0)
Trình bày các bước giải của phương trình trên trong toán học ?
Trình bày các bước viết chương trình để tìm nghiệm của phương trình trên trong pascal ?
Nhập hệ số a,b,c
Tính Delta=b2 - 4ac
Nếu Delta âm thì thông báo PT vô nghiệm, ngược lại tính và đưa ra nghiệm.
IF <Điều kiện> THEN ;
Điều kiện
Đúng

Câu lệnh
Nếu <điều kiện> đúng thì được thực hiện,
sai bị bỏ qua.
Sai
a. Dạng thiếu

Câu lệnh
Đúng

Câu lệnh
Điều kiện
Điều kiện
- Điều kiện là biểu thức lôgic.
- Câu lệnh là một lệnh của Pascal.
Trong đó:
Ví dụ:
IF a mod 2=0 THEN Writeln( `a la so chan`);
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
Nếu <điều kiện> đúng thì được thực hiện,
ngược lại thì được thực hiện.
Đ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
Ví dụ:
IF a mod 2=0 THEN Writeln( `a là so chan`)
ELSE Writeln( `a la so le`);
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);
Nếu Delta âm thì thông báo PT vô nghiệm, ngược lại tính và đưa ra nghiệm.
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
< Các câu lệnh>;
END;
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:5:1);
Writeln(` Nghiem X2= `, X2:5:1);
END;
Ví dụ:
{
1 Lệnh
4..Một số ví dụ
Ví dụ 1:
Số thực a (được nhập từ bàn phím) nếu a > 0 thì in ra màn hình “a là số dương”.
Xác định bài toán:
Input: số a
Output: a là số dương nếu a>0
Dữ liệu: a: kiểu thực
Sơ đồ khối
if (a > 0) then writeln(a, ‘ la so duong`);
4..Một số ví dụ
Program VD1;
Uses Crt;
Var a: real;
Begin

Write(‘Nhap gia tri a=’);
Readln(a);

If (a>0) then
write(a,’ la so duong’);



Readln
End.
Mô tả bằng Pascal
4..Một số ví dụ
Ví dụ 2: Xác định số nguyên a (được nhập từ bàn phím) là số chẵn hay số lẻ
Xác định bài toán:
Input: số nguyên a
Output: a là số chẵn hoặc a là số lẻ
Dữ liệu: a: kiểu ngyên
if a mod 2 = 0 then write(a, ` la so chan`) else write(a, ` a la so le`);
Nếu a chia hết cho 2 thì a là số chẵn ngược lại a là số lẻ
Program vidu2;
Uses crt;
Var N: integer;
Begin
Write(‘Hay nhap vao gia tri N =’);
Readln(N);
If (N mod 2 = 0) then write(a, ‘la so chan’)
else write(a, ‘la so le’);
Readln
End.
Ví dụ 2: Xác định số nguyên a (được nhập từ bàn phím) là số chẵn hay số lẻ
Hãy nhớ
Cấu trúc mô tả các mệnh đề:
"Nếu . thì."
"Nếu . thì .ngược lại."
gọi là cấu trúc rẽ nhánh.
? Lệnh rẽ nhánh dạng thiếu
? Lệnh rẽ nhánh dạng đủ
Câu lệnh ghép
BEGIN
;
END;
IF <điều kiện> THEN ;
IF <điều kiện> THEN
ELSE ;
nguon VI OLET