GV:Hoa Oải Hương


Câu 1. Câu lệnh nào sau đây dùng để nhập dữ liệu cho biến x?
A. Realdn(x);
B. Write(`Nhap du lieu cho bien x:`);



KIỂM TRA BÀI CŨ
C. Writeln(`nhap du lieu cho bien x:`);
D. Readln(x);


Câu 2: Trường hợp nào dưới đây không phải là tên biến trong Pascal ?
A. Giai_Ptrinh_Bac_2;
B. Ngaysinh;
C. _Noisinh;
D. 2x;
KIỂM TRA BÀI CŨ


Câu 3: Câu lệnh nào sau đây dùng để hiển thị giá trị của x lên màn hình?
Readln(x);
B. Read(x);
C. Writeln(`x`);
D. Writeln(x);
KIỂM TRA BÀI CŨ


Câu 4: Cú pháp để khai báo tên một chương trình Pascal là:
Program;
B. ;
C. Program ;
D. Không có đáp án nào đúng;
KIỂM TRA BÀI CŨ
CHUYÊN ĐỀ 3: CẤU TRÚC RẼ NHÁNH VÀ LẶP
§9. CẤU TRÚC RẼ NHÁNH
Một cửa hàng photocopy tính tiền khách hàng đến photo theo bảng giá như sau?
CHUYÊN
ĐỀ
3
Giả sử hôm nay lớp phải photo bài tập cho các bạn dùng X tờ A4, photo 2 mặt thì cửa hàng cho biết tiền họ phải trả được tính theo qui định tương ứng như trên bảng giá như thế nào?
CHUYÊN
ĐỀ
3
Nếu X <= 200 thì số tiền phải trả là X*300 (đồng);

Nếu X > 200 thì số tiền phải trả là X*280;
Có 2 trường hợp tính tiền:
CHUYÊN
ĐỀ
3
Nếu X <= 200 thì số tiền phải trả là X*300 (đồng);

Nếu X > 200 thì số tiền phải trả là X*280;
Bước 1:
Nhập vào X;
Bước 2 :
Bước 3:
Bước 4:
Kết thúc;
Xây dựng thuật toán tính tiền cho khách hàng trong
trường hợp trên:
Thuật toán
CHUYÊN
ĐỀ
3
?
?
Thuật toán ở trên viết cho người hiểu tiếng Việt.
Bây giờ ta phải viết chương trình cho máy tính thực
hiện tính tiền cho khách hàng thì viết thế nào?
CHUYÊN
ĐỀ
3
Nếu X <= 200 thì số tiền phải trả là X*300.

Nếu X > 200 thì số tiền phải trả là X*280.
2 mệnh đề trên cho biết việc làm cụ thể nào? Và điều kiện đó là gì ?
2 mệnh đề trên có đề cập đến việc gì sẽ xảy ra khi điều kiện đó không được thỏa mãn không?
- Dạng thiếu: Nếu . thì .
Nhận xét:
1. Câu lệnh IF..THEN
Điều kiện
Điều kiện
Việc làm
Việc làm
CHUYÊN
ĐỀ
3
?
?
a. Dạng thiếu
- Cú pháp:
If
<Điều kiện>
Then

;
Trong đó:
If
Then
,
: Từ khóa
<Điều kiện>
: Biểu thức so sánh hoặc lôgic


: Là một câu lệnh của Pascal
1. Câu lệnh IF..THEN
CHUYÊN
ĐỀ
3
- Ý nghĩa:
Nếu điều kiện nhận giá trị đúng thì thực hiện câu lệnh
- Sơ đồ khối:
Điều kiện
Đúng

Câu lệnh
Sai

Câu lệnh
Đúng

Câu lệnh
Điều kiện
Điều kiện
a. Dạng thiếu: If <điều kiện> Then ;
1. Câu lệnh IF..THEN
CHUYÊN
ĐỀ
3
Nếu X <= 200 thì số tiền phải trả là X*300 (đồng);

Nếu X <= 200 thì số tiền phải trả là X*300 (đồng);

