我对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代表我的数据集中的不同列)
发布于 2020-02-27 17:12:14
I看起来与您正在使用的A = sum(B*C)/sum(B)列中的公式不同,该列在您的第一个公式D = (sum_B / double(E))*std::sqrt(E)中不存在
至于你的主要问题,"sqrt“只是”平方根“的首字母缩写。
在cppreference.com下提供了标准std::sqrt的定义。
sqrt std::
(Arg)-计算arg
的平方根
发布于 2020-02-27 17:52:53
你的第一个公式本质上是这样的

发布于 2020-02-27 18:07:52
如果你使用#include <cmath>,那么std::sqrt就可以使用了。不要依赖于它被隐式地包含,同样,也不要依赖于sqrt是可用的,以防其他人出于某种原因定义了sqrt。
你的公式可以简化为
D = sum_B / std::sqrt(E);在任何情况下,您都需要检查E是否为正。
https://stackoverflow.com/questions/60429657
复制相似问题