Bài tập Biến và lệnh gán có đáp án
14 câu hỏi
Trong đại số, người ta dùng chữ để thay thế cho số cụ thể, ví dụ hằng đẳng thức đú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ì?
Lợi ích: 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. 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.
Tìm hiểu khái niệm biến và lệnh gán
Quan sát các lệnh sau, n ở đây được hiểu là gì?

Sau khi gán n = 5, n sẽ được hiểu là đối tượng số nguyên có giá trị n = 5
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
Vì hai đáp án này chỉ gồm chữ cái tiếng Anh, các chữ số từ 0 đến 9 và kí tự gạch, không bắt đầu bằng chữ số và có phân biệt chữ hoa và chữ số.
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 = 10 // 2 + 99 % 2 = 5 + 1 = 6
a, b nhận giá trị gì sau các lệnh sau?

a = 2, b = 3;
a = 2 + 3 = 5, b = 2 – 3 = -1
Các phép toán trên dữ liệu kiểu số và kiểu xâu kí tự
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ự.
- 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)
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 = (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.

010
1000000
Phân biệt biến và từ khoá
Quan sát các lệnh sau, tìm hiểu vì sao Python báo 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ác tên biến sau có hợp lệ không?
a) _if
b) global
c) nolocal
d) return
e) true
Tra bảng có _if và nolocal không trùng từ khoá
Lệnh sau có lỗi gì?

Lệnh bị lỗi ở 123a, cần thêm phép toán ở đây
Lệnh sau sẽ in ra kết quả gì?

In ra: đồ rê mi đồ rê mi đồ rê mi pha son la si đô pha son la si đô
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.
Có nhiều cách thực hiện bài toán, có thể tham khảo cách làm sau:
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, " phut ",giay, " giay ")
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?

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.


