相关疑难解决方法(0)

什么是长双重文字的C++后缀?

在C++(和C)中,没有后缀的浮点文字默认为double,而后缀f意味着a float.但是后缀是long double什么?

不知道,我会定义,比方说,

const long double x = 3.14159265358979323846264338328;
Run Code Online (Sandbox Code Playgroud)

但我担心的是变量x包含的有效位3.14159265358979323846264338328少于64,因为这是一个double文字.这种担心是否合理?

c c++ literals floating-point-precision

55
推荐指数
3
解决办法
4万
查看次数

'精度'和'准确度'之间有什么区别?

'准确'和'准确'之间有什么区别?

如果有差异,你能给出一个例子

  • 一个准确但不准确的数字
  • 一个精确但不准确的数字
  • 一个既准确又精确的数字

谢谢!

math

14
推荐指数
3
解决办法
3万
查看次数

使用标准C数学库实现sinpi()和cospi()

函数sinpi(x)计算sin(?x),函数cospi(x)计算cos(?x),其中乘以?在函数内部是隐式的。这些功能最初是由Sun Microsystems在1980年代末期扩展为C标准数学库的。IEEE标准754™-2008指定的等价的功能sinPi和cosPi在第9。

有许多计算会自然产生sin(?x)和cos(?x)。一个非常简单的例子是Box-Muller变换(GEP Box和Mervin E. Muller,“关于随机正态偏差的生成的注释”。《数学统计》,第29卷,第2期,第610-611 页) ),则给定两个独立的随机变量U?和你?分布均匀,产生独立的随机变量Z?和Z?标准正态分布:

Z? = ?(-2 ln U?) cos (2 ? U?)
Z? = ?(-2 ln U?) sin (2 ? U?)
Run Code Online (Sandbox Code Playgroud)

另一个示例是度数参数的正弦和余弦计算,如使用Haversine公式的大圆距离计算:

Z? = ?(-2 ln U?) cos (2 ? U?)
Z? = ?(-2 ln U?) sin (2 ? U?)
Run Code Online (Sandbox Code Playgroud)

对于C ++,Boost库提供sin_pi和 cos_pi,某些供应商提供sinpi和cospi功能作为系统库中的扩展。例如,苹果增加__sinpi,__cospi和相应的单精度版本__sinpif,__cospif到iOS 7和OS X 10.9(介绍,幻灯片101)。但是对于许多其他平台,没有C程序可以轻易访问的实现。 …

c floating-point trigonometry math.h

11
推荐指数
1
解决办法
1171
查看次数