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

Chia sẻ bởi Nguyễn Thành Luân | Ngày 10/05/2019 | 44

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 III
CẤU TRÚC RẼ NHÁNH VÀ LẶP






BÀI 9:
CẤU TRÚC RẼ NHÁNH
BÀI 10:
CẤU TRÚC LẶP
3.Câu lệnh ghép
1.Rẽ nhánh
2.Câu lệnh rẽ nhánh IF-THEN
1. Rẽ nhánh
Mời các bạn 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ế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ày, ngày mai cậu có đi học nhóm không?
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.
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ì…
Tình huống 1
Nhận xét:
Một lần khác, 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ì…
Tình huống 2
Nhận xét:
Cấu trúc rẽ nhánh là cấu trúc dùng để mô tả các mệnh đề được chọn thực hiện hay không thực hiện một công việc phù hợp với điều kiện đang xảy ra
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 ?
a) Dạng thiếu :
a) Dạng thiếu
IF <Điều kiện> THEN ;
* Trong đó:
- Điều kiện: là biểu thức quan hệ hoặc biểu thức logic.
- Câu lệnh: là 1 câu lệnh của Pascal.
Thế nào là biểu thức logic?
Hãy vẽ lưu đồ cú pháp của dạng thiếu?
Di?u ki?n
Đúng

Câu lệnh
Sai

Câu lệnh
Đúng

Câu lệnh
Di?u ki?n
Di?u ki?n
Ví dụ :
If a mod 2 =0 then writeln (‘a la so chan’);
Cú pháp:
If a mod 3 =0 then writeln (‘a la so chia het cho 3’);
b) Dạng đủ :
a) Dạng thiếu
IF <Điều kiện> THEN ELSE ;
Hãy vẽ lưu đồ cú pháp của dạng đủ?
Cú pháp:
Đ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 đủ :
a) Dạng thiếu
b) Dạng đủ :
Ví dụ:
If a mod 2 =0 then writeln (‘a la so chan’)
Else writeln (‘a la so le’ );
Chú ý:
Câu lệnh trước ELSE không có dấu chấm phẩy (;)
Viết Câu lệnh rẽ nhánh tìm số lớn nhất max trong 2 số nguyên a và b theo dạng thiếu và dạng đủ ?
a) Dạng thiếu
b) Dạng đủ :
c) Một số bài tập
Bài tập 1(nhóm 1)
Bài tập 2(nhóm 2)
Viết Câu lệnh rẽ nhánh đưa ra câu thông báo số nguyên a là số dương hay số âm dạng thiếu và dạng đủ ?
Bài tập 3(nhóm 3)
Viết Câu lệnh rẽ nhánh đưa ra câu thông báo “Có nghiệm” hoặc “Vô nghiệm” của phương trình bậc 2 tùy thuộc vào điều kiện của Delta dạng thiếu và dạng đủ ?
Bài tập 1
c) Một số bài tập
D?ng thiếu:
Max:=a;
If b>a then Max:=b;
Dạng đủ:
If a>b Then Max:=a
Else Max:=b;
Bài tập 2
c) Một số bài tập
Dạng thiếu
If a <0 then writeln (‘a la so am’);

Dạng đủ
If a <0 then writeln (‘a là so am’)
else Writeln ( ‘ a la so duong’);
Bài tập 3
c) Một số bài tập
Dạng thiếu
If Delta <0 then writeln (‘phuong trinh vo nghiem’);
If Delta >0 then Writeln (‘Phuong trinh co nghiem’);
Dạng đủ
If Delta <0 then writeln (‘phuong trinh vo nghiem’)
else Writeln ( ‘Phuong trinh co nghiem’);
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);
Delta<0 ? vơ nghi?m
Ngược lại  Tính và in ra 2 nghiệm
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ụ:
Chú ý: sau END phải là dấu ;
Từ nay khi nói đến câu lệnh thì đó có thể là câu lệnh đơn hoặc là câu lệnh ghép.
Program GPTB2;
Uses crt;
Var . . . ;
BEGIN
. . . Nhập vào 3 hệ số a,b,c .. .
Delta :=. . .;
Readln;
END.
Nếu Delta<0 thì writeln(`ptvn`)
ngược lại Tính và in nghiệm;
Em hãy hoàn thiện chương trình giải phương trình bậc 2 (a?0) theo dàn ý sau:
Ví dụ 1:
Bài tập
Nhập 3 cạnh a, b, c của một tam giác. Viết câu lệnh rẽ nhánh đưa ra câu thông báo là tam giác đều, tam giác cân hay tam giác vuông.
Cấu trúc câu lệnh rẽ nhánh dạng thiếu, dạng đủ.
Hoạt động câu lệnh rẽ nhánh dạng thiếu, dạng đủ.
Xem tiếp nội dung tiếp theo của bài
“ Cấu trúc rẽ nhánh”
HÃY NHỚ
GV: Nguy?n Kh�nh Linh
BÀI GIẢNG KẾT THÚC
Cảm ơn các thầy cô về dự tiết học
* 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ành Luân
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)