Giải bài tập Tin học lớp 10 Bài 19: Câu lệnh rẽ nhánh If
Khởi động trang 101 Tin học lớp 10: 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.
Phương pháp giải:
Dựa vào ví dụ để điền thông tin
Trả lời:
Đ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
1. Biểu thức lôgic
Hoạt động 1 trang 101 Tin học 10: 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
Phương pháp giải:
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.
Trả lời:
Nếu <điều kiện> thì <lệnh> của các ngôn ngữ lập trình bậc cao:
B. a + b > 1
C. a* b < a + b
D. 12 + 15 > 2* 13
Các biểu thức B, C, D là biểu thức logic, chứa các phép so sánh: >, <
Câu hỏi trang 102 Tin học 10: 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
Phương pháp giải:
Dựa vào kiến thức đã học về các phép toán cơ bản với dữ liệu kiểu số trong Python
Trả lời:
a, True: 100 chia cho 4 dư 0
b, True: thương nguyên 111 cho 5 khác 20 hoặc 20 chia cho 3 dư 0
2. Lệnh if
Hoạt động 2 trang 102 Tin học 10: 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?
Phương pháp giải:
Quan sát đoạn chương trình
Trả lời:
– Câu lệnh điều kiện if thể hiện cấu trúc rẽ nhánh trong Python.
– 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.
Câu hỏi trang 103 Tin học 10: Đoạn chương trình sau thực hiện công việc gì?
Phương pháp giải:
Quan sát đoạn chương trình
Trả lời:
– Nhập 1 số nguyên k từ bàn phím
– Nếu k ≤ 0 thì in ra màn hình “Bạn nhập sai rồi!”
Luyện tập (trang 104)
Luyện tập 1 trang 104 Tin học 10: Viết biểu thức lôgic ứng với mỗi câu sau:
a) Số x nằm trong khoảng (0; 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].
Phương pháp giải:
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
Trả lời:
a) x > 0 and x < 10
b) y < 1 or y > 2
c) (z >=0 and z <= 1) or (z >=5 and z <= 10)
Luyện tập 2 trang 104 Tin học 10: Tìm một vài giá trị m, n thỏa 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)
Phương pháp giải:
Dựa vào kiến thức đã học
Trả lời:
a) 100 chia cho m dư 0 và n chia cho 5 dư khác 0: m = 2, 4, 5, 10…; n = 6; 7; 8; 9; 11; 12…
b) m chia cho 100 dư 0 và m chia cho 400 dư khác 0: m = 500; 600; 700; 1000;…
c) n chia cho 3 dư 0 hoặc (n chia cho 3 dư khác 0 và n chia 4 dư 0): n = 6; 8; 9; 12;…
Vận dụng (trang 104)
Vận dụng 1 trang 104 Tin học 10: Giá bán cam tại siêu thị tính như sau: nếu khối lượng cam mua dưới 5kg thì giá bán là 12 000 đồng/kg, nếu khối lượng mua lớn hơn hoặc bằng 5kg thì giá bán là 10 000 đồng/kg. Viết chương trình nhập số lượng mua (tính theo kg) sau đó tính số tiền phải trả.
Phương pháp giải:
Dựa vào kiến thức đã học để viết chương trình
Trả lời:
n=int(input(“Nhập số lượng mua”))
if(n<5):
t=n*12000
if(n>=5):
t=n*10000
print(“Số tiền phải trả là: “,t, ” đồng”)
Vận dụng 2 trang 104 Tin học 10: Năm n là năm nhuận nếu giá trị n thỏa mãn điều kiện: n chia kết cho 400 hoặc n chia hết cho 4 đồng thời không chia hết cho 100. Viết chương trình nhập số năm n và cho biết năm n có phải là năm nhuận không.
Phương pháp giải:
Dựa vào kiến thức đã học để viết chương trình
Trả lời:
n = int(input( “Nhập năm: “))
if n%400 == 0 or (n%4 == 0 and n%100 != 0):
print (“Năm”, n, “là năm nhuận”)
else:
print(“Năm”, n, “không phải là năm nhuận”)
Xem thêm các bài giải SGK Tin học lớp 10 Kết nối tri thức hay, chi tiết khác:
Bài 18: Các lệnh vào ra đơn giản
Bài 20: Câu lệnh lặp For
Bài 21: Câu lệnh lặp While
Bài 22: Kiểu dữ liệu danh sách