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

Chia sẻ bởi Bùi Trọng Thiện | Ngày 10/05/2019 | 141

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:

Ví dụ: Châu và Ngọc thường cùng nhau chuẩn bị các bài thực hành Tin học.
Một lần Châu hẹn với Ngọc: " Chiều mai nếu trời không mưa thì Châu sẽ đến nhà Ngọc".
Một lần khác, Ngọc nói với Châu: "Chiều mai nếu trời không mưa thì Ngọc sẽ đến nhà Châu, nếu trời mưa thì sẽ gọi điện cho Châu để chao đổi".


Câu nói của Châu được diễn đạt thuộc dạng thiếu:
Nếu ....... Thì ............
Câu nói của Ngọc diễn đạt thuộc dạng đủ:
Nếu ....... Thì ....... nếu không thì ....

Để mô tả cấu trúc rẽ nhánh, Pascal dùng câu lệnh If - then. Tương ứng với hai dạng thiếu và đủ nói trên, Pascal có hai câu lệnh If - then.
Dạng đủ

If <điều kiện> then < câu lệnh 1> else < câu lệnh 2>;

Điều kiện
Dạng thiếu

If < điều kiện> then < câu lệnh>;
Câu lệnh
Đúng
Sai
Điều kiện
Câu lệnh 2
Câu lệnh 1
Sai
Đúng
Ví dụ 3 :

Để tìm số lớn nhất max trong hai số a , b có thể thực hiện bằng 2 cách sau:

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;

Dùng một lệnh If - then dạng đử:

If b > a then max:= b else max:= a;

Ví dụ 1:

If D< 0 then writeln(` Phuong trinh vo nghiem`);


Ví dụ 2:

If a mod 3 = 0 then writeln(`a chia het cho 3`) else writeln(`a khong chia het cho 3`);
Theo cú pháp, sau mỗi từ khóa như: " then hay else " thì phảI kèm theo một câu lệnh. Nhưng trong nhiều trường hợp không phải 1 mà nhiều câu lệnh dùng để mô tả. Trong trường hợp đó ngôn ngữ lập trình cho phép gộp một dãy câu lệnh thành một câu lệnh gép.
Có dạng:
Begin

End.
Ví dụ
If d<0 then writeln(`phuong trinh vo nghiem,`)
Else
begin
X1:=(-b-sqr(b*b - 4*a*c)/2*a);
End;
Ví dụ 1: Tính 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: N nhập từ bàn phím.
Output: Đưa ra số ngày của năm N ra màn hình.

Program Nam_nhuan;
Uses crt;
Var N, SN :Integer;
Begin
Clrscr;
Writeln(`Nam :`);readln(N);
If (N mod 400 = 0) or ((Nmod 4 = 0) and (N mod 100<> 0))
Then SN:=360 else SN:= 365;
Writeln(` So ngay cua nam `, N,`la `,SN);
Readln;
End.

Ví dụ 2: Tìm nghiệm thực của phương trình bậc hai:

Input: các hệ số a, b, c nhập từ bàn phím.
Output: Đưa ra màn hình các nghiệm thực hoặc thông báo phương trình vô nghiệm.

Program giai_Ptb2;
Uses crt;
Var a,b,c,D, x1, x2:real;
Begin
Clrscr;
Write(`Nhap cac he so a,b,c`);readln(a,b,c);
D:= sqr(b) - 4*a*c ;
If D < 0 then writeln(`Phuong trinh vo nghiem`)
Else
Begin
x1:= ((-b)-sqrt(D))/(2*a);
x2:= ((-b)+sqrt(D))/(2*a);
Writeln(`x1=`,x1:8:3,`x2=`,x2:8:3);
End;
Readln;
End.

Ngô Quyền High School
* 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ẻ: Bùi Trọng Thiện
Dung lượng: | Lượt tài: 2
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)