[r]
(1)ChươngưIII
(2)TiÕt 12
Đ9 Cấu trúc rẽ nhánh
1 RÏ nh¸nh
Bài tốn: Lập trình nhập vào hai số thực a, b từ bàn phím Tính th ơng a/b in hình th ơng
Phân tích toán: Input:
a, b: real; Output:
(3)CÊu tróc rÏ nh¸nh
1 Rẽ nhánh
Thuật toán: (Liệt kê b ớc) B íc 1: NhËp a, b;
B íc 2: NÕu b<>0 th× t:=a/b, chun tíi b íc 4; B ớc 3: Không tinh đ ợc;
B c 4: In th ơng hình, kết thúc; Sơ đồ khối: Nhập a, b
B<>0 §óng Sai
T:= a/b
(4)CÊu tróc rÏ nh¸nh 1 Rẽ nhánh
Trong thực tế nhiều công việc đ ợc thực
điều kiện đ ợc thoả mãn
Ta diễn đạt lại câu nh sau: Nếu thỡ
hoặc
Nếu không
Ta thấy nhiỊu tht to¸n c¸c thao t¸c tiÕp
(5)Cấu trúc rẽ nhánh
2 Câu lệnh If - then
a)D¹ng thiÕu:
If <điều kiện> then <câu lệnh>; b) Dạng đầy đủ:
If <điều kiện> then <câu lệnh1> else <câu lệnh 2>; Trong đó:
If, then, else: từ khoá
điều kiện: lµ biĨu thøc logic (True, False)
câu lệnh, câu lệnh 1, câu lệnh 2: câu lệnh Pascal (câu lệnh câu lệnh đơn hoc cõu lnh ghộp)
Điều kiện Đúng Công việc Sai Điều kiện Đúng
Công việc Công việc
Sai Điều kiện Đúng Câu lệnh Sai Điều kiện Đúng
Câu lệnh Câu lệnh
(6)Cấu trúc rẽ nhánh
2 Câu lƯnh If - then
VÝ dơ:
Dạng đầy đủ
If b<>0 then t:=a/b else write(‘khong tinh duoc’); D¹ng thiÕu
If b<>0 then t := a/b;
If b=0 then write(‘khong tinh duoc’);
If <®iỊu kiƯn> then <câu lệnh 1> else <câu lệnh 2>; Điều kiện
Đúng
Câu lệnh Câu lệnh
Sai
If a > b then max := a else max := b; B<>0
§óng
T:=a/b
Khong tinh đ ợc
Sai B<>0
Đúng
(7)CÊu tróc rÏ nh¸nh
3 Mét sè vÝ dơ
VÝ dơ 1: T×m nghiƯm cđa ph ơng trình
ax + b = (a, b lµ hƯ sè, x lµ Èn) Input: a, b : real;
Output: x thoả mÃn ax+b=0 PT vô nghiệm
Điều kiện
Đúng
Câu lệnh Sai
Điều kiện
Đúng
Câu lệnh C©u lƯnh
Sai
(8)CÊu tróc rÏ nh¸nh
NhËp a, b
a <> §óng Sai
In x = -b/a, kÕt thóc
b = §óng Sai
In raPTVSN, kÕt thóc
In raPTVN, kÕt thóc
Tht to¸n
If a<>0 then write( x = ,-b/a)’ ’
else If b= then write( PT VSN )’ ’
else write( PT VN );’ ’
If a<>0 then write( x = ,-b/a);’ ’
If a=0 then
If b= then write( PT VSN )’ ’
(9)Program bac1; Uses crt;
Var a,b,x:real; Begin
Clrscr;
Write(‘nhap cac he so: ’); readln(a,b);
If a<>0 then writeln(‘nghiem la:’, -b/a) else
if b=0 then write(‘ phuong trinh vo so nghiem’) else write(‘phuong trinh vo nghiem’);
(10)Bµi tËp:
Bài 1: Hoán đổi giá trị hai biến a1 a2 a1 > a2 Bài 2: Tính giá trị biểu thức:
§iỊu kiƯn
§óng
Câu lệnh Sai
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>;
Điều kiện
Đúng
Câu lệnh C©u lƯnh
Sai x f(x) A x
x +2x-10 víi x B f(x)
x+3 víi x<1