Tính S = 1² + 2² + 3² + ... + n²
Ví dụ
n = 5 → 1+4+9+16+25 = 55
Phương pháp 1: Vòng lặp
#include <iostream>
using namespace std;
int main() {
int n = 5, sum = 0;
for (int i = 1; i <= n; i++) sum += i * i;
cout << "Tong = " << sum; // 55
return 0;
}
Phương pháp 2: Công thức
S = n(n+1)(2n+1)/6
#include <stdio.h>
int main() {
int n = 10;
int sum = n * (n + 1) * (2 * n + 1) / 6;
printf("Tong = %d", sum); // 385
return 0;
}
Công thức O(1) hiệu quả hơn vòng lặp O(n) cho n lớn.