Nếu X > 200 thì số tiền phải trả là X*280;
Ví dụ 1:
a. Dạng thiếu: If <điều kiện> Then ;
1. Câu lệnh IF..THEN
If Then
X <= 200
Writeln (‘So tien phai tra la `, X* 300, `dong ‘);
If Then
X > 200
Writeln (‘So tien phai tra la `, X* 280, `dong‘);
CHUYÊN
ĐỀ
3
Program Photocopy; {chuong trinh 1}
Uses Crt;
Var X : longint;
Begin
ClrScr;
Writeln (‘ Nhap so luong to: ‘); Readln(X);
IF X <= 200 Then Writeln (‘So tien phai tra la `, X* 300, `dong ‘);
IF X > 200 Then Writeln (‘So tien phai tra la `, X* 280, `dong‘);
Readln;
End.
1. Câu lệnh IF..THEN
CHUYÊN
ĐỀ
3
Chương trình trên đã dùng 2 lần kiểm tra điều kiện X. Chỉ cần một lần kiểm tra điều kiện của X chúng ta có giải quyết được bài toán không?
CHUYÊN
ĐỀ
3
CHUYÊN
ĐỀ
3
Nếu điều kiện X <=200 đúng thì điều kiện X > 200 sẽ thế nào?
Nếu X<=200 sai thì X sẽ thế nào so với 200?
Như vậy một số X chỉ có thể thuộc vào một trong 2
khả năng nhỏ hơn hoặc bằng 200 hay là lớn hơn 200.
CHUYÊN
ĐỀ
3
Diễn đạt mệnh đề như sau:

Nếu X <= 200 thì số tiền phải trả là x*300 đồng
Nếu không thì số tiền phải trả là x*280 đồng
Nếu … Thì … Nếu không thì ….
CHUYÊN
ĐỀ
3
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
CHUYÊN
ĐỀ
3
b. Dạng đủ
IF <Điều kiện> THEN ELSE ;
Nếu X <= 200 thì số tiền phải trả là x*300 đồng
Nếu không thì số tiền phải trả là x*280 đồng
IF X <= 200 Then
Writeln (`So tien phai tra la `, X* 300, `dong `)
else
Writeln (`So tien phai tra la `, X* 280, `dong`);
CHUYÊN
ĐỀ
3

Program Sapxep2so ;
Uses Crt ;
Var a, b, tg : Integer ;
Begin
ClrScr ;
Write (`Nhap 2 so nguyen `); Readln (a, b);
If a > b Then
Begin
tg := a ;
a := b ;
b := tg ;
End ;
Writeln(a:7, b:7);
Readln
End.
CHUYÊN
ĐỀ
3
Khi giải phương trình bậc 2, nếu delta dương chúng ta biết
phương trình có 2 nghiệm phân biệt. Chúng ta phải thực hiện 3
lệnh:
- Tính nghiệm X1
- Tính nghiệm X2
- Viết 2 nghiệm lên màn hình.
Như vậy trong thực tiễn, có những tình huống tương ứng với một
khả năng của điều kiện chúng ta phải viết nhiều hơn một lệnh.

Trong Pascal sau từ khóa Then, Else chỉ được viết một lệnh.
Pascal chấp nhận cho gộp các lệnh đó vào với nhau để tạo thành
một lệnh ghép.
3. Câu lệnh ghép:
- Cú pháp:
Begin
;
End;
- Tác dụng:
Gộp nhiều câu lệnh thành một câu lệnh ghép
CỦNG CỐ TIẾT HỌC
HS cần nắm vững các nội dung sau đây:
+ Ý nghĩa của cấu trúc rẽ nhánh: Cú pháp câu lệnh if – then dạng thiếu và dạng đủ trong Pascal
+ Tác dụng của câu lệnh ghép

+ Viết được chương trình đơn giản trong Pascal, trong đó có sử dụng câu lệnh if – then dạng thiếu và dạng đủ
CHUYÊN
ĐỀ
3
Nếu m chia hết cho 2 thì m là số chẵn
Nếu m không chia hết cho 2 thì m là số lẻ
Viết câu lệnh rẽ nhánh dạng thiếu.
If m mod 2 = 0 then Write(m,` la so chan`);
If m mod 2 <> 0 then Write(m,` la so le`);
Bài tập củng cố :
CHUYÊN
ĐỀ
3
Nếu m chia hết cho 2 thì m là số chẵn
nếu không thì m là số lẻ.
Viết câu lệnh rẽ nhánh dạng đủ
If m mod 2 = 0 then Write(m,` la so chan`)
Else
Write(m,` la so le`);
Bài tập củng cố :
CHUYÊN
ĐỀ
3
Viết chương trình kiểm tra và in ra màn hình số lớn nhất trong 2 số nguyên a và b.
Viết chương trình tính tiền photocopy ở trường hợp :
Loại giấy A4 , 1 mặt
Loại giấy A3 , 2 mặt
Loại giấy A3 , 1 mặt
CHUYÊN
ĐỀ
3
1. Xem lại nội dung bài cấu trúc rẽ nhánh
2. Xem trước nội dung bài lặp
DẶN DÒ
CHUYÊN
ĐỀ
3
GV:Hoa Oải Hương
nguon VI OLET