importance: 5
Viết hàm sumTo(n) để tính tổng các số 1 + 2 + ... + n.
Ví dụ:
sumTo(1) = 1
sumTo(2) = 2 + 1 = 3
sumTo(3) = 3 + 2 + 1 = 6
sumTo(4) = 4 + 3 + 2 + 1 = 10
...
sumTo(100) = 100 + 99 + ... + 2 + 1 = 5050Thực hiện 3 biến thể giải pháp:
- Sử dụng vòng lặp for.
- Sử dụng đệ quy, gây ra
sumTo(n) = n + sumTo(n-1)chon > 1. - Sử dụng công thức cấp số cộng.
Một ví dụ về kết quả:
function sumTo(n) { /*... mã của bạn ... */ }
alert( sumTo(100) ); // 5050Tái bút: Biến thể giải pháp nào là nhanh nhất? Chậm nhất? Tại sao?
Tái bút nữa: Chúng ta có thể sử dụng đệ quy để đếm sumTo(100000) không?