Giải bài tập sách bài tập (SBT) tin học lớp 10 kết nối tri thức bài 28: Phạm vi của biến

Giải bài 28: Phạm vi của biến - sách bài tập (SBT) tin học lớp 10 kết nối tri thức

Trong phần này, chúng ta sẽ tìm hiểu về phạm vi của biến trong lập trình. Phần đáp án chuẩn và hướng dẫn giải chi tiết cho từng bài tập trong sách bài tập đã được cung cấp. Chúng tôi hy vọng rằng thông qua bài học này, các em học sinh sẽ hiểu và nắm vững kiến thức cơ bản về phạm vi của biến trong lập trình.

Bài tập và hướng dẫn giải

28.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)

Trả lời: Không lỗi. Kết quả sẽ in ra các số 5, 3. Xem hướng dẫn giải chi tiết

28.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)

Trả lời: Có bị 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... Xem hướng dẫn giải chi tiết

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

Trả lời: Đáp án A.  Xem hướng dẫn giải chi tiết

28.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?

Trả lờ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. ... Xem hướng dẫn giải chi tiết

28.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?

28.6. Đoạn chương trình sau có lỗi không?

m, n = 10, 4

def f(a):

     n = n + m + a

     return n

f(5)

Trả lờ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ư... Xem hướng dẫn giải chi tiết

28.7. Đoạn chương trình sau có lỗi không?

m, n = 10, 4

def f(a):

       k = n + m + a

       return k

f(5)

Trả lờ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... Xem hướng dẫn giải chi tiết

28.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)

Trả lời: Chương trình sẽ in ra "train go".  Xem hướng dẫn giải chi tiết

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

Trả lời: Đáp án D. Xem hướng dẫn giải chi tiết

28.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)

Trả lờ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... Xem hướng dẫn giải chi tiết

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

Trả lời: Chương trình có thể viết như sau:def Select(A,x):         B = [ ] ... Xem hướng dẫn giải chi tiết

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

Trả lờ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... Xem hướng dẫn giải chi tiết
0.04446 sec| 2223.445 kb