Giải SBT Tin 10 KNTT Bài 28. Phạm vi của biến có đáp án
64 người thi tuần này 4.6 678 lượt thi 12 câu hỏi
🔥 Đề thi HOT:
15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 26 có đáp án
15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 27 có đáp án
15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 28 có đáp án
Trắc nghiệm Tin học 10 Kết nối tri thức Bài 29 có đáp án
15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 24 có đáp án
15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 23 có đáp án
15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 22 có đáp án
15 câu Trắc nghiệm Tin học 10 Cánh diều Mạng máy tính với cuộc sống có đáp án
Nội dung liên quan:
Danh sách câu hỏi:
Câu 1
Đoạn chương trình sau có lỗi không? Nếu không kết quả lệnh print() sẽ in ra số nào?
def f(x,y):
n = x + y
m = x - y
return 2*n* (m+1)
n = 5
m = 3
f(2,1)
print(n, m)
Đoạn chương trình sau có lỗi không? Nếu không kết quả lệnh print() sẽ in ra số nào?
def f(x,y):
n = x + y
m = x - y
return 2*n* (m+1)
n = 5
m = 3
f(2,1)
print(n, m)
Lời giải
Chương trình không có lỗi.
Câu 2
Đoạn chương trình sau có lỗi không? Nếu không kết quả lệnh print() sẽ in ra số nào?
def f(a):
n = a + 1
n = (3*n+1) **2
return n
f(1)
print(n)
Đoạn chương trình sau có lỗi không? Nếu không kết quả lệnh print() sẽ in ra số nào?
def f(a):
n = a + 1
n = (3*n+1) **2
return n
f(1)
print(n)
Lời giải
Có lỗi. Chương trình có lỗi vì không nhận biết được biến n. Biến n có trong hàm f() chỉ có tác dụng bên trong hàm nhưng không có tác dụng bên ngoài hàm f().
Câu 3
Trong Python biến được khai báo và sử dụng bên trong một hàm được gọi là gì?
A. Biến địa phương.
B. Biến riêng.
C. Biến tổng thể.
D. Biến thông thường.
Trong Python biến được khai báo và sử dụng bên trong một hàm được gọi là gì?
A. Biến địa phương.
B. Biến riêng.
C. Biến tổng thể.
D. Biến thông thường.
Lời giải
Đáp án đúng là: A
Trong Python biến được khai báo và sử dụng bên trong một hàm được gọi là: Biến địa phương.
Câu 4
Có thể khai báo một biến bên trong hàm trùng tên với biến đã khai báo trước đó bên ngoài hàm không?
Có thể khai báo một biến bên trong hàm trùng tên với biến đã khai báo trước đó bên ngoài hàm không?
Lời giải
Có thể khai báo một biến bên trong hàm trùng tên với biến đã khai báo trước đó bên ngoài hàm. Vì trong Python tất cả các biến khai báo bên trong hàm đều có tính địa phương (cục bộ), không có hiệu lực ở bên ngoài hàm.
Câu 5
Khi khai báo hàm có tham số, các tham số này có thể coi là một biến địa phương của hàm hay không?
Khi khai báo hàm có tham số, các tham số này có thể coi là một biến địa phương của hàm hay không?
Lời giải
Khi khai báo hàm có tham số, các tham số này có thể coi là một biến địa phương của hàm.
Lời giải
Có lỗi. Các biến m, n được khai báo bên ngoài hàm f(). Bên trong hàm có lệnh thực hiện coi n như một biến do đó sẽ có lỗi. Biến được khai báo bên ngoài hàm sẽ không có tác dụng bên trong hàm như một biến.
Lời giải
Không. Các biến m, n được khai báo bên ngoài hàm f). Bên trong hàm vẫn nhìn thấy và có thể truy cập giá trị của các biến này để sử dụng vào mục đích của mình.
Câu 8
Đoạn chương trình sau sẽ in ra giá trị gì?
def f(s):
m = "train"
return m + s
m = "baby"
s = f(" go")
print(s)
Đoạn chương trình sau sẽ in ra giá trị gì?
def f(s):
m = "train"
return m + s
m = "baby"
s = f(" go")
print(s)
Lời giải
Chương trình sẽ in ra "train go".
Câu 9
Mệnh đề nào dưới đây phát biểu sai về phạm vi tác dụng của biến trong Python?
A. Biến được khai báo bên trong hàm chỉ có tác dụng trong hàm đó, không có tác dụng bên ngoài.
B. Biến được khai báo bên ngoài hàm sẽ không có tác dụng bên trong hàm như một biến.
C. Biến khai báo bên ngoài nếu muốn có tác dụng bên trong hàm thì cần khai báo lại trong hàm với từ khoá global.
D. Biến trong Python khi đã được khai báo sẽ có tác dụng trong tất cả các hàm và bên ngoài.
Mệnh đề nào dưới đây phát biểu sai về phạm vi tác dụng của biến trong Python?
A. Biến được khai báo bên trong hàm chỉ có tác dụng trong hàm đó, không có tác dụng bên ngoài.
B. Biến được khai báo bên ngoài hàm sẽ không có tác dụng bên trong hàm như một biến.
C. Biến khai báo bên ngoài nếu muốn có tác dụng bên trong hàm thì cần khai báo lại trong hàm với từ khoá global.
D. Biến trong Python khi đã được khai báo sẽ có tác dụng trong tất cả các hàm và bên ngoài.
Lời giải
Đáp án đúng là: D
D sai vì trong Python tất cả các biến khai báo bên trong hàm đều có tính địa phương (cục bộ), không có hiệu lực ở bên ngoài hàm.
Câu 10
Chương trình sau có lỗi không? Nếu có, làm thế nào để sửa hết lỗi?
def f():
n = n + 1
return n
n = 15
a = f()
print(a)
Chương trình sau có lỗi không? Nếu có, làm thế nào để sửa hết lỗi?
def f():
n = n + 1
return n
n = 15
a = f()
print(a)
Lời giải
Có lỗi. Có thể sửa cho hết lỗi theo nhiều cách. Ví dụ.
Cách 1. Đưa n vào hàm số khi khai báo hàm f().
def f(n):
n = n + 1
return n
n = 15
a = f(n)
print(a)
Cách 2. Khai báo biến n là global trong hàm f().
def f():
global n
n = n + 1
return n
n = 15
a = f()
print(a)
Câu 11
Viết hàm với đầu vào là list A, số thực x. Hàm cần trả về một list B thu được từ list A bằng cách chỉ lấy các phần tử có giá trị ≥ x.
Viết hàm với đầu vào là list A, số thực x. Hàm cần trả về một list B thu được từ list A bằng cách chỉ lấy các phần tử có giá trị ≥ x.
Lời giải
Chương trình có thể viết như sau:
def Select(A,x):
B = []
for k in range(len(A)):
if A[k] >= x:
B.append(A[k])
return B
Câu 12
Viết chương trình thực hiện các công việc sau, yêu cầu thực hiện lần lượt các công việc, mỗi công việc cần được triển khai thông qua một chương trình con:
1. Nhập từ bàn phím một dãy các số nguyên, mỗi số cách nhau bởi dấu cách. Chuyển các số này vào một dãy (list A) các số và in dãy A ra màn hình.
2. Tách từ dãy A ra một dãy B bao gồm các phần tử có giá trị > 0 của dãy A. In dãy B ra màn hình.
3. Tách từ dãy A ra một dãy C bao gồm các phần tử có giá trị < 0 của dãy A. In dãy C ra màn hình.
Cuối cùng chương trình sẽ đưa ra kết quả tổng số các lệnh cơ bản (phép gán, phép so sánh) đã thực hiện trong toàn bộ chương trình.
Viết chương trình thực hiện các công việc sau, yêu cầu thực hiện lần lượt các công việc, mỗi công việc cần được triển khai thông qua một chương trình con:
1. Nhập từ bàn phím một dãy các số nguyên, mỗi số cách nhau bởi dấu cách. Chuyển các số này vào một dãy (list A) các số và in dãy A ra màn hình.
2. Tách từ dãy A ra một dãy B bao gồm các phần tử có giá trị > 0 của dãy A. In dãy B ra màn hình.
3. Tách từ dãy A ra một dãy C bao gồm các phần tử có giá trị < 0 của dãy A. In dãy C ra màn hình.
Cuối cùng chương trình sẽ đưa ra kết quả tổng số các lệnh cơ bản (phép gán, phép so sánh) đã thực hiện trong toàn bộ chương trình.
Lời giải
Với mỗi nhiệm vụ trên sẽ được viết riêng thành một hàm. Để tính số các phép gán và so sánh cần một biến tổng thể t. Biến nhớ này sẽ được khai báo lại trong mỗi chương trình con với từ khoá global. Toàn bộ chương trình như sau:
t = 0
def Nhap_Dulieu():
global t
s = input("Nhập các số nguyên cách nhau bởi dấu cách: ")
A = s.split()
t = t + 2
for k in range(len (A)):
A[k] = int(A[k])
t = t + 1
return A
def getB(A):
global t
B = []
t = t + 1
for x in A:
if x > 0:
B.append(x)
t = t + 1
return B
def getC(A):
global t
C = []
t = t + 1
for x in A:
if x < 0:
C.append(x)
t = t + 1
return C
# Chương trình chính
A = Nhap_Dulieu()
print("Dãy A:",A)
B = getB(A)
C = getC(A)
print("Dãy B:",B)
print("Dãy С:",C)
print("Số lượng phép gán và so sánh:",t)136 Đánh giá
50%
40%
0%
0%
0%