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

Chia sẻ bởi Bùi Thu Hằng | Ngày 10/05/2019 | 43

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:

Nhiệt Liệt Chào Mừng
Các Thầy Cô Đến Dự Lớp
Program vi_du_cau_lenh_ghep;
var a, b: integer;
uses crt;
Begin
Clrscr;
if a a:=b-a; b:=a+b; writeln(`a=`, a, `b=`, b);
else
begin a:=a+b; b:=a-b; writeln(`a=`, a, `b=`, b); end;
Readln
End.


Program chu_vi_dien_tich;
var a, C, S: integer;
Begin
Write(`nhap gia tri cua a=`); readln(a);
If a<=0 then writeln(`a khong phai la canh hinh vuong`)
Else
begin
C:=4*a;
S:=a*a;
writeln(`chu vi la: `,C,` dien tich la: `,S);
end;
Readln
End.


Này, ngày mai cậu có đi học nhóm không?
Để tớ suy nghĩ đã nhé.
à mà,chiều mai nếu trời không mưa tớ sẽ đến nhà cậu, nếu mưa thì sẽ gọi điện cho cậu để trao đổi nhé!
?!?!..
Chiều mai, nếu trời không mưa thì tớ sẽ đến nhà cậu.
A
B
cấu trúc rẽ nhánh
1. Rẽ nhánh
Bài 9
Cấu trúc được dùng để mô tả các mệnh đề có dạng như thế được gọi là:
Cấu trúc rẽ nhánh thiếu và đủ
Nếu . thì
Nếu . thì ., nếu không thì.
cấu trúc rẽ nhánh
1. Rẽ nhánh
Bài 9
Nhập a, b;
Nếu a >b thì thông báo a là số lớn nhất, ngược lại thông báo b là số lớn nhất.
Ví dụ
Viết chương trình nhập số nguyên khác nhau a, b từ bàn phím. Hãy tìm số lớn nhất trong hai số này?
Em hãy nêu các bước giải bài toán trên?
Nhập a, b
a >b
Thông báo a
là số lớn nhất
Thông báo b
là số lớn nhất
Đ
S
Ví dụ :
Sơ đồ khối:
Kết thúc
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
- Đ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 lệnh của TurboPascal.
Trong đó:
2. Câu lệnh If- then
Bài 9
cấu trúc rẽ nhánh
IF <Điều kiện> THEN ;
a. Dạng thiếu
- Đ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 lệnh của TurboPascal.
Trong đó:
Ví dụ:
IF ....... THEN ..............;
2. Câu lệnh If- then
Bài 9
cấu trúc rẽ nhánh
Viết câu lệnh rẽ nhánh kiểm tra và thông báo số nguyên a bất kì có chẵn hay không?
a mod 2=0
Writeln(` a la so chan`)
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
Ví dụ:
IF a mod 2=0 THEN Writeln(`a là so chan`)
ELSE Writeln(`a la so le`);
Bài 9
cấu trúc rẽ nhánh
2. Câu lệnh If- then
Viết chương trình nhập 2 số nguyên khác nhau a,b từ bàn phím.Hãy tìm số lớn nhất trong hai số này?
2. Câu lệnh If- then
Bài 9
cấu trúc rẽ nhánh
Cho số nguyên a nhập từ bàn phím. Kiểm tra xem a có phải là số âm chẵn hay không? In thông báo ra màn hình.Viết điều kiện của câu lệnh rẽ nhánh cho bài toán trên?
a la so am chan
a khong la so am chan

If a<=0 then writeln(`a khong phai la canh hinh vuong`)
Else

C:=4*a;
S:=a*a;
writeln(`chu vi la: `,C,` dien tich la: `,S);


Ví dụ 2:Chương trình nhập vào từ bàn phím số a bất kì. Kiểm tra nếu a>0 thì tính chu vi và diện tích hình vuông có cạnh là a. Ngược lại nếu a<=0 thì kết luận a không phải là cạnh của hình vuông.
2. Câu lệnh If- then
Bài 9
cấu trúc rẽ nhánh
Trong TurboPascal cho phép gộp nhiều câu lệnh thành một câu lệnh gọi là câu lệnh ghép, có dạng:
BEGIN
< Các câu lệnh>;
END;
Ví dụ:

If a<=0 then writeln(`a khong phai la canh hinh vuong`)
Else
Begin
C:=4*a;
S:=a*a;
writeln(`chu vi la: `,C,` dien tich la: `,S);
End;

3. Câu lệnh ghép
Bài 9
cấu trúc rẽ nhánh
Program GPTB2;
Uses crt;
Var . . . ;
BEGIN
. . . Nhập vào 3 hệ số a,b,c .. .
Delta :=. . .;
Readln;
END.
Nếu Delta<0 thì writeln(`ptvn`)
ngược lại Tính và in nghiệm;
Em hãy hoàn thiện chương trình giải phương trình bậc 2 (a?0) theo dàn ý sau:
VD
Bài 9
cấu trúc rẽ nhánh
3. 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 ;
Program vi_du_cau_lenh_ghep;
var a, b: integer;
uses crt;
Begin
Clrscr;
if a a:=b-a; b:=a+b; writeln(`a=`, a, `b=`, b);
else
begin a:=a+b; b:=a-b; writeln(`a=`, a, `b=`, b); end;
Readln
End.


Program vi_du_cau_lenh_ghep;
var a, b: integer;
uses crt;
Begin
Clrscr;
if a a:=b-a; b:=a+b; writeln(`a=`, a, `b=`, b);
else
a:=a+b; b:=a-b; writeln(`a=`, a, `b=`, b);
Readln
End.


begin
begin
end;
end
Xin chân thành cảm ơn các thầy cô giáo và các em học sinh!
Câu 7:
Bộ nhớ phân phối cho mảng một chiều được tính như thế nào, chọn phương án hợp lí nhất trong các phương án sau đây:
A. Dung lượng tính theo kiểu dữ liệu phân phối cho một giá trị trong mảng;
B. Tính dung lượng là 10 byte cho một mảng bất kì ;
C. Không tính được dung lượng cụ thể mà bộ nhớ sẽ cấp phát ;
D. Bằng tích của số các phần tử tối đa khai báo trong mảng với số byte cho một phần tử ;
* 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 Thu Hằng
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)