1 of 30

Link tải các bài giảng khác

2 of 30

2

​

​

​

​

​

​

​

​

​

​

Trong cuộc sống, chúng ta vẫn thường gặp các tình huống một việc được thực hiện hay không phụ thuộc vào một điều kiện. Ví dụ, em dự định sẽ đi chơi cùng bạn nếu ngày mai thời tiết đẹp, không mưa nhưng nếu trời mưa em sẽ ở nhà làm bài tập. Các tình huống như vậy trong lập trình gọi là rẽ nhánh. Em hãy điền thông tin ở tình huống trên vào vị trí <Điều kiện> và lệnh tương ứng trong sơ đồ cấu trúc rẽ nhánh ở Hình 19.1.

3 of 30

Điều kiện: ngày mai thời tiết đẹp.

Lệnh 1: đi chơi cùng bạn.

Lệnh 2: ở nhà làm bài tập.

4 of 30

Hoạt động 1 Khái niệm biểu thức lôgic

Biểu thức nào sau đây có thể đưa vào vị trí <điều kiện> trong lệnh:

Nếu <điều kiện> thì <lệnh> của các ngôn ngữ lập trình bậc cao?

A). m, n = 1, 2 B). a + b > 1

C). a * b < a + b D). 12 + 15 > 2 * 13

Biểu thức có thể đưa vào vị trí <điều kiện> trong lệnh là các biểu thức logic, đó là những biểu thức chỉ nhận giá trị True hoặc False. (đáp án B, C, D)

5 of 30

1. BIỂU THỨC LÔGIC

  • Trong Python, biểu thức lôgic là biểu thức chỉ nhận giá trị True (đúng) hoặc False (sai).
  • Biểu thức lôgic đơn giản nhất là các biểu thức so sánh số hoặc xâu kí tự.

6 of 30

- Quan sát các lệnh sau để nhận biết kiểu dữ liệu logic.

7 of 30

< 

Nhỏ hơn

> 

Lớn hơn

==

Bằng nhau

<=

Nhỏ hơn hoặc bằng

>=

Lớn hơn hoặc bằng

!=

Khác nhau

Các phép so sánh giá trị số trong Python

8 of 30

Các phép toán trên kiểu dữ liệu lôgic bao gồm phép and (và), or (hoặc) và not (phủ định). Bảng các phép toán lôgic như sau:

Phép toán and

X

Y

X and Y

True

True

True

True

False

False

False

True

False

False

False

False

Phép toán or

X

Y

X or Y

True

True

True

True

False

True

False

True

True

False

False

False

Phép toán not

X

not X

True

False

False

True

9 of 30

Ví dụ. Cho các lệnh sau và dự đoán giá trị của các biến lôgic a, b, c.

10 of 30

Giải thích: Ta có x = 10, z = 9 do x < 11 là đúng, z > 5 là đúng. Theo bảng phép toán and ta có b = x < 11 and z > 5 nhận giá trị đúng.

Ta lại có: x > 15 sai (vì x = 10) nhưng y < 9 đúng (vì y = 5). Theo bảng phép toán or suy ra c = x > 15 or y < 9 nhận giá trị đúng.

Cuối cùng, vì b là đúng nên a = not b sẽ nhận giá trị sai.

11 of 30

  • Biểu thức lôgic là biểu thức chỉ nhận giá trị True hoặc False. Giá trị các biểu thức lôgic thuộc kiểu bool.
  • Các phép toán trên kiểu dữ liệu lôgic là and (và), or (hoặc) và not (phủ định).

12 of 30

Câu hỏi (trang 102)

Mỗi biểu thức sau có giá trị True hay False?

a) 100%4 == 0 b) 111//5 != 20 or 20%3 != 0

13 of 30

a). True: 100 chia cho 4 dư 0

b). True:

111//5 !=20: True

20%3 !=0 : True

True or True = True

14 of 30

Hoạt động 2 Cấu trúc lệnh if trong Python

Cho trước số tự nhiên n (được gán hoặc nhập từ bàn phím). Đoạn chương trình như sau kiểm tra n > 0 thì thông báo “n là số lớn hơn 0”.

​

​

​

Em có nhận xét gì về cấu trúc lệnh if? Sau <điều kiện> lệnh if có kí tự gì? Lệnh print() được viết như thế nào?

15 of 30

- Câu lệnh điều kiện if thể hiện cấu trúc rẽ nhánh trong Python. Từ khoá if viết thẳng lề trái.

- Sau <điều kiện> lệnh if có kí tự “:”

- Lệnh print() được viết lùi vào 1 tab so với if.

16 of 30

2. LỆNH IF

16

Câu lệnh rẽ nhánh dạng thiếu:

Khi thực hiện lệnh, Python sẽ kiểm tra <điều kiện> nếu đúng thì thực hiện <khối lệnh>, ngược lại thì bỏ qua chuyển sang lệnh tiếp theo sau lệnh if.

