Bài 9. Cấu trúc rẽ nhánh
Chia sẻ bởi Trịnh Thị Chung |
Ngày 10/05/2019 |
52
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 3:
Tổ chức rẽ nhánh và lặp
Bài 9:
Cấu trúc rẽ nhánh
1. Rẽ nhánh:
“Nếu ngày mai trời nắng thì tôi sẽ đi đá bóng”
Nếu … thì
“Nếu ngày mai trời nắng thì tôi sẽ đi đá bóng, nếu trời không nắng thì tôi sẽ ở nhà”
Nếu … thì, nếu không … thì …
Cấu trúc mô tả các mệnh đề trên được gọi là cấu trúc rẽ nhánh
VD: Giải phương trình bậc 2: ax2 + bx + c = 0 (a 0)
1. Rẽ nhánh:
? Xác định bài toán?
Input: a, b, c (a 0)
? Các trường hợp kết luận nghiệm của phương trình?
Tính Delta = b2 – 4ac
Delta < 0: phương trình vô nghiệm
Delta 0: phương trình sẽ có nghiệm
Output: thông báo nghiệm của phương trình
? Vẽ sơ đồ khối mô tả các bước trên?
2. Cấu trúc rẽ nhánh If … then
a. Dạng thiếu:
If <điều kiện> then;
Mô tả: Điều kiện được tính và kiểm tra. Nếu điều kiện có giá trị đúng thì câu lệnh sẽ được thực hiện, ngược lại, nếu điều kiện sai câu lệnh sẽ bị bỏ qua.
VD: If a > b then Max : = a;
2. Cấu trúc rẽ nhánh If … then
b. Dạng đủ:
If <điều kiện> then else ;
Mô tả: Điều kiện được tính và kiểm tra. Nếu điều kiện có giá trị đúng thì câu lệnh 1 sẽ được thực hiện, ngược lại nếu điều kiện sai câu lệnh 2 sẽ được thực hiện.
VD: If a mod 2 = 0 then write(‘a là số chẵn’)
else write(‘a là số lẻ’);
? Vẽ sơ đồ khối mô tả cấu trúc rẽ nhánh trong 2 trường hợp?
Sơ đồ khối:
Dạng thiếu
Dạng đủ
Trong đó:
Điều kiện: là biểu thức logic hoặc biểu thức quan hệ
Câu lệnh, câu lệnh 1, câu lệnh 2: là câu lệnh trong Pascal
VD 1: If a > b then Max : = a;
VD 2: If a mod 2 = 0 then write(‘a là số chẵn’)
else write(‘a là số lẻ’);
3. Câu lệnh ghép:
Cú pháp:
Begin
;
End;
VD: If Delta < 0 then writeln(‘PT vô nghiệm’)
else
Begin
x1 := (- b - sqrt(b*b – 4*a*c))/(2*a);
x2 := (-b + sqrt(b*b – 4*a*c))/(2*a);
write(‘x1=’, x1:6:2,’ ’, ‘x2=’, x2:6:2);
End;
4. Áp dụng:
Viết chương trình giải PT bậc 2:
ax2 + bx + c = 0 (a 0)
Program PTB2; {Khai báo tên chương trình}
Var a,b,c: …
D, x1,x2: … {Khai báo các biến: a, b, c, D, x1, x2}
Begin {Chương trình chính}
… {Nhập a, b, c}
D:= … {tính Delta}
If D<0 then … no numeric noise key 1033
Else … {tính x1, x2 rồi đưa ra màn hình}
Readln
End.
Gợi ý:
Về nhà:
Viết chương trình nhập từ bàn phím 2 số nguyên bất kì và đưa ra màn hình số lớn hơn
Tổ chức rẽ nhánh và lặp
Bài 9:
Cấu trúc rẽ nhánh
1. Rẽ nhánh:
“Nếu ngày mai trời nắng thì tôi sẽ đi đá bóng”
Nếu … thì
“Nếu ngày mai trời nắng thì tôi sẽ đi đá bóng, nếu trời không nắng thì tôi sẽ ở nhà”
Nếu … thì, nếu không … thì …
Cấu trúc mô tả các mệnh đề trên được gọi là cấu trúc rẽ nhánh
VD: Giải phương trình bậc 2: ax2 + bx + c = 0 (a 0)
1. Rẽ nhánh:
? Xác định bài toán?
Input: a, b, c (a 0)
? Các trường hợp kết luận nghiệm của phương trình?
Tính Delta = b2 – 4ac
Delta < 0: phương trình vô nghiệm
Delta 0: phương trình sẽ có nghiệm
Output: thông báo nghiệm của phương trình
? Vẽ sơ đồ khối mô tả các bước trên?
2. Cấu trúc rẽ nhánh If … then
a. Dạng thiếu:
If <điều kiện> then
Mô tả: Điều kiện được tính và kiểm tra. Nếu điều kiện có giá trị đúng thì câu lệnh sẽ được thực hiện, ngược lại, nếu điều kiện sai câu lệnh sẽ bị bỏ qua.
VD: If a > b then Max : = a;
2. Cấu trúc rẽ nhánh If … then
b. Dạng đủ:
If <điều kiện> then
Mô tả: Điều kiện được tính và kiểm tra. Nếu điều kiện có giá trị đúng thì câu lệnh 1 sẽ được thực hiện, ngược lại nếu điều kiện sai câu lệnh 2 sẽ được thực hiện.
VD: If a mod 2 = 0 then write(‘a là số chẵn’)
else write(‘a là số lẻ’);
? Vẽ sơ đồ khối mô tả cấu trúc rẽ nhánh trong 2 trường hợp?
Sơ đồ khối:
Dạng thiếu
Dạng đủ
Trong đó:
Điều kiện: là biểu thức logic hoặc biểu thức quan hệ
Câu lệnh, câu lệnh 1, câu lệnh 2: là câu lệnh trong Pascal
VD 1: If a > b then Max : = a;
VD 2: If a mod 2 = 0 then write(‘a là số chẵn’)
else write(‘a là số lẻ’);
3. Câu lệnh ghép:
Cú pháp:
Begin
End;
VD: If Delta < 0 then writeln(‘PT vô nghiệm’)
else
Begin
x1 := (- b - sqrt(b*b – 4*a*c))/(2*a);
x2 := (-b + sqrt(b*b – 4*a*c))/(2*a);
write(‘x1=’, x1:6:2,’ ’, ‘x2=’, x2:6:2);
End;
4. Áp dụng:
Viết chương trình giải PT bậc 2:
ax2 + bx + c = 0 (a 0)
Program PTB2; {Khai báo tên chương trình}
Var a,b,c: …
D, x1,x2: … {Khai báo các biến: a, b, c, D, x1, x2}
Begin {Chương trình chính}
… {Nhập a, b, c}
D:= … {tính Delta}
If D<0 then … no numeric noise key 1033
Else … {tính x1, x2 rồi đưa ra màn hình}
Readln
End.
Gợi ý:
Về nhà:
Viết chương trình nhập từ bàn phím 2 số nguyên bất kì và đưa ra màn hình số lớn hơn
* 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ẻ: Trịnh Thị Chung
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)