我想做的是计算一个数的平方根,然后我们必须用正确的小数点来存储这个平方根值。对于示例
Lets,N=2 and P=100
//I want to store square root till P correct decimal values
like storing
1.41421356237309504880...till 100 values
编辑-最初我问了一个专门针对c++的问题,但正如vsoftco告诉我的那样,c++要做到这一点几乎是不可能的助推。所以呢我也已经标记了Python,并且没有删除C++标签,希望在C++
中获得正确答案。
有一个c++的扩展,它定义了http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2849.pdf中描述的
decimal
类型族。在现代gcc版本中有一些对它的支持,但是它仍然不完整,即使在4.9.2中也是如此也许对你来说是可行的。你知道吗
C++使用floating-point类型(如^ {CD1>},^ {CD2>})来存储浮点值并执行浮点运算。这些类型的大小(直接影响其精度)是由实现定义的(通常不会获得超过128位的精度)。而且,精度是一个相对的术语:当你的数字增长时,你的精度越来越低。你知道吗
<>所以,回答你的问题:用标准C++类型存储任意精度的数字是不可能的。为此,需要使用多精度库,例如Boost.Multiprecision。你知道吗示例代码使用助推。多精度地址:
如果使用Python,则可以使用
decimal
模块:相关问题 更多 >
编程相关推荐