Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Tổng bình phương n số tự nhiên đầu trong C

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.