1. Giả sử có các lệnh sau:
>>> a, b = 1, 2
>>> def f(a,b):
a = a + b
b = b*a
return a + b
Giá trị của a, b bằng bao nhiêu sau khi thực hiện lệnh sau?
a) f(1, 2) b) f(10, 20)
2. Ta 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:
1. Sau mỗi lần thực hiện lệnh, giá trị của a, b vẫn bằng 1, 2.
2. Có thể. Vì các biến khai báo bên trong hàm không có hiệu lực khi ở ngoài hàm.
Giải sử hàm f(x,y) được định nghĩa như sau:
>>>def f(x,y):
a = 2*(x + y)
print(a+n)
Kết quả nào được in ra sau khi thực hiện các lệnh sau?
n = 10
f(1,2)
Trả lời: Kết quả là 16.