bg cau trucrenhanh
TRANSCRIPT
![Page 1: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/1.jpg)
Click to edit Master title style
TRƯỜNG ĐẠI HỌC SƯ PHẠM TP.HCM
KHOA CNTT
TIN 3
Giảng viên: Nguyễn Khắc VănSinh viên:
Lê Thị Yến Nhi – K37.103.062
Trần Nguyễn Thu Thảo –K37.103.075
![Page 2: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/2.jpg)
Trước khi vào bài ngày hôm
nay, các em hãy xem tình
huống.
![Page 3: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/3.jpg)
Châu và Ngọc chuẩn bị các bài thực
hành cho môn Tin học
ChâuNgọc
Chiều mai nếu
trời không
mưa thì Châu
sẽ đến nhà
Ngọc.
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.
![Page 4: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/4.jpg)
Nếu… thì…
Nếu… thì…,
nếu không thì…
Cấu trúc dùng để mô tả các dạng mệnh đề như trên
được gọi là cấu trúc rẽ nhánh thiếu và đủ.
Một việc làm
cụ thể sẽ được
thực hiện nếu
một điều kiện
cụ thể thỏa
mãn.
Một trong hai
việc làm cụ thể
chắc chắn sẽ xảy
ra tùy thuộc vào
điều kiện cụ thể
có thỏa mãn hay
không.
![Page 5: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/5.jpg)
Trong ngôn ngữ
tin học, cấu trúc
rẽ nhánh “Nếu
..thì…”
được biểu diễn
như thế nào?
![Page 6: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/6.jpg)
CẤU TRÚC RẼ NHÁNH
BÀI 9
![Page 7: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/7.jpg)
Nội dung bài học
Rẽ nhánh1
Cấu trúc IF … THEN2
Câu lệnh ghép3
Một số ví dụ4
![Page 8: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/8.jpg)
Ví dụ: Giải phương trình bậc hai:
ax2 + bx + c = 0 (ĐK : a 0)
1. Rẽ nhánh
- Vậy trong tin học thì
giải như thế nào ???
• Input: nhập a, b, c
• Output: Xuất ra nghiệm của
phương trình bậc hai.
• Nhập hệ số a,b,c
• Tính D=b2 - 4ac
• Nếu D ≥ 0 thì tính rồi đưa ra nghiệm
thực và kết thúc, ngược lại thông báo vô
nghiệm rồi kết thúc.
- Nêu các bước giải
phương trình bậc 2
trong toán học ?
1. Xác định input, output.
2. Trình tự các bước thực hiện
giải phương trình bậc 2.
![Page 9: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/9.jpg)
Sau khi tính Delta, tùy
thuộc vào giá trị Delta, một
trong hai thao tác sẽ thực
hiện :
D ≥ 0
D < 0
Nhập a, b, c
D b2 – 4ac
D ≥ 0
Thông báo
vô nghiệm,
rồi kết thúc
Sai Đúng
Sơ đồ biểu diễn
thuật toán giải
phương trình
bậc 2 (a ≠ 0)
Tính rồi đưa
ra nghiệm thực,
rồi kết thúc
1. Rẽ nhánh
![Page 10: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/10.jpg)
Mệnh đề “Nếu … thì”
và “Nếu … thì…, nếu không
thì…”
biểu diễn trong ngôn ngữ Pascal
như thế nào???
1. Rẽ nhánh
![Page 11: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/11.jpg)
2. Câu lệnh IF … THEN
Câu lệnh If-then
Dạng thiếu
Dạng đủ
![Page 12: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/12.jpg)
Đ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
2. Câu lệnh IF … THEN
IF<điều kiện> THEN <câu lệnh> ; (1)
Là biểu thức logic Là một câu lệnh của pascal.
Ví dụ :
If D < 0 then writeln (‘ Phuong trinh vo nghiem : ’)
Dạng thiếu:
![Page 13: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/13.jpg)
Điều kiệnĐúng
Câu lệnh 1
Sai
Câu lệnh 2
Điều kiện
Câu lệnh 1Câu lệnh 2
Điều kiện
Câu lệnh 1
Điều kiện
IF <điều kiện> THEN <câu lệnh 1> (2)
ELSE <câu lệnh 2> ;
2. Câu lệnh IF … THEN
Dạng đủ:
Ví dụ:If a mod 3 = 0 then write
(‘a chia het cho 3’)else write (‘a khong chia
het cho 3’)
![Page 14: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/14.jpg)
2. Câu lệnh IF … THEN
Ví dụ : Tìm số lớn nhất max trong 2 số a và b.
Dùng câu lệnh gán max:=a và lệnh if-then dạng thiếu
If b > a then max:=b;
If b > a then max:=b else max:=a ;
![Page 15: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/15.jpg)
2. Câu lệnh IF … THEN
Sự giống nhau và khác nhau của hai dạng câu lệnh :
Dạng thiếu Dạng đủ
IF<điều kiện> THEN <câu lệnh> ; IF <điều kiện> THEN <câu lệnh 1>
ELSE <câu lệnh 2> ;
![Page 16: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/16.jpg)
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 D<0 THEN Writeln(‘phuong trinh vo nghiem’)
ELSE
X1:= (-B + SQRT(D))/(2*A);
X2:= (-B - SQRT(D))/(2*A);
Writeln(‘ Nghiem X1= ’, X1:5:1);
Writeln(‘ Nghiem X2= ’, X2:5:1);
![Page 17: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/17.jpg)
3.Câu lệnh ghép
Câu lệnh ghép là một câu lệnh được hợp thành từ nhiều
câu lệnh thành phần.
VD:
if a < b then
begin
max:=b;
min:=a;
end;
Cú pháp:
begin<Các câu lệnh > ;
end;
![Page 18: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/18.jpg)
3.Câu lệnh ghépprogram Giai_PTB2 ;
uses crt ;
var a,b,c : real;
D, x1, x2 : real;
begin
clrscr ;
write ( ‘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/a – x1 ;
writeln ( ‘ Phuong trinh co nghiem x1 = ’, x1:8:3, ‘ x2= ’, x2:8:3 ) ;
end;
readln;
end.
![Page 19: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/19.jpg)
Hãy xác định
Input và
Output của
bài toán?
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 cho 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
4. Một số ví dụ
![Page 20: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/20.jpg)
Liệt kê
B1:Nhập N
B2: Kiểm tra N chia hết
cho 400 hoặc (N chia hết
cho 4 và không chia hết
cho 100)
B3:Nếu B2 đúng thì
thông báo năm N có 366
ngày và kết thúc thuật
toán
B4:Nếu B2 sai thông báo
năm N có 365 ngày và
kết thúc thuật toán
4. Một số ví dụ
Sơ đồ khối
Bắt đầu
Nhập N
Thông báo năm
này
có 365 ngày
Thông báo năm
này
có 366 ngày
(N mod 400=0) or ((N mod
4=0)
and (N mod 100<>0) )
Kết thúc
Thuật toán
Đúng
Sai
![Page 21: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/21.jpg)
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 N cần tính số ngày
In ra kết quả?
![Page 22: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/22.jpg)
Củng cố 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
<các câu lệnh>;
END;
IF <điều kiện>THEN <Câu lệnh>;
IF <điều kiện> THEN <Câu lệnh 1>
ELSE<Câu lệnh 2>;
![Page 23: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/23.jpg)
Bài tập thêm: viết chương trình lập
trình nhập từ bàn phím hai số
nguyên a,b đưa ra màn hình giá
trị lớn hơn trong hai số đó.
Mở rộng cho ba số a, b, c.
Dặn dòVề nhà:
1. Làm bài tập : 1, 2, 4 trang 51 SGK
2. Chuẩn bị bài 10: TỔ CHỨC LẶP
![Page 24: Bg cau trucrenhanh](https://reader033.vdocuments.pub/reader033/viewer/2022060205/55a109981a28ab806a8b4748/html5/thumbnails/24.jpg)
Tiết học đếnđây
là hết