Cho n. Tính tổng chuỗi các tổng số lẻ liên tiếp:
S = 1 + (1+3) + (1+3+5) + ... + (1+3+5+...+(2n-1))
Ví dụ
n = 3: S = 1 + (1+3) + (1+3+5) = 1 + 4 + 9 = 14
Quan sát
Tổng i số lẻ đầu tiên = i².
Vậy số hạng thứ i của chuỗi là i².
Tổng chuỗi = Σ[i=1..n] i² = n(n+1)(2n+1)/6.
Chương trình C++
#include <iostream>
using namespace std;
long long calcSeriesSum(int n) {
return 1LL * n * (n + 1) * (2 * n + 1) / 6;
}
int main() {
int n = 9;
cout << "Tong chuoi = " << calcSeriesSum(n); // 285
return 0;
}
Kết quả
Tong chuoi = 285
Lưu ý
Bài gốc viết công thức (2n-1) trong mô tả nhưng code dùng (2n+1) đúng cho tổng bình phương.