Как сделать преобразование переменной в С++?

Есть две функции: calculateExpression ведёт подсчет по заданной формуле, функция compareExpressions вызывает аргументы из main функции. Он должен сравнить, какое из чисел больше, но если условия не подходят, вывести ошибку.
Вопрос следующий: есть цикл с условиями, как в 3 условии преобразовать переменную result в строковую с помощью string и вывести текст в переменную result

double calculateExpression(double x) {
    double result = 0;
    if (x != 95 && cos(x - 95) != 0 && 95 / cos(x - 95) != 0) {
        result = log(abs(95 / 10) + 4 * (1 - 95 / cos(x - 95)));
    }
    else {
        std::cout << "Ошибка вычисления выражения для x = " << x << std::endl;
    }
    return result;
}

double compareExpressions(double x1, double x2) {
    double result = 0;
    double expression1 = calculateExpression(x1);
    double expression2 = calculateExpression(x2);
    if (expression1 < expression2) {
        result = expression1;
    }
    else if (expression1 > expression2) {
        result = expression2;
    }
    else {
        result = ;
    }
    return result;
}

int main() {
    setlocale(LC_ALL, "rus");
    double startX = 0, endX = 0, step = 0;
    std::cout << "Введите начальное значение X: ";
    std::cin >> startX;
    std::cout << "Введите конечное значение X: ";
    std::cin >> endX;
    do {
        std::cout << "Введите шаг изменения переменной deltaX: ";
        std::cin >> step;
    } while (step == 0);
    printTable(startX, endX, step);
    return 0;
}
  • Вопрос задан
  • 78 просмотров
Пригласить эксперта
Ответы на вопрос 1
AshBlade
@AshBlade
Просто хочу быть счастливым
Если вопрос в том - как возвращать ошибку в качестве ответа, то есть решения:
- Создать специальный класс Result, который будет содержать либо ответ, либо строку ошибки
- Возвращать double.NaN - маркер ошибки
- Кидать исключение

UPD: если функция возвращает double, а ты хочешь передать std::string, то ничего не получится - типизация строгая
Ответ написан
Ваш ответ на вопрос

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

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