Bài 9. Cấu trúc rẽ nhánh

Chia sẻ bởi Nguyễn Xuân Bình | Ngày 10/05/2019 | 118

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:

Bài 9
cấu trúc rẽ nhánh
Giáo án điện tử tin học lớp 11
( tiết PPCT: 10)
GV: Nguy?n Xuõn Bỡnh
T?: Toỏn - Tin
SỞ GIÁO DỤC VÀ ĐÀO TẠO ĐĂK LĂK
TRƯỜNG THPT PHAN BỘI CHẦU
1. Rẽ nhánh
Mời các em cùng xem và tìm hiểu các tình huống sau nhé!
ừm, để tớ nghĩ đã.
Nếu ngày mai mưa thì tớ nghỉ.
Này, ngày mai cậu có đi học nhóm không?
à! Nếu ngày mai mưa thì tớ nghỉ, nếu không mưa thì tớ đến nhà cậu học nhé.
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ó hai dạng mệnh đề:
1. Rẽ nhánh
Tình huấn 1: Giải phương trình bậc hai ax2+bx+c=0 (a?0)
Hãy nêu các bước giải phương trình bậc hai?
B1: Nhập hệ số a,b,c
B2: Tính Delta=b2 - 4ac;
B3: Nếu Delta âm thì
Thông báo PT vô nghiệm
Ngược lại
Tính và đưa ra nghiệm;
B4: Kết thúc;
1. Rẽ nhánh
các bước giải phương trình bậc hai:
Các em hãy thảo luận rồi giải quyết tình huấn sau:
- Sau khi tính Delta. Tuỳ thuộc vào giá trị Delta, một trong hai thao tác(đúng/sai) sẽ thực hiện.
1. Rẽ nhánh
- Sơ sồ thuật toán GPT bậc hai có dạng sau:
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
2. Câu lệnh IF - THEN
- Điều kiện là biểu thức quan hệ hoặc biểu thức lôgic.
- Câu lệnh là một lệnh của TurBo Pascal.
Trong đó:
Ví dụ:
IF a mod 2=0 THEN Writeln(` a la so chan`);
Câu lệnh
Sơ đồ khối
ý nghĩa
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`);
2. Câu lệnh IF - THEN
Câu lệnh
Sơ đồ khối
- Điều kiện là biểu thức quan hệ hoặc biểu thức lôgic.
- Câu lệnh1 và Câu lệnh 2 là câu lệnh của TurBo Pascal.
Trong đó:
ý nghĩa
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
BEGIN
Write(` Nhap a, b,c:`);readln(a,b,c);
Delta:=b*b-4*a*c;
IF Delta<0 then
Writeln(`Phương trình vô nghiệm`)
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);
Readln;
END.
Tình huấn 2: Giải phương trình bậc hai ax2+bx+c=0 (a?0)
Sau câu lệnh ELSE thế này thì không thực hiện hết.
Làm cách nào đây?
Các em hãy thảo luận rồi giải quyết tình huấn sau:
2. Câu lệnh IF - THEN
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ụ:
Em hãy hoàn thiện chương trình tìm số lớn nhất của ba số a, b, c như sau:
Program TIM_MAX;
Uses crt;
Var . . . ;
BEGIN
. . . Nhập vào 3 số a,b,c .. .
Max:=. . .;
Nếu Max Max:= .....;
Nếu Max Max:= ......;
Writeln(`.......`,.....)
Readln;
END.
4. Một số ví dụ
Ví dụ 1:
4. Một số ví dụ
- Sau khi thực hiện chương trình, thử với 3 bộ dữ liệu có kết quả giá trị Max như sau:
Hãy xác định Input và Output của bài?
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ớ
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
;
trong pascal
BÀI HỌC ĐẾN ĐÂY ĐÃ HẾT
MỜI QUÝ THẦY CÔ VÀ CÁC EM NGHỈ
* 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 Xuân Bình
Dung lượng: | Lượt tài: 2
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)