01/10/2018, 14:17
Tính s(n) = sqrt(1 + sqrt(2 + sqrt (3 + ...sqrt (n-1 + sqrt (n))))) bằng đệ quy
Đề:tính s(n) = sqrt(1 + sqrt(2 + sqrt (3 + …sqrt (n-1 + sqrt (n))))) bằng đệ quy
Bài liên quan
Đề:tính s(n) = sqrt(1 + sqrt(2 + sqrt (3 + …sqrt (n-1 + sqrt (n))))) bằng đệ quy
Khi dừng đệ quy bạn return ra 1 và bạn show cái bạn return thì nó chả sai ~~
Bài này debug từng bước rồi xem cho hiểu nhé, gửi 1 câu nói rất hay của @noname00 :))
Edit, hàm main chưa return
Mình chỉ search gg với cái title của bạn ra được solution luôn (bài 750)
Diễn Đàn Đại Học
Tài liệu - Tổng hợp giải thuật hàm đệ quy
ĐỆ QUY Khái niệm : Một hàm được gọi là đệ qui nếu bên trong thân của hàm đó có lời gọi hàm lại chính nó Phân loại đệ qui : Đệ quy thường gặp thuộc...
Còn đây là code mình vừa mới viết
Hình minh họa kết quả nha :v
Bạn cứ chạy code ra giấy là vấn đề được giải quyết ngay ý mà (lưu ý: gặp một bài toán đừng nhảy vào code luôn mà hãy có sẵn một quyển vở để ghi ý tưởng đã sau mới implement tỷ lệ thành công sẽ cao hơn)
Đây là do thớt hiểu sai công thức thôi. Thay n = 3 là thấy toạch ngay: s’(n) = sqrt(3 + sqrt(2+sqrt(1)) != s(n) = sqrt(1+sqrt(2+sqrt(3))).
Viết xuôi cho ct đúng sẽ là `for i=n to 1 step -1 do {s := 0} s <- sqrt(i + s), phù hợp với đệ quy đuôi. Viết như bạn thì phải hai tham số.
mình chưa học Java nên nhìn ko biết gì cả
Nếu bạn suy nghĩ ra vấn đề thì implement bằng ngôn ngữ nào chả được