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

Chia sẻ bởi Mai Văn Vũ | Ngày 10/05/2019 | 90

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:

1. Rẽ nhánh
Ví dụ 1: Ngày mai nếu trời không mưa thì Châu sẽ đến nhà Ngọc.
Ví dụ 2: Ngày mai nếu trời không mưa thì Châu sẽ đến
nhà Ngọc, nếu mưa thì Châu sẽ gọi điện để trao đổi bài.

Nó hình thành hai về, một bên là một điều kiện còn bên
Kia là một công việc nào đó.
Với ví dụ 1: Thuộc vào dạng điều kiện thiếu
Nếu……..thì……..
Với ví dụ 2: Thuộc vào dạng điều kiện đủ
Nếu……..thì…….nếu không thì….
1. Rẽ nhánh
Ta có thế biểu diễn bằng lưu đồ sau:
Ví dụ 1
Ví dụ 2
Trời mưa
Trời mưa
Châu đến
Nhà Ngọc
Châu đến
nhà Ngọc
Gọi điện
Trao đổi bài
Đ
S
S
Đ
Ví dụ 3: Giải phương trình bậc 2:
Trước tiên ta phải tính Delta: D=b*b -4*a*c;
(a< >0)
Nếu D không âm ta sẽ đưa ra nghiệm, trường hợp ngược
Lại ta phải thông báo phương trình vô nghiệm.
Mọi ngôn ngữ lập trình đều có các lệnh mô tả cấu trúc rẽ
Nhánh.
Nhập a,b,c
D>=0 ?
Đưa ra nghiêm
Kết thúc
Thông báo VN
Kết thúc
Đ
S
Vậy thì NNLT Pascal biểu diễn cấu trúc này như thế nào?
Mọi NNLT đều có các
Câu lệnh mô tả cấu trúc
rẽ nhánh
Để mô tả cấu trúc rẽ nhánh, Pascal sử dụng câu lệnh if - then tương ứng với dạng thiếu và đủ nói trên.
2. Câu lệnh if - then
Pascal có hai dạng lệnh if – then:
a) Dạng thiếu:
If <điều kiện> then
b) Dạng đủ:
If <điều kiện> then else
Trong đó:
Điều kiện là biểu thức lôgic.
- Câu lệnh, câu lệnh 1, câu lệnh 2 là câu lệnh trong Pascal.
Ví dụ: If(D<0) then Writeln(‘phương trình vô nghiêm’);
If(a mod 3=0)then Writeln(‘a chia hết cho 3’)
Else Writeln(‘a không chia hết cho 3’);
2. Câu lệnh if - then
Hoạt động:
- Ở dạng thiếu: Điều kiện sẽ được tính và kiểm tra.Nếu điều kiện đúng (nhận giá trị True) thì câu lệnh sẽ được thực hiện, ngược lại câu lệnh sẽ bị bỏ qua.

- Ở dạng đủ: Điều kiện cũng được tính và kiểm tra. Nếu
điều kiện đúng thì câu lệnh 1 sẽ được thực hiện, ngược lại
thì câu lệnh 2 sẽ được thực hiện.
Ta có sơ đồ khối của câu lệnh if – then:
Điều kiện
2. Câu lệnh if - then
Ta có sơ đồ khối của câu lệnh if – then:
Câu lệnh
Đ
Điều kiện
Câu lệnh 1
Đ
Câu lệnh 2
S
S
Dạng thiếu
Dạng đủ
Ví dụ: Tìm số lớn nhất (max) trong hai số a và b
Cách 1: Gán max:=a và dùng if- then dạng thiếu
if aCách 2: Dùng một lệnh if – then dạng đủ
If a>b then max:=a Else max:=b;
Với mỗi điều kiện làm thế nào để thực hiện được nhiều lệnh?
3. Câu lệnh ghép
- Trong trường hợp đó ta chỉ cân đặt khối lệnh đó nằm
trong cặp từ khoá Begin - End
If <điều kiện> then
begin
;
…………….;

End;
4. Một số ví dụ
Ví dụ 1: Tìm nghiệm thực của phương trình bậc hai
(a< >0)


Xác đinh bài toán:
Input : Nhập các hệ số a,b,c.
Output: Nếu có thì đưa nghiệm ra còn không thì
Thông báo vô nghiệm.
4. Một số ví dụ
Ví dụ 2:
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
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 cần tính số lượng ngày
In ra kết quả?
4. Cũng 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ẻ: Mai Văn Vũ
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)