Giải Tin Học 10 trang 94
Lời giải chi tiết SGK Lớp 10 · Môn Tin Há»c · Trang 94–95
Nguon: Tin Hoc 10 - Ket Noi Tri Thuc Voi Cuoc Song (trang 94 – 95)
Lưu ý: Hình ảnh em gửi là trang 93 – 94. Thầy sẽ giải đầy đủ tất cả câu hỏi trong hai trang này nhé.
🔍 Kiến thức cần nhớ
1. Biến và lệnh gán
- Biến là tên của một vùng nhớ dùng để lưu trữ giá trị (dữ liệu); giá trị đó có thể thay đổi khi chạy chương trình.
- Cú pháp lệnh gán:
= - Quy tắc đặt tên biến:
- Chỉ gồm chữ cái tiếng Anh, chữ số 0–9 và dấu gạch dưới "_"
- Không bắt đầu bằng chữ số
- Phân biệt chữ hoa và chữ thường
2. Các phép toán cơ bản
- Trên dữ liệu kiểu số:
+,-,,/,//(thương nguyên),%(số dư),*(lũy thừa) - Trên dữ liệu kiểu xâu:
+(nối xâu) và*(lặp xâu) - Thứ tự ưu tiên:
*cao nhất →,/,//,%→ cuối cùng+,- - Các phép toán thực hiện từ trái sang phải, riêng
thực hiện từ phải sang trái** - Biểu thức có cả số thực và số nguyên → kết quả là số thực
- Phép
/luôn cho kết quả số thực
💡 Mẹo nhớ: "Lũy thừa trước, nhân chia giữa, cộng trừ sau" — giống thứ tự ưu tiên trong Toán học, chỉ thêm**,//,%.
⚙️ Bài tập
Câu 1 (trang 93)
Đề bài: 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
Cách 1 — Kiểm tra theo quy tắc đặt tên
Xét lần lượt từng tên theo 3 quy tắc đặt tên biến:
| Tên | Phân tích | Kết luận |
|---|---|---|
A. _name | Bắt đầu bằng _, chỉ gồm chữ và _ | ✅ Hợp lệ |
B. 12abc | Bắt đầu bằng chữ số | ❌ Không hợp lệ |
C. My country | Có dấu cách | ❌ Không hợp lệ |
D. m123&b | Chứa ký tự & | ❌ Không hợp lệ |
E. xyzABC | Chỉ gồm chữ cái | ✅ Hợp lệ |
Đáp án: A và E.
⚠️ Lưu ý thi: Lỗi hay gặp là tên có dấu cách (C) hoặc ký tự đặc biệt như&,@,-(D). Dấu gạch dưới_được phép, kể cả ở đầu tên.
Câu 2 (trang 93)
Đề bài: Sau các lệnh dưới đây, các biến x, y nhận giá trị bao nhiêu?
>>> x = 10
>>> y = x**2 - 1
>>> x = x/2 + y
Cách 1 — Thực hiện lần lượt từng lệnh
- Lệnh 1:
x = 10→ x = 10 - Lệnh 2:
y = x2 - 1= 10^2 − 1 = 100 − 1 = 99** - Lệnh 3:
x = x/2 + y= 10/2 + 99 = 5.0 + 99 = 104.0
Vì phép / luôn cho kết quả số thực, nên 10/2 = 5.0, dẫn tới x là số thực.
Đáp án: x = 104.0 (số thực), y = 99 (số nguyên).
⚠️ Lưu ý thi: Khi tính lệnh 3, giá trị x dùng trong vế phải vẫn là giá trị cũ (10), chứ không phải giá trị mới. Đừng nhầm dùng x mới.
Câu 3 (trang 93)
Đề bài: a, b nhận giá trị gì sau các lệnh sau?
>>> a,b = 2,3
>>> a,b = a+b, a-b
Cách 1 — Tính đồng thời vế phải
- Lệnh 1:
a,b = 2,3→ a = 2, b = 3 - Lệnh 2:
a,b = a+b, a-b
Python tính toàn bộ vế phải trước rồi mới gán:
- a + b = 2 + 3 = 5
- a − b = 2 − 3 = −1
- Sau đó gán: a = 5, b = −1
Đáp án: a = 5, b = −1.
💡 Mẹo nhớ: Với phép gán nhiều biếna, b = ..., ..., Python tính hết vế phải bằng giá trị cũ rồi mới gán đồng thời. Đây chính là cách hoán đổi giá trị hai biến:a, b = b, a.
Câu 1 (trang 94)
Đề bài: Mỗi lệnh sau là đúng hay sai? Nếu đúng thì cho kết quả là bao nhiêu?
>>> (12 - 10//2)**2 - 1
>>> (13 + 45**2)(30//12 - 5/2)
Cách 1 — Phân tích theo thứ tự ưu tiên
Lệnh 1: (12 - 10//2)**2 - 1
- Trong ngoặc:
10//2= 5 →12 - 5= 7 7**2= 4949 - 1= 48
→ Đúng, kết quả = 48.
Lệnh 2: (13 + 45**2)(30//12 - 5/2)
- Hai cụm ngoặc đặt cạnh nhau, không có phép toán nối giữa chúng.
- Python hiểu
(13 + 45**2)là một số nguyên (= 2038) đứng trước cặp ngoặc, tức cố gắng "gọi" số nguyên này như một hàm → báo lỗiTypeError: 'int' object is not callable.
→ Sai (lỗi cú pháp/kiểu dữ liệu, không cho ra kết quả).
⚠️ Lưu ý thi: Trong Python, viết(A)(B)không phải là phép nhân như trong Toán. Muốn nhân phải có dấu:(13 + 452)(30//12 - 5/2).
Câu 2 (trang 94)
Đề bài: Mỗi lệnh sau cho kết quả là xâu kí tự như thế nào?
>>> ""*20 + "010"
>>> "10"+"0"*5
Cách 1 — Áp dụng phép * (lặp) và + (nối) trên xâu
Lệnh 1: ""*20 + "010"
""*20: lặp xâu rỗng 20 lần → vẫn là xâu rỗng"""" + "010"→"010"
→ Kết quả: '010'
Lệnh 2: "10"+"0"*5
- Phép
ưu tiên hơn+, nên tính"0"5trước →"00000"(lặp xâu "0" năm lần) "10" + "00000"→"1000000"
→ Kết quả: '1000000'
💡 Mẹo nhớ: Với xâu kí tự,+là nối cònlà lặp. Thứ tự ưu tiên giữ nguyên:làm trước+.
⚠️ Lưu ý thi: Đừng nhầm"10"+"0"5thành("10"+"0")5. Phép*thực hiện trước nên chỉ lặp xâu"0", không lặp cả"10".
🎯 Ghi nhớ: - Tên biến hợp lệ: chỉ chữ cái, chữ số và_; không bắt đầu bằng số; không chứa dấu cách hay ký tự đặc biệt. - Phép gán nhiều biến tính toàn bộ vế phải trước bằng giá trị cũ rồi mới gán. - Phép/luôn cho số thực;//lấy thương nguyên,%lấy số dư. - Thứ tự ưu tiên:*→/ // %→+ -. - Với xâu:+nối,lặp;"abc"nvới n ≤ 0 cho xâu rỗng. - Trong Python(A)(B)không phải phép nhân — phải viết(A)*(B).
