Hàm đệ quy này tương tự như lũy thừa trong toán. Mình đã search Google nhưng kết quả chưa thực sự rõ ràng, nó hoạt động như thế nào vậy? Thanks.
Hàm đệ quy tính luỹ thừa hoạt động như thế nào?
Cái này là cơ bản về đệ quy.
Ví dụ n = 5.
power(base, 5) = base * power(base, 4) -> tính power(base, 4)
power(base, 4) = base * power(base, 3) -> tính power(base, 3)
…
power(base, 1) = base * power(base, 0) -> tính power(base, 0)
power(base, 0) = 1 (do return)
Chương trình quay về n = 1.
power(base, 1) = base * power(base, 0) = base * 1 (đã tính xong power(base, 0)) = base
power(base, 2) = base * power(base, 1) = base * base (đã tính xong power(base, 1)) = base * base
…
power(base, 5) = base * power(base, 4) = base * (base * base * base * base) (đã tính xong power(base, 4)) = base * base * base * base * base
n = các giá trị khác cũng tương tự.
Đọc thêm:
2 Likes
Got it, thanks…
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?