Как найти кубический корень в С++?
Я пробовала по-разному. И pow и через экспоненту, и даже пробовала написать выражение с этим знаком ^.
Результат либо 0, либо 1.
Может я что-то упускаю? А корень найти просто необходимо.
Я пробовала по-разному. И pow и через экспоненту, и даже пробовала написать выражение с этим знаком ^.
Результат либо 0, либо 1.
Может я что-то упускаю? А корень найти просто необходимо.
#include
#include
int main() {
std::cout << pow(27, 1./3) << std::endl;
}
cmath надо подключить.
> Я пробовала по-разному. И pow и через экспоненту.. .
Тык может ошибка не там, где ты берешь корень, а где-то выше по тексту программы?
В С++ приведение типов ни фига не автоматическое. Типичная ошибка, ожидать что результат деления 1/3 будет 0,333333.Ноль он, 0.Надо писать либо 1.0/3, либо 1/3.0 или иным способом, чтобы ясно было, что это нецелочисленное деление. А потом, зачем гадать то с ^? Почитайте учебник для новичков:
power( x, 1/3 ) или exp( ln(x) / 3 );
Вы, вероятно, присваиваете результат целочисленной переменной (инт) , а надо числу с плавающей точкой - float к примеру.