Giải SBT Tin 10 KNTT Bài 28. Phạm vi của biến có đáp án

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)

10/12

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)

0/3000 ký tự
Giải thích

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)