Перевести одну строку c float в double - C (СИ)
Формулировка задачи:
Подскажите. Есть код. Все задано через float. Но 10 VS не вытаскивает одну из строк, и из-за этого необходимо задать все через double, но тогда ответ получается совершенно иным.
Можно ли задать double только для этой строки, чтобы не менять ничего больше. Если да, то каким способом/какой командой?
Спасибо!
Решение задачи: «Перевести одну строку c float в double»
textual
Листинг программы
float a, b, y,x;
printf("Введите а,в=>");
scanf("%f%f", &a, &b);
printf("Введите x=>");
scanf("%f", &x);
//
if (a > b && b > 2)
y = x*x + a;
else if (a < b && b < 2)
y = max(a, b);
else if (a == b)
y = pow(sin(x*x), 3.0) + pow(pow(a, b) - tan(b), 1.0 / 3);
else
y = min(a, b);
//
printf("Для a= %8.4f\tb=%8.4f\tx=%8.4f\n", a, b, x);
printf("y=%8.4f\n", y);
return 0;
Объяснение кода листинга программы
В этом коде вводятся четыре переменные типа float: a, b, x и y. Первые две переменные запрашиваются у пользователя с помощью функции scanf, последняя переменная x запрашивается у пользователя с помощью той же функции. Затем происходит проверка значений переменных a и b, и если выполняются определенные условия, то переменной y присваивается определенное значение. Затем выводятся значения переменных a, b и y с помощью функции printf. Код заканчивается возвратом значения 0, что обычно означает успешное выполнение программы.