Cấu trúc rẽ nhánh
Chia sẻ bởi Uống Phải Say |
Ngày 10/05/2019 |
55
Chia sẻ tài liệu: Cấu trúc rẽ nhánh thuộc Tin học 11
Nội dung tài liệu:
Chào mừng các thầy cô
đến dự giờ lớp 11A8
Sở giáo dục Đào Tạo bắc ninh
2009- 2010
trường thPT GIA BìNH Số 1
Nếu Delta <0 thì thông báo phương trình vô nghiệm
Nếu Delta >=0 thì tính và đưa ra nghiệm
Hoặc có thể nói
Nếu Delta<0 thì thông báo phương trình vô nghiệm ngược lại tính và đưa ra nghiệm.
Nhập a, b, c
Tính Delta = b2 - 4ac
Kiểm tra
Delta < 0
Tính và đưa ra nghiệm
Thông báo vô nghiệm
Kết thúc
Sai
Đúng
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 cõu lệnh của Pascal.
Trong đó:
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
Dạng thiếu:
IF (a mod 2=0) THEN Writeln(‘ a la so chan’);
IF (a mod 2<>0) THEN Writeln(‘ a la so le’);
Dạng đủ:
IF (a mod 2=0) THEN Writeln(‘a lµ so chan’)
ELSE Writeln(‘a la so le’);
Dạng thiếu: If x>=0 then y:= x;
If x<0 then y:= -x;
Dạng đủ: If x>=0 then y:=x else y:=-x;
VD2: Kiểm tra số a là số chẵn hay là số lẻ
VD1: Tính giá trị của y biết y=|x|
3. Câu lệnh ghép
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ụ:
Câu lệnh ghép
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;
If (A>0) or (A<10) then.....
1
Muốn kiểm tra giá trị của A có lớn hơn 0 và nhỏ hơn 10 hay không ta viết câu lệnh If - then thế nào cho đúng?
If A>0 and A<10 then....
If (A>0) and (A<10) then....
2
Muốn kiểm tra đồng thời cả 3 giá trị của A, B, C
có cùng lớn hơn 0 hay không,
ta viết câu lệnh If thế nào cho đúng?
B. 0
Cđu 3
D. -101
-1
C. 1
B. 0
Xét chương trình sau:
BEGIN
a:=10; b:=11;
if a=b then write(-1);
if aif a>b then write(1);
END.
Kết quả của chương trình trên là:
Nhập giá trị bao nhiêu cho b để khi chạy chương trình
nhận được kết quả “Xin chuc mung!!!”
B. 75
Cđu 4
D. 125
50
C. 100
C.100
Var a, b:integer;
BEGIN
a:=100; write(‘Nhap vao gia tri b:‘); Readln(b);
If b=a then writeln(‘Xin chuc mung!!!’);
END.
Var a:Integer;
Begin
a:=100;
If (a mod 3=0) then write(‘a la so chia het cho 3’)
else
Write(‘a la so khong chia het cho 3’);
End.
Đáp án: a la so khong chia het cho 3
Hãy cho biết kết quả của chương trình sau:
Giải phương trình bậc 2: ax2+bx+c=0 (a 0)
Nhập vào các hệ số a, b, c
Tính Delta=b2-4ac
- Nếu Delta <0 thông báo phương trình vô nghiệm, ngược lại tính x1, x2 = và đưa ra nghiệm của trình
VD2: Nhập vào số N. Nếu N>0 thì thông báo N là số dương ngược lại thông báo N không phải là số dương
VD3: Tính giá trị của P biết
P=
nếu a>=0
nếu a<0
Cách 2: If a>=0 then P:=a+b else P:=a-b;
Cách 1: If a>=0 then P:=a+b;
If a<=0 then P:=a-b;
If N>0 then write(‘N la so duong’)
Else write(‘N khong phai la so duong’);
Giải phương trình bậc nhất:
ax+b=0 với a, b nhập từ bàn phím
- Nhập vào a, b
Nếu a=0 và b=0 thì đưa ra thông báo phương trình có vô số nghiệm
Nếu a=0 và b<>0 thì đưa ra thông báo phương trình vô nghiệm
Nếu a<>0 thì tính nghiệm x= -b/a và đưa ra nghiệm của phương trình
Nhập 3 số nguyên dương a, b, c
Kiểm tra xem a, b, c có lập thành độ dài 3 cạnh của 1 tam giác hay không
- Nếu có, tính diện tích tam giác đó ngược lại thông báo không là độ dài 3 cạnh của tam giác
Nhập vào 3 số nguyên dương a, b, c
Nếu a+b>c và b+c>a và c+a>b thì
P=(a+b+c)/2; S=
Sau đó đưa ra màn hình giá trị của S
- Ngược lại thông báo a, b, c không là độ dài 3 cạnh tam giác 3 cạnh tam giác
Các bước giải bài toán
Nhập vào số N. Nếu N > 0 thì tính và đưa ra căn bậc 2 của N, ngược lại thông báo N là không là số dương.
If N>0 then
Begin
s:=sqrt(N);
write(‘Can bac 2 cua N la:’,s);
End
Else write(‘N khong phai la so duong’);
Bài tập về nhà:
Bài 1: Nhập vào 2 số tìm và đưa ra max của 2 số đó
Bài 2: Nhập vào 3 số, tìm và đưa ra max của 3 số đó
Bài 3: Nhập vào các hệ số a1, b1, c1, a2, b2, c2 và giải hệ phương trình bậc nhất 2 ẩn sau:
đến dự giờ lớp 11A8
Sở giáo dục Đào Tạo bắc ninh
2009- 2010
trường thPT GIA BìNH Số 1
Nếu Delta <0 thì thông báo phương trình vô nghiệm
Nếu Delta >=0 thì tính và đưa ra nghiệm
Hoặc có thể nói
Nếu Delta<0 thì thông báo phương trình vô nghiệm ngược lại tính và đưa ra nghiệm.
Nhập a, b, c
Tính Delta = b2 - 4ac
Kiểm tra
Delta < 0
Tính và đưa ra nghiệm
Thông báo vô nghiệm
Kết thúc
Sai
Đúng
IF <Điều kiện> THEN
Điều kiện
Đúng
Câu lệnh
Nếu <điều kiện> đúng thì
sai
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 cõu lệnh của Pascal.
Trong đó:
b. Dạng đủ
IF <Điều kiện> THEN
Điều kiện
Đúng
Câu lệnh 1
Sai
Câu lệnh 2
Nếu <điều kiện> đúng thì
ngược lại thì
Đ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
Dạng thiếu:
IF (a mod 2=0) THEN Writeln(‘ a la so chan’);
IF (a mod 2<>0) THEN Writeln(‘ a la so le’);
Dạng đủ:
IF (a mod 2=0) THEN Writeln(‘a lµ so chan’)
ELSE Writeln(‘a la so le’);
Dạng thiếu: If x>=0 then y:= x;
If x<0 then y:= -x;
Dạng đủ: If x>=0 then y:=x else y:=-x;
VD2: Kiểm tra số a là số chẵn hay là số lẻ
VD1: Tính giá trị của y biết y=|x|
3. Câu lệnh ghép
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ụ:
Câu lệnh ghép
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
If (A>0) or (A<10) then.....
1
Muốn kiểm tra giá trị của A có lớn hơn 0 và nhỏ hơn 10 hay không ta viết câu lệnh If - then thế nào cho đúng?
If A>0 and A<10 then....
If (A>0) and (A<10) then....
2
Muốn kiểm tra đồng thời cả 3 giá trị của A, B, C
có cùng lớn hơn 0 hay không,
ta viết câu lệnh If thế nào cho đúng?
B. 0
Cđu 3
D. -101
-1
C. 1
B. 0
Xét chương trình sau:
BEGIN
a:=10; b:=11;
if a=b then write(-1);
if aif a>b then write(1);
END.
Kết quả của chương trình trên là:
Nhập giá trị bao nhiêu cho b để khi chạy chương trình
nhận được kết quả “Xin chuc mung!!!”
B. 75
Cđu 4
D. 125
50
C. 100
C.100
Var a, b:integer;
BEGIN
a:=100; write(‘Nhap vao gia tri b:‘); Readln(b);
If b=a then writeln(‘Xin chuc mung!!!’);
END.
Var a:Integer;
Begin
a:=100;
If (a mod 3=0) then write(‘a la so chia het cho 3’)
else
Write(‘a la so khong chia het cho 3’);
End.
Đáp án: a la so khong chia het cho 3
Hãy cho biết kết quả của chương trình sau:
Giải phương trình bậc 2: ax2+bx+c=0 (a 0)
Nhập vào các hệ số a, b, c
Tính Delta=b2-4ac
- Nếu Delta <0 thông báo phương trình vô nghiệm, ngược lại tính x1, x2 = và đưa ra nghiệm của trình
VD2: Nhập vào số N. Nếu N>0 thì thông báo N là số dương ngược lại thông báo N không phải là số dương
VD3: Tính giá trị của P biết
P=
nếu a>=0
nếu a<0
Cách 2: If a>=0 then P:=a+b else P:=a-b;
Cách 1: If a>=0 then P:=a+b;
If a<=0 then P:=a-b;
If N>0 then write(‘N la so duong’)
Else write(‘N khong phai la so duong’);
Giải phương trình bậc nhất:
ax+b=0 với a, b nhập từ bàn phím
- Nhập vào a, b
Nếu a=0 và b=0 thì đưa ra thông báo phương trình có vô số nghiệm
Nếu a=0 và b<>0 thì đưa ra thông báo phương trình vô nghiệm
Nếu a<>0 thì tính nghiệm x= -b/a và đưa ra nghiệm của phương trình
Nhập 3 số nguyên dương a, b, c
Kiểm tra xem a, b, c có lập thành độ dài 3 cạnh của 1 tam giác hay không
- Nếu có, tính diện tích tam giác đó ngược lại thông báo không là độ dài 3 cạnh của tam giác
Nhập vào 3 số nguyên dương a, b, c
Nếu a+b>c và b+c>a và c+a>b thì
P=(a+b+c)/2; S=
Sau đó đưa ra màn hình giá trị của S
- Ngược lại thông báo a, b, c không là độ dài 3 cạnh tam giác 3 cạnh tam giác
Các bước giải bài toán
Nhập vào số N. Nếu N > 0 thì tính và đưa ra căn bậc 2 của N, ngược lại thông báo N là không là số dương.
If N>0 then
Begin
s:=sqrt(N);
write(‘Can bac 2 cua N la:’,s);
End
Else write(‘N khong phai la so duong’);
Bài tập về nhà:
Bài 1: Nhập vào 2 số tìm và đưa ra max của 2 số đó
Bài 2: Nhập vào 3 số, tìm và đưa ra max của 3 số đó
Bài 3: Nhập vào các hệ số a1, b1, c1, a2, b2, c2 và giải hệ phương trình bậc nhất 2 ẩn sau:
* 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ẻ: Uống Phải Say
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)