17 of 30

Câu lệnh rẽ nhánh dạng đủ:

Khi thực hiện lệnh, Python sẽ kiểm tra <điều kiện> nếu đúng thì thực hiện <khối lệnh 1>, ngược lại thì thực hiện <khối lệnh 2>.

18 of 30

Ví dụ. nếu a,b là hai số đã được tạo thì lệnh sau sẽ in ra giá trị tuyệt đối của hiệu hai số.

19 of 30

Câu lệnh điều kiện if thể hiện cấu trúc rẽ nhánh trong Python. Khối lệnh rẽ nhánh của if được viết sau dấu “:”, cần viết lùi vào và thẳng hàng.

20 of 30

Câu hỏi (trang 103)

Đoạn chương trình sau thực hiện công việc gì?

- Nhập 1 số nguyên dương k từ bàn phím

- Nếu k <= 0 thì in ra màn hình “Bạn nhập sai rồi!”

21 of 30

Các bài tập liên quan đến kiểu dữ liệu bool và lệnh if.

Nhiệm vụ 1. Viết chương trình nhập số tự nhiên n từ bàn phím. Sau đó thông báo số em đã nhập là số chẵn hay số lẻ phụ thuộc vào n là chẵn hay lẻ.

22 of 30

Hướng dẫn. Để kiểm tra một số tự nhiên n là chẵn hay lẻ, ta dùng phép toán lấy số dư n%2. Nếu số dư bằng 0 thì n là số chẵn, ngược lại n là số lẻ. Chương trình có thể như sau:

23 of 30

Nhiệm vụ 2. Giả sử giá điện sinh hoạt trong khu vực gia đình em ở được tính luỹ kế theo từng tháng như sau (giá tính theo từng kWh điện tiêu thụ).

  • Với mức điện tiêu thụ từ 0 đến 50 kWh, giá thành mỗi kWh là 1,578 nghìn đồng.
  • Với mức từ 51 đến 100, giá thành mỗi kWh là 1,734 nghìn đồng.
  • Từ mức 101 trở lên, giá thành mỗi kWh là 2,014 nghìn đồng.

Viết chương trình nhập số điện tiêu thụ trong tháng của gia đình em và tính số tiền điện phải trả.

24 of 30

Hướng dẫn. Gọi k là số kWh điện tiêu thụ của gia đình em. Khi đó theo cách tính lũy kế trên chúng ta cần tính dựa trên các điều kiện sau:

  • Nếu k ≤ 50 thì số tiền cần trả là k x 1,678 nghìn đồng.
  • Nếu 50 < k ≤100 thì số tiền cần trả là 50 × 1,678 + (k - 50) × 1,734 nghìn đồng.
  • Nếu 100 < k thì số tiền cần trả là 50 × 1678 + 50 × 1,734 + ( k - 100) × 2014 nghìn đồng.

Chúng ta sử dụng lệnh round (t) để làm tròn số thực t.

25 of 30

Chương trình có thể như sau:

26 of 30

1. Viết biểu thức lôgic ứng với mỗi câu sau:

a) Số x nằm trong khoảng (1; 10).

b) Số y nằm ngoài đoạn [1; 2]

c) Số z nằm trong đoạn [0; 1] hoặc [5; 10].

2. Tìm một vài giá trị m, n thoả mãn các biểu thức sau:

a) 100%m == 0 and n%5 != 0

b) m%100 == 0 and m%400 != 0

c) n%3 == 0 or (n%3 !=0 and n%4 == 0)

27 of 30

1. a) 1 < x < 10

b) y < 1 or y > 2

c) 0 <= z <= 1 or 5 <= z <= 10

2. a) 100 chia cho m dư 0 và n chia cho 5 dư khác 0:

m = 1, 2, 5, 10, 20,… ; n = 1, 2, 3, 4,…

b) m chia cho 100 dư 0 và m chia cho 400 dư khác 0:

m = 100, 200, 300, 500,…

c) n chia cho 3 dư 0 hoặc (n chia cho 3 dư khác 0 và n chia 4 dư 0): n = 3, 4, 6, 8,…

28 of 30

1. Biểu thức lôgic

2. Lệnh if

Thực hành:

Nhiệm vụ 1

Nhiệm vụ 2

Luyện tập

29 of 30

1. Làm phần VẬN DỤNG (SGK trang 104)

2. Xem trước bài 20 (SGK trang 105)

Câu lệnh lặp for

30 of 30

Các em làm 10 câu hỏi trắc nghiệm Online để củng cố bài.

1. Đăng nhập vào trang thaycai.net

2. Nháy chuột vào Học Online

3. Nháy chuột vào 2. Ai nhanh hơn? Ôn bài vui nhộn tin học 10 – sách Kết nối tri thức

4. Nháy chuột vào 19. Trắc nghiệm: Bài 19-Câu lệnh điều kiện if