IMG-LOGO
Trang chủ Lớp 10 Tin học Giải SBT Tin 10 KNTT Bài 17. Biến và lệnh gán có đáp án

Giải SBT Tin 10 KNTT Bài 17. Biến và lệnh gán có đáp án

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

Xem đáp án

Đá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:

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: (ảnh 1)
Xem đáp án

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 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

Xem đáp án

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

Xem đáp án

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

Xem đáp án

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

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: (ảnh 1)

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.

Xem đáp á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")

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 (ảnh 1)

- 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")

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 (ảnh 2)

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:

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 (ảnh 1)

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?

Xem đáp án

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:

Hãy xác định các lỗi có thể có trong đoạn chương trình sau:  (ảnh 1)
Xem đáp án

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:

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: (ảnh 1)

Theo em, bạn nào làm đúng, bạn nào làm sai? Vì sao?

Xem đáp án

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.

Xem đáp án

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")

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 (ảnh 1)

Bắt đầu thi ngay