网站建设资讯

NEWS

网站建设资讯

vb.net计算精度,vb高精度算法

VB.NET中单精度浮点与双精度浮点的实质区别是什么

单精度只保留6位有效数字。另外双精度可以保留15位数字。这是2者最明显的区别。

目前创新互联建站已为上千家的企业提供了网站建设、域名、网站空间绵阳服务器托管、企业网站设计、金水网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

vb.net中如何解决公式计算的精确度问题

仅仅是普通表达式的话,定义数据类型,比如从单精度改为双精度,如果想保留小数点位数,用formatnumber来处理。如果是某个算法的精度,就要复杂一些,要定义一个误差,在算法迭代过程中,用while语句判断计算结果的残差是否小于定义的误差值,至于残差如何计算,与你的算法有关

怎么样返回一个double变量的精度?(VB.NET)

可以自己建立一个判断double精度的程序,如下:

Private Function F(Dou As Double) As Integer

Dim St As String, Ddot As Integer '声明

St = Str(Dou) '把这个double转换成字符串

Ddot = Instr(St, ".") 'Ddot代表点(.)的位置

If Ddot = 0 Then Exit(0) '找不到点(.),精度当然是零~

Do While Right(St, 1) = 0 '若找得到点(.),先去掉double右边多余的0

St = Left(St, Len(St - 1)) '去掉一个0

Loop

Exit(Len(St) - Ddot) '末尾没有0的double的长度减去点(.)的位置,得到的就是点后面有几个数字,也就是lz说的精度~

End Function

'写完以后如果要求精度就调用这个过程就可以了。

'例如求544.42400的精度,存在a里面(a As Integer)这样写:

Dim a As Integer

a = F(544.42400)

vb.net 怎样使计算结果只保留四位小数?

用这个函数把

Math.Round 方法 (Decimal, Int32)

将小数值舍入到指定精度。

命名空间: System

程序集: mscorlib(在 mscorlib.dll 中)

语法

Visual Basic(用法)

Dim d As Decimal

Dim decimals As Integer

Dim returnValue As Decimal

returnValue = Math.Round(d, decimals)

参数

d

类型:System.Decimal

要舍入的小数。

decimals

类型:System.Int32

返回值中的小数位数(精度)。

返回值

类型:System.Decimal

精度等于 decimals,最接近 d 的数字。

Math.Round(3.4666666, 4) 结果是 3.4667.


本文名称:vb.net计算精度,vb高精度算法
地址分享:http://cdweb.net/article/dsegjge.html