Foxtable(狐表)用户栏目专家坐堂 → 高精度小数的有效数字


  共有10961人关注过本帖树形打印复制链接

主题:高精度小数的有效数字

帅哥哟,离线,有人找我吗?
明丰
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:558 积分:4352 威望:0 精华:2 注册:2011/4/18 8:27:00
高精度小数的有效数字  发帖心情 Post By:2012/10/14 12:03:00 [只看该作者]

Decimal 高精度小数,有高达28位的有效数字,适用于要求使用大量有效的整数及小数位数并且没有舍入错误的财务计算。

 

Dim d As Decimal = 1231234567890.123456789012345678901234589
Dim d1 As Decimal = 0.123456789012345678901234589
output.show(d)
output.show(d1)

 

为何显示的有效数字只有15位?


 回到顶部
帅哥哟,离线,有人找我吗?
lihe60
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6885 积分:43595 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2012/10/14 14:38:00 [只看该作者]

不知道

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/10/15 9:07:00 [只看该作者]

Dim d As Decimal = 1231234567890.123456789012345678901234589@
Dim d1 As Decimal = 0.123456789012345678901234589@
output.show(d)
output.show(d1)

 回到顶部
帅哥哟,离线,有人找我吗?
明丰
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:558 积分:4352 威望:0 精华:2 注册:2011/4/18 8:27:00
  发帖心情 Post By:2012/10/15 9:48:00 [只看该作者]

Dim value As Decimal

value = Math.PI

请问如何得到28位有效数字?


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/10/15 10:05:00 [只看该作者]

没办法,pi返回的就是一个double型

 回到顶部
帅哥哟,离线,有人找我吗?
明丰
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:558 积分:4352 威望:0 精华:2 注册:2011/4/18 8:27:00
  发帖心情 Post By:2012/10/15 10:14:00 [只看该作者]

用@可以求出算式高精度结果,不知@表示什么?如:

 

Dim value1 As Decimal

Dim d1 As Integer = 3

Dim d2 As Integer = 5

value1 = (1@*d2/d1)

output.show(value1)

'得到:1.6666666666666666666666666667


 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/15 11:49:00 [只看该作者]

 相当于一个转换函数 CDec

Dim d As Decimal = CDec("1")
Output.Show(d / 3)

 回到顶部