Với tóm tắt lý thuyết Tin học lớp 10 Bài 19: Câu lệnh điều kiện if sách Kết nối tri thức hay, chi tiết giúp học sinh nắm vững kiến thức trọng tâm, ôn luyện để học tốt môn Tin học 10.
Tin học lớp 10 Bài 19: Câu lệnh điều kiện if
A. Lý thuyết Tin học 10 Bài 19: Câu lệnh điều kiện if
1. Biểu thức lôgic
- Biểu thức lôgic là biểu thức chỉ nhận giá trị True hoặc False. Giá trị biểu thức lôgic thuộc kiểu bool.
- Các phép so sánh các giá trị số trong Python:
< |
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 |
Chú ý: Với xâu kí tự cũng có đầy đủ các phép so sánh.
- Các phép toán trên kiểu dữ liệu lôgic gồm phép and (và), or (hoặc) và not (phủ định).
Bảng 1: Các phép toán lôgic
2. Lệnh if
- Để xử lí các tình huống rẽ nhánh, Python cũng có các câu lệnh để mô tả cấu trúc rẽ nhánh:
+ Câu điều kiện 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.
+ Câu điều kiện dạng đầy đủ:
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>.
- Ví dụ: Nếu hai số đã cho đã được tạo thì lệnh sau sẽ in ra giá trị tuyệt đối của hiệu hai số:
- Chú ý: Các khối lệnh trong Python đều cần viết sau dấu “:” và lùi vào, thẳng hàng.
Thực hành: Các bài tập liên quan đến kiểu dữ liệu bool và 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 chẵn hay n lẻ.
Hướng dẫn
- 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 là số lẻ.
- Chương trình:
Nhiệm vụ 2: Giả sử giá điện sinh hoạt trong khu vực gia đình em ở được tính lũy kế theo từng tháng như sau (giá tính theo kWh điện tiêu thụ).
- Với mức điện tiêu thu từ 0 đến 50 kWh, giá thành mỗi kWh là 1,678 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ả.
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ích lũy kế trên chúng ta cần tính dựa trên điều kiện sau:
- Nếu k ≤ 50 thì số tiền cần trả là k × 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 × 1,678 + 50 × 1,734 + (k - 100) ×2,014 nghìn đồng
- Sử dụng lệnh round(t) để làm tròn số thực t. Chú ý trong máy tính dùng dấu “.” để viết các số thập phân
- Chương trình:
B. Bài tập trắc nghiệm Tin học 10 Bài 19: Câu lệnh điều kiện if
Câu 1. Phát biểu nào sau đây bị sai?
A. Sau <điều kiện> cần có dấu “:”
B. Khối lệnh tiếp theo không bắt buộc lùi vào 1 tab và thẳng hàng
C. 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.
D. Có phát biểu chưa đúng trong ba phát biểu trên.
Đáp án đúng là: B
Khối lệnh tiếp theo bắt buộc lùi vào 1 tab và thẳng hàng. Nếu không chương trình sẽ thông báo lỗi.
Câu 2. Tìm giá trị m và n thoả mãn (m+4) % 5 == 0 và n*2//3=5
A. m = 1, n = 8
B. m = 2, n = 9
C. m = 3, n = 10,
D. m = 0, n = 7
Đáp án đúng là: A
m = 1: (1+4) % 5 == 0
n = 8: n*2//3 = 8 * 2 //3 =16 // 3 = 5
Câu 3. Biểu thức lôgic đúng thể hiện số a nằm ngoài [3,8] là:
A. a < 3 and a >= 8
B. 3 <= a <=8
C. a < 3 and a > 8
D. a <= 3 and a >= 8
Đáp án đúng là: C
a nằm ngoài [3,8] nên a < 3 and a > 8
Câu 4. Biểu thức lôgic nào sau đây thể hiện số a thuộc nửa khoảng (5, 7]
A. 5 < a <= 7
B. 5<= a <=7
C. 5 < a < 7
D. 5 <= a < 7
Đáp án đúng là: A
a thuộc nửa khoảng (5, 7] nên 5 < a <= 7
Câu 5: Kết quả của chương trình sau là gì?
x = 5
y = 6
if x > y:
print('Max:',x)
else:
print(‘Max: ’, y)
A. Max:5
B. Max:6
C. Max: 5
D. Max: 6
Đáp án đúng là: D
Do 5 <= 6 nên kết quả là : Max : 6
Câu 6. Phát biểu nào sau đây là sai khi nói về biểu thức lôgic?
A. Biểu thức lôgic là biểu thức chỉ nhận giá trị True hoặc False.
B. Giá trị của biểu thức lôgic thuộc kiểu bool
C. Ngoài hai giá trị True, False biểu thức lôgic nhận giá trị undefined
D. Biểu thức “2 * 3 // 5 == 1” mang giá trị True
Đáp án đúng là: C
Biểu thức lôgic chỉ nhận giá trị True hoặc False, không nhận giá trị undefined
Câu 7. Biểu diễn nào sau đây là sai trong Python?
A. b*b>a*c, a*(1-a)+(a-b)>=0; 1/x-x<0.
B. (a-b)>c-d, 1//x-y>=2*x,b*b>a*c.
C. (a-b)>c-d, (a-b)<>b-a,12*a>5a.
D. (a-b)**0.5>x,1/x-y>=2*x,15*a>5.
Đáp án đúng là: C
Trong biểu thức lôgic không có biểu diễn <> và thiếu dấu sao ở 5a
Câu 8. Kết quả của đoạn chương trình sau:
x=2021
print((x%4==0 and x%100!=0) or x%400==0)
A. 55.
B. True.
C. 5.
D. False.
Đáp án đúng là: D
Câu 9. Cho x = True, y = False. Cho biết giá trị của biểu thức sau:
not((x or y ) and x )
A. True
B. False
C. x
D. 1
Đáp án đúng là: B
not((x or y ) and x ) = not((True or False) and True)
= not(True and True) = not(True) = False
Câu 10. Giá trị của ai biểu thức sau là True hay False?
50%3==1
34//5==6
A. True, True
B. False, False.
C. True, False
D. False, True
Đáp án đúng là: D
50%3=2!=1
34//5=6==6
Câu 11. Kết quả của chương trình sau là gì ?
x = 8
y = 9
if x > y:
print('x lớn hơn y')
elif x==y:
print('x bằng y')
else:
print('x nhỏ hơn y')
A. x lớn hơn y
B. x bằng y
C. x nhỏ hơn y
D. Chương trình bị lỗi
Đáp án đúng là: C
Do 8 < 9 nên kết quả là x nhỏ hơn y
Câu 12. Kết quả của chương trình sau là gì ?
num = 3
if num > 0:
print(num)
print("Thông điệp này luôn được in.")
num = -1
if num > 0:
print(num)
print("Thông điệp này cũng luôn được in.")
A. 3
Thông điệp này luôn được in.
Thông điệp này luôn được in.
B. 3
Thông điệp này luôn được in.
-1
Thông điệp này luôn được in.
C. 3
-1
Thông điệp này luôn được in.
D. Thông điệp này luôn được in.
-1
Thông điệp này luôn được in.
Đáp án đúng là: A
3 > 0 và -1 < 0
Câu 13. Năm nhuận là năm chia hết cho 400 hoặc n chia hết cho 4 đồng thời không chia hết cho 100. Biểu thức biểu diễn kiểm tra năm nhuận là:
A. n % 4 == 100 or ( n % 4 == 0 and n % 100 == 0)
B. n % 4 == 100 or n % 4 == 0 and n % 100 != 0
C. n % 4 != 100 or ( n % 4 == 0 and n % 100 != 0)
D. n % 4 == 100 or ( n % 4 == 0 and n % 100 != 0)
Đáp án đúng là: A
Do toán tử or và and thực hiện từ trái sang phải nên cần có dấu ngoặc thể hiện mức độ ưu tiên hơn.
Câu 14. Kết quả của lệnh print(round(4.5679,2)) là:
A. 4.5
B. 4.6
C. 4.56
D. 4.57
Đáp án đúng là: D
Lệnh round(t, m) làm tròn số thực t lấy m chữ số phần thập phân
Câu 15. Kết quả của biểu thức round(-1.232154, 4) là:
A. -1.2321
B. -1.2322
C. -1.23
D. -1,232
Đáp án đúng là: B
Lệnh round(t, m) làm tròn số thực t lấy m chữ số phần thập phân
Xem thêm các bài tóm tắt lý thuyết Tin học lớp 10 Kết nối tri thức hay, chi tiết khác:
Lý thuyết Tin học 10 Bài 18: Các lệnh vào ra đơn giản
Lý thuyết Tin học 10 Bài 19: Câu lệnh điều kiện if
Lý thuyết Tin học 10 Bài 20: Câu lệnh lặp for