Tiết 19: câu lệnh If.. then

Chia sẻ bởi Phạm Văn Thắng | Ngày 01/05/2019 | 153

Chia sẻ tài liệu: Tiết 19: câu lệnh If.. then thuộc Power Point

Nội dung tài liệu:

I. Bài mới:
Lý thuyết: Câu lệnh If .. Then
Ngôn ngữ lập trình Pascal dùng câu lệnh rẽ nhánh If ..Then để mô tả việc rẽ nhánh tương ứng với 2 loại mệnh đề rẽ nhánh như sau.
a- Cú pháp 1: ( Hay còn gọi là dạng thiếu)
If < Điều kiện> Then ;
+ Trong đó:
* Điều kiện: Là biểu thức quan hệ hoặc logic
* Câu lệnh: Là 1 câu lệnh của Pascal
? ý nghĩa của câu lệnh:
Chương trình kiểm tra giá trị của điều kiện. Nếu là True (đúng) thì câu lệnh được thực hiện, nếu điều kiện sai thì không thực hiện gì.
Ví dụ: If ( X mod 2 =0) Then
Write(x`, la so chan`);
b- Cú pháp 2: ( Hay còn gọi là dạng đủ)
If <điều kiện> Then
< Câu lệnh1>
ELSE
< Câu lệnh2>;
* ý nghĩa của câu lệnh:
Chương trình kiểm tra giá trị của điều kiện. Nếu là True (đúng) thì lệnh1 được thực hiện, ngược lại nếu là False (sai) thì lệnh 2 được thực hiện.
+ Trong đó:
* Điều kiện: Là biểu thức quan hệ hoặc logic
* Câu lệnh 1, câu lệnh 2: Là 1 câu lệnh của Pascal
* Chú ý: Trước câu lệnh ELSE không có dấu ;
Ví dụ: If Delta < 0 Then
Write(`PT vo nghiem`) Else
Write(`PT Co nghiem`);
Ví dụ 1: Tìm giá trị lớn nhất Max của hai số nguyên a và b.
Thuật toán:
Cách 1: áp dụng cú pháp 1 dạng thiếu
- G/sử Ta gán Max:=a;
- If b>a Then max:=b;

Program Max_1;
Var a,b,Max: Integer;
Begin
Writeln(`nhap vao a va b=`);Readln(a,b);
Max:=a;
If b>a Then Max:=b;
Write(` Gia tri lon nhat Max la:`, Max:4:1);
Readln;
End.
Cách 2: áp dụng cú pháp 2 dạng đủ
If a>b Then Max:=a Else Max:=b;

Program Max_2;
Var a,b,Max: Integer;
Begin
Writeln(`nhap vao a va b=`);Readln(a,b);
If a>b Then Max:=a
Else
Max:=b;
Write(` Gia tri lon nhat Max la:`, Max:4:1);
Readln;
End.
Ví dụ 2:
Lập trình nhập vào từ bàn phím 3 số nguyên a,b,c, in ra số lớn nhất.

Thuật toán:
- Max:=a;
- If max - If max
Var a,b,c,max: integer;
Begin
Writeln(` Nhap vao 3 so nguyen a,b,c`);
Readln(a,b,c);
Max:=a;
If Max If MaxWriteln(`so lon nhat trong 3 so la:`, max:4:1);
Readln;
end.
Ví dụ 3:
Viết chương trình giải phương trình bậc hai
ax2 + bx + c = 0 với a ? 0

Thuật toán:
- Tính Delta=b2-4ac
- If Delta<0 then pt vô nghiệm
Ngược lại If Delta=0 then pt có nghiệm kép x=-b/2a
Ngược lại PT có 2 nghiệm x1 và x2


Var a,b,c,delta,x1,x2:real;
Begin
Writeln(` nhap vao a,b,c`);readln(a,b,c);
Delta:=b*b - 4*a*c;
If delta<0 then write(` pt vo nghiem`) else
If delta=0 then write(`PT co nghiem kep x=`,-b/(2*a)) Else
Begin
Write(`PT co hai nghiem`);
X1:=(-b+sqrt(delta))/(2*a);
X2:=(-b-sqrt(delta))/(2*a);
Write(` nghiem x1=`,x1);
Write(` nghiem x2=`,x2); End; End.
Bài tập 1
Viết chương trình giải phương trình bậc nhất
ax +b=0
Var a,b,x: real;
Begin
Write(`nhap vao a,b`);readln(a,b);
If a=0 then
If b<> 0 then write(`PT vo nghiem`) else
Write(`PT co vo so nghiem`) Else write(`PT co nghiem x=`,-b/a);
End.

Bài tập 2:
Nhập số nguyên dương X, in ra kết quả cho biết số có chia hết cho 3 hay 7 không.

Thuật toán:
Để kiểm tra 1 số có chia hết cho 3 hay không ta dùng hàm Mod, nếy x mod 3 =0, nghĩa là x chia hết cho 3, ngược lại x không chia hết cho 3
* Hàm mod là hàm chia lấy phần dư của 2 số nguyên
Program _ bai1;
Var x: Integer;
Begin
Write(`Nhap so nguyen x=`);readln(x);
If (x mod 3) = 0 then
Write(x`,chia het cho 3`)
Else
Write(x`,khong chia het cho 3`);
If (x mod 7) = 0 then
Write(x`,chia het cho 7`)
Else
Write(x`,khong chia het cho 7`);
Readln;
End.
* 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ẻ: Phạm Văn Thắ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)