28.6. Đoạn chương trình sau có lỗi không?m, n = 10, 4def f(a): n = n + m +...

Câu hỏi:

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)

Câu trả lời:
Người trả lời: GV. Đỗ Văn Dung
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.

Để sửa lỗi này, ta có thể truyền biến m và n vào hàm f() như là tham số:

def f(a, m, n):
n = n + m + a
return n

Sau đó gọi hàm f(5, 10, 4), ta nhận được kết quả là 19.
Bình luận (0)
Nhấn vào đây để đánh giá
Thông tin người gửi
0.15151 sec| 2195.398 kb