@asd1237asd

Как решить, программа выдает ответ не в правильном формате?

#include <iostream>
#include <iomanip>
#include <math.h>
using namespace std;

int main() {
    double a;
    int n;
    cin >> a;
    cin >> n;
    const double eps = 1e-13;
    if (a <= 0 || n == 0)
        return 0;
    if (n == 1 || a == 1.0)
        return a;
    double m, l, r;
    //  m = 0;
    if (a > 0 and a <= 1) {
        l = a;
        r = 1;
    }
    else {
        l = 1;
        r = a;
    }
    while (r - l >= eps) {
        m = (l + r) / 2.0;
        if (pow(m, n) - a > 0) {
            r = m;
        }
        else {
            l = m;
        }
    }

    cout << setprecision(12) << m;

    return 0;
}


Программа должна вывести единственное число — ответ на задачу с точностью не менее 4 знаков после точки.

Примеры
Ввод
2
2
Вывод
1.41421356237

Программа выводит ответ в неверном формате. В чем траблы?
  • Вопрос задан
  • 493 просмотра
Пригласить эксперта
Ответы на вопрос 1
wataru
@wataru Куратор тега C++
Разработчик на С++, экс-олимпиадник.
В некоторых случаях программа не выводит ничего. Вряд ли это ожидаемое поведение.

Или проверяющая программа ждет перевод строки (добавьте "\n" после вывода m).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы