Является ли std :: sqrt таким же, как sqrt в C ++ - PullRequest
0 голосов
/ 27 февраля 2020

Я очень новичок в C ++, у меня есть этот кусок кода, код выглядит так:

D = (sum_B / double(E))*std::sqrt(E)

Может кто-то интерпретировать это в математическую формулу или что-то простое для понимания, я не уверен, что это std::sqrt, интересно, совпадает ли это с моей формулой:

A = sum(B*C)/sum(B)
D = A * sqrt(E)

(A / B / C / D / E представляют разные столбцы в моем наборе данных)

Ответы [ 3 ]

2 голосов
/ 27 февраля 2020

Ваша первая формула, по сути, такая:

enter image description here

2 голосов
/ 27 февраля 2020

Я не похож на ту же формулу, что и в A = sum(B*C)/sum(B) вы используете столбец C, которого нет в вашей первой формуле D = (sum_B / double(E))*std::sqrt(E)

Что касается вашего основного вопроса "sqrt "это просто сокращение от" square root ".

Определение стандартного std :: sqrt доступно в cppreference.com .

std :: sqrt (arg) - вычисляет квадрат root от arg

1 голос
/ 27 февраля 2020

Если вы #include <cmath>, тогда std::sqrt станет доступным для использования. Не полагайтесь на то, что он неявным образом включен и в равной степени, не полагайтесь на то, что sqrt доступен, если кто-то определил sqrt по какой-либо причине.

Ваша формула может быть немного упрощена до

D = sum_B / std::sqrt(E);

В любом случае вам нужно проверить, что E положительно.

...