Giải bài tập Tin học lớp 10 Bài 17: Biến và lệnh gán
Khởi động trang 91 Tin học lớp 10: Trong đại số, người ta dùng chữ để thay thế cho số cụ thể, ví dụ hằng đẳng thức (a + b)2= a2+ 2ab + b2 đúng cho mọi giá trị a, b. Trong các ngôn ngữ lập trình, người ta cũng dùng các kí tự hoặc nhóm các kí tự (được gọi là biến (variable) hay biến nhớ) để thay cho việc phải chỉ ra các giá trị dữ liệu cụ thể.
Theo em, sử dụng biến có những lợi ích gì?
Phương pháp giải:
Biến là tên của một vùng nhớ dùng để lưu trữ giá trị và giá trị đó có thể thay đổi khi thực hiện chương trình
Trả lời:
Lợi ích: Biến giúp cho việc viết chương trình được dễ dàng, đặc biệt trong trường hợp giá trị lớn, phải gọi tới giá trị đó nhiều lần và có thể thay đổi giá trị của biến.
1. Biến và lệnh gán
Hoạt động 1 trang 91 Tin học 10: Quan sát các lệnh sau, n ở đây được hiểu là gì?
Phương pháp giải:
Quan sát các lệnh
Trả lời:
Sau khi gán n = 5, n sẽ được hiểu là đối tượng số nguyên có giá trị n = 5
Câu hỏi 1 trang 93 Tin học 10: Các tên biến nào dưới đây là hợp lệ trong Python?
A. _name
B. 12abc
C. My country
D. m123&b
E. xyzABC
Phương pháp giải:
Quy tắc đặt tên biến: chỉ gồm chữ cái tiếng Anh, các chữ số từ 0 đến 9 và kí tự gạch dưới, không bắt đầu bằng chữ số và có phân biệt chữ hoa và chữ thường.
Trả lời:
Các tên biến hợp lệ trong Python:
A. _name E. xyzABC
Câu hỏi 2 trang 93 Tin học 10: Sau các lệnh dưới đây, các biến x, y nhận giá trị bao nhiêu?
Phương pháp giải:
Cú pháp lệnh gán: <biến>=<biểu thức>
Trả lời:
x = 10
y = 102 -1 = 99
x = 10 / 2 + 99 = 104
Câu hỏi 3 trang 93 Tin học 10: a, b nhận giá trị gì sau các lệnh sau?
Phương pháp giải:
Cú pháp lệnh gán: <biến>=<biểu thức>
Trả lời:
a = 2, b = 3;
a = 2 + 3 = 5, b = 2 – 3 = -1
2. Các phép toán trên một số kiểu dữ liệu cơ bản
Hoạt động 2 trang 93 Tin học 10: Tìm hiểu các phép toán trên dữ liệu kiểu số và kiểu xâu kí tự.
Phương pháp giải:
Dựa vào lý thuyết phần 2. Các phép toán trên một số kiểu dữ liệu cơ bản
Trả lời:
– Các phép toán trên kiểu dữ liệu số: phép cộng “+”, phép trừ “-”, nhân “*”, chia “ /”, lấy thương nguyên “ //”, lấy số dư “ %”, phép lũy thừa “ **”
– Các phép toán trên kiểu dữ liệu xâu kí tự: + (nối xâu), * (lặp)
Câu hỏi 1 trang 94 Tin học 10: Mỗi lệnh sau là đúng hay sai? Nếu đúng thì cho kết quả là bao nhiêu?
Phương pháp giải:
Các phép toán trên dữ liệu kiểu số: +, -, *, /, //, %, **
Trả lời:
(12 – 10 // 2) ** 2 – 1 = (12 – 5) **2 – 1 = 49 -1 = 48
(13 + 45 ** 2)(30 // 12 – 5 / 2): Bị lỗi do thiếu phép toán giữa hai ngoặc tròn.
Câu hỏi 2 trang 94 Tin học 10: Mỗi lệnh sau cho kết quả là xâu kí tự như thế nào?
Phương pháp giải:
Các phép toán trên dữ liệu kiểu xâu: + (nối xâu) và * (lặp)
Trả lời:
010
1000000
3. Từ khóa
Hoạt động 3 trang 95 Tin học 10: Quan sát các lệnh sau, tìm hiểu vì sao Python báo lỗi.
Phương pháp giải:
Quan sát các lệnh
Không được phép đặt tên biến hay các định danh trùng với từ khóa
Trả lời:
Tên biến và tên định danh không được trùng với từ khoá trong Python, do đó Python báo lỗi.
Tức là tên biến trùng các từ khóa if và with nên bị báo lỗi.
Câu hỏi trang 95 Tin học 10: Các tên biến sau có hợp lệ không?
a) _if
b) global
c) nolocal
d) return
e) true
Phương pháp giải:
Không được phép đặt tên biến hay các định danh trùng với từ khóa
Trả lời:
Các tên biến hợp lệ:
a) _if
c) nolocal
Luyện tập (trang 96)
Luyện tập 1 trang 96 Tin học 10: Lệnh sau có lỗi gì?
Phương pháp giải:
Lỗi cú pháp.
Trả lời:
Lệnh bị lỗi ở 123a, cần thêm phép toán ở đây
Luyện tập 2 trang 96 Tin học 10: Lệnh sau sẽ in ra kết quả gì?
Phương pháp giải:
Các phép toán trên dữ liệu kiểu xâu: + (nối xâu) và * (lặp)
Trả lời:
In ra: đồ rê mi đồ rê mi đồ rê mi pha son la si đô pha son la si đô
Vận dụng (trang 96)
Vận dụng 1 trang 96 Tin học 10: Viết các lệnh để thực hiện việc đổi số giây ss cho trước sang số ngày, giờ, phút, giây, in kết quả ra màn hình.
Ví dụ, nếu ss = 684500 giây = 7 ngày 22 giờ 8 phút 20 giây.
Gợi ý: Sử dụng các phép toán lấy thương nguyên, lấy số dư và các cách đổi sau:
1 ngày = 86400 giây; 1 giờ = 3600 giây; 1 phút = 60 giây.
Phương pháp giải:
Vận dụng kiến thức đã học để viết các lệnh
Sử dụng các phép toán lấy thương nguyên, lấy số dư và các cách đổi sau:
1 ngày = 86400 giây; 1 giờ = 3600 giây; 1 phút = 60 giây.
Trả lời:
ss=684500
ngay=ss//86400
gio=ss//3600-ngay*24
phut=ss//60-ngay*24*60-gio*60
giay=ss-ngay*24*3600-gio*3600-phut*60
print(“ss = “, ss, ” = “, ngay,” ngay “, gio, “gio”, phut, ” phut “, giay, ” giay “)
Vận dụng 2 trang 96 Tin học 10: Hãy cho biết trước và sau khi thực hiện các lệnh sau, giá trị của biến x, y là bao nhiêu? Em có nhận xét gì về kết quả nhận được?
Phương pháp giải:
Dựa vào kiến thức đã học
Trả lời:
Sau câu lệnh đầu tiên: x = 10, y = 7
Sau câu lệnh thứ 2: x= 7, y = 10
Nhận xét: x và y thay đổi giá trị cho nhau
→ các biến có thể thay đổi giá trị được.
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 16: Ngôn ngữ lập trình bậc cao và Python
Bài 18: Các lệnh vào ra đơn giản
Bài 19: Câu lệnh rẽ nhánh If
Bài 20: Câu lệnh lặp For