Неисправность написания функции корня куба

Я пытаюсь написать функцию корня куба с именем double my_cbrt_1(double n) используя следующий псевдокод:

x = 1
repeat 10 times:  x = (2x + n / x2) / 3
return x

и затем записывают основную часть, которая печатает n, cbrt (n) и my_cbrt_1 (n) для n = 3,14159 раз от 10 до k-й степени для k = -100, -10, -1, 0, 1, 10 и 100. Используйте этот код C ++ 11 (который работает только на linux2):

for(auto k : {-100, -10, -1, 0, 1, 10, 100}){
n = 3.14159 * pow(10.0, k);
//cout goes here
}

У меня проблемы с началом работы. Если бы кто-нибудь мог мне помочь, это было бы здорово!

-1

Решение

Чтобы начать, вы, вероятно, должны вычислить кубический корень одного числа один раз, а затем вы можете использовать эту же функцию для новых чисел

Чтобы просто реализовать функцию, которую вам дали

double my_cbrt_1(double n)
{
double x = 1.0;
for(int i=0; i<10; i++)
{
x = (2.0*x + n / (x*x)) / 3.0;
}
return x;
}
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]