Создать программу, которая считывает значение eps (точность вычисления) и выводит y

Создать программу, которая считывает значение eps (точность вычисления) и выводит y. Цикл заканчивается, когда новое слагаемое меньше eps. y = 1/2 + 1/4 + 1/8 + 1/16 + ...

    #include <iostream>

    using namespace std;

    int main()
    {
    double y = 0;
    double eps;
    cout << "Enter eps: ";
    cin >> eps;
    double i = 2;
    double sum = 0;
    while (y > eps)
    {
        y += 1 / i;
        sum += y;
        i *= 2; 
    }
    cout << "y = " << y << "\n";
    return 0;
    }

Ответы (1 шт):

Автор решения: Harry

Ладно, раз все так плохо, что комментарий не помог...

int main()
{
    double eps;
    cout << "Enter eps: ";
    cin >> eps;
    double t = 1./2.;
    double sum = t;
    while (t > eps) sum += t /= 2;
    cout << "sum = " << sum << "\n";
}
→ Ссылка