日期:2014-05-19  浏览次数:20452 次

怎样计算精度到50位的小数
.net中怎样计算精度到50位的小数?是否有专门的数据类型,或者请给出思路或者算法。

------解决方案--------------------
没做过帮顶
------解决方案--------------------
好像没有这么精确的数据类型,decimal也只有28 到 29 位有效的小数位,

如果有必要你可以用自已定义一个任意多的小数的类型.
------解决方案--------------------
比如,你自己定义一个Byte类型的数组,自己来按运算的规则定义运算等.
------解决方案--------------------
精度到50位的小数,不知道你的整数部分是多少位的。
如果整数位数不多,可以将这个数字乘以10的50次方,这样也不会产生溢出问题。
在显示的时候,这个数字当一个字符串处理。不过就是在正确的位置加上小数点罢了。
如果整数位数也很多。这个方法不太适用。不过
double的数据范围是
负数部分为-1.79769313486231E308 到-4.94065645841247E-324,
正数部分为4.94065645841247E-323 到1.79769313486232E308
一般不会产生溢出的。

------解决方案--------------------
自己定义一个类型,然后自己写相应的计算方法.不难的
------解决方案--------------------
友情UP
------解决方案--------------------
去网上找大数运算
------解决方案--------------------
当作字符串来处理.以前算1000000!的时候我是这么做的,应该满足你要求.
------解决方案--------------------
放大這個數就行了!
就象1024K=1M,你不會把你的100G的硬盤告訴別人是多少萬K的吧!
------解决方案--------------------
可以看看这个
http://bbs.csai.cn/BBSOldArticle/A1/772D6BE6-D12A-490F-9B88-7B33289F2AD6.html