Пояснення коду C++ для ряду Базеля

Код

#include <iostream>
#include <cmath>
using namespace std;

int main() {
    int n;
    cout << "Enter n: ";
    cin >> n;

    double sum = 0.0;

    for(int i = 1; i <= n; i++) {
        sum += 1.0 / ((double)i * i);
    }

    cout.precision(15);
    cout << "Sum = " << sum << endl;
    cout << "PI^2/6 = " << M_PI * M_PI / 6 << endl;

    return 0;
}

Пояснення рядок за рядком

#include <iostream> – підключаємо бібліотеку для вводу/виводу (cin, cout).
#include <cmath> – підключаємо математичну бібліотеку (M_PI, sqrt, sin, cos).
using namespace std; – щоб не писати постійно std::cout або std::cin.
int main() – головна функція, точка входу в програму.
int n; – оголошуємо змінну для кількості членів ряду.
cout << "Enter n: "; – вивід запиту користувачу.
cin >> n; – зчитування числа, яке вводить користувач.
double sum = 0.0; – змінна для суми ряду.
for(int i = 1; i <= n; i++) – цикл для обчислення суми ряду.
sum += 1.0 / ((double)i * i); – додаємо кожен член ряду 1/i².
cout.precision(15); – встановлюємо точність виводу до 15 цифр.
cout << "Sum = " << sum << endl; – вивід обчисленої суми.
cout << "PI^2/6 = " << M_PI * M_PI / 6 << endl; – вивід теоретичного значення π²/6.
return 0; – успішне завершення програми.

Схема роботи коду (n = 5)

Користувач вводить n = 5
n = 5
sum = 0.0

Цикл for: i = 1 to n
-----------------------------------------
i = 1: sum += 1/1² = 1       → sum = 1
i = 2: sum += 1/2² = 0.25    → sum = 1.25
i = 3: sum += 1/3² ≈ 0.1111 → sum ≈ 1.3611
i = 4: sum += 1/4² = 0.0625 → sum ≈ 1.4236
i = 5: sum += 1/5² = 0.04   → sum ≈ 1.4636

Цикл завершено
-----------------------------------------
Вивід:
Sum ≈ 1.4636111111
PI²/6 ≈ 1.6449340668

Пояснення схеми

Семестр №1
Наші партнери