Giải SBT Tin 10 KNTT Bài 17. Biến và lệnh gán có đáp án
-
125 lượt thi
-
12 câu hỏi
-
30 phút
Danh sách câu hỏi
Câu 1:
Các tên biến nào dưới đây là hợp lệ trong Python?
A. L234 B. L234T C. 1xY D. XY1
E. xy-a F. Ha Noi G. Ha 1x2Noi
Đáp án đúng là: A, B, D, F, G
Trường hợp C không hợp lệ vì tên biến không được bắt đầu bằng chữ số.
Trường hợp E không hợp lệ vì tên biến chứa kí tự đặc biệt "-" (dấu trừ).
Chú ý: Quy tắc đặt tên biến:
- Chỉ gồm các 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ố.
- Phân biệt chữ in hoa và chữ thường.
Câu 2:
Em hãy cho biết kiểu dữ liệu và giá trị của biến c trong các câu lệnh sau:
a) c = 1.5 (kiểu số thực).
b) c = 1 (kiểu số nguyên).
c) c = 10 (kiểu số thực).
d) c = 2 (kiểu số thực).
Câu 3:
Sau các lệnh dưới đây, các biến a, b nhận giá trị bao nhiêu?
>>> a, b = 2, 3
>>> a, b = a + b, a - b
a = 2 + 3 = 5, b = 2 – 3 = -1
Câu 4:
Sau các lệnh dưới đây các biến a, b có giá trị như thế nào?
>>> a, b = 2, "OK"
>>> a, b = 3*a, a*b
Giá trị của a, b tương ứng là 6 và OKOK.
- Các phép toán trên dữ liệu kiểu số: +, - , * , / , // , % , **
- Các phép toán trên dữ liệu kiểu xâu: + (nối xâu) và * (lặp).
Câu 5:
Sau các lệnh dưới đây các biến a, b có giá trị như thế nào?
>>> a, b = 2, "OK"
>>> a = 2*a
>>> b = a*b
Giá trị của a, b tương ứng là 4 và OKOKOKOK.
- Các phép toán trên dữ liệu kiểu số: +, - , * , / , // , % , **
- Các phép toán trên dữ liệu kiểu xâu: + (nối xâu) và * (lặp).
Câu 6:
Em hãy viết các lệnh gán cho x, y giá trị tương ứng là 2 và 3.1 sau đó tính giá trị của biểu thức:
[(x2 + y2 – xy)(x2 + y2 – 2y)]0.5
Nếu thực hiện trong cửa sổ lệnh của Python thì các câu lệnh có thể viết như sau:
>>> x, y = 2, 3.1
>>> z = x*x + y*y
>>> c = ((z - x*y)*(z - 2*y))**0.5
Câu 7:
sotien = dongia*soluong
Câu 8:
Giả sử trong Câu 17.7 đơn giá 1 thiệp mừng năm mới là 8500 đồng, soluong thiệp bạn Lan mua là 15 thiệp. Hãy viết các câu lệnh tương ứng trong Python để tính và in ra màn hình số tiền bạn Lan cần thanh toán.
- Các câu lệnh đó có thể là:
dongia = 8500
soluong = 15
sotien = dongia* soluong
print("Số tiền cần thanh toán: ", sotien, "đồng")
- Nếu không sử dụng biến sotien để biểu diễn số tiền cần thanh toán thì các câu lệnh giải bài toán trên có thể viết như sau:
dongia = 8500
soluong = 15
print("Số tiền cần thanh toán: ", dongia*soluong, "đồng")
Câu 9:
Hai bạn Bắc và Nam được yêu cầu viết công thức tính diện tích hình thang trong Python theo mấy câu thơ sau: "Muốn tìm diện tích hình thang/Đáy trên, đáy dưới ta mang cộng vào/Rồi đem nhân với chiều cao/Chia đôi lấy nửa thế nào cũng ra". Kết quả như sau:
Cô giáo khen cả hai bạn làm đúng. Tuy nhiên, cô khuyến cáo nên viết như bạn Nam. Vì sao?
Trong lập trình nói chung, người ta thường khuyến cáo đặt tên biến sát với ý nghĩa, tác dụng của nó để giúp việc đọc hiểu chương trình dễ dàng hơn (nếu dùng được tiếng Anh thì càng tốt, ví dụ đáy trên/đáy dưới có thể thay bằng top_base/bottom_base).
Câu 10:
Hãy xác định các lỗi có thể có trong đoạn chương trình sau:
Câu lệnh 2 sai vì giá trị biến bở về bên phải chưa xác định;
Câu lệnh thứ 5 sai vì vế bên phải biến c là dữ liệu kiểu xâu kí tự nên không thể tham gia trong phép toán số học với biến b là dữ liệu kiểu số thực.
Câu 11:
Trong bài tập lập trình yêu cầu đổi giá trị của hai biến x, y được cho trước hai bạn Bình và An đã làm như sau:
Theo em, bạn nào làm đúng, bạn nào làm sai? Vì sao?
Bình sai, An đúng.
- Sau câu lệnh thứ nhất, giá trị của biến x trong chương trình của Bình bằng giá trị của biến y và do vậy chương trình của Bình cho kết quả cả hai biến x, y cùng có giá trị bằng giá trị biến y được cho từ trước.
- Trong chương trình của An, sau câu lệnh thứ nhất giá trị của x được lưu lại bằng biến z, sau khi thực hiện câu lệnh thứ hai giá trị của biến y được gán cho biến x; câu lệnh thứ ba trong chương trình của An gán giá trị của biến z: (chính là giá trị của x đã được xác định từ trước).
Lưu ý, trong Python có thể sử dụng câu lệnh gán sau để đổi giá trị của hai biến x, y cho trước: x, y = y, x.
Câu 12:
Viết chương trình thực hiện việc đổi số giây ss cho trước (ví dụ ss = 684 500) sang số ngày, giờ, phút, giây, in kết quả ra màn hình.
Dễ dàng thấy rằng 1 ngày = 86 400 giây; 1 giờ = 3 600 giây, 1 phút = 60 giây.
Do vậy, chương trình có thể viết như sau:
ss = 684500
songay = ss//86400
sogiay = ss%86400
sogio = sogiay//3600
sogiay = sogiay%3600
sophut = sogiay//60
sogiay = sogiay%60
print(ss, "giây =", songay, "ngày", sogio, "giờ" , sophut, "phút", sogiay, "giây")