十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
VB的开2次方函数是SQR()。其他次开方可以使用指数函数Exp得到,如要计算x的开3次方:Exp(Log(x)/3)
站在用户的角度思考问题,与客户深入沟通,找到清河网站设计与清河网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都做网站、成都网站制作、企业官网、英文网站、手机端网站、网站推广、域名注册、雅安服务器托管、企业邮箱。业务覆盖清河地区。
VB的运算顺序是:先乘除、后加减,有括号的先算括号内,有负号的先算负号。
请你比较一下这个运算中x和y的值:
Dim n As Single = 4
Dim x As Single
Dim y As Single
x = n + 1
x = x / n
x = x - 1
x = Math.Sqrt(x)
y = Math.Sqrt((n + 1) / n - 1)
这样就会发现,你的代码中括号的位置错了。
正确的应该是: Math.Sqrt((n + 1) / n - 1)
开方的计算步骤:
1、将被开方数的整数部分从个位起向左每隔两位划为一段,用撇号分开(竖式中的11’56),分成几段,表示所求平方根是几位数;
2、根据左边第一段里的数,求得平方根的最高位上的数(竖式中的3);
3、从第一段的数减去最高位上数的平方,在它们的差的右边写上第二段数组成第一个余数(竖式中的256);
4、把求得的最高位数乘以2去试除第一个余数,所得的最大整数作为试商(2×30除256,所得的最大整数是 4,即试商是4);
5、用商的最高位数的2倍加上这个试商再乘以试商.如果所得的积小于或等于余数,试商就是平方根的第二位数;如果所得的积大于余数,就把试商减小再试(竖式中(2×30+4)×4=256,说明试商4就是平方根的第二位数);
6、用同样的方法,继续求平方根的其他各位上的数.
扩展资料:
牛顿迭代法:
上述笔算开方方法是我们大多数人上学时课本附录给出的方法,实际中运算中太麻烦了。可以采取下面办法:
比如136161这个数字,首先找到一个和136161的平方根比较接近的数,任选一个,比方说300到400间的任何一个数,这里选350,作为代表。先计算0.5(350+136161/350),结果为369.5。
再计算0.5(369.5+136161/369.5)得到369.0003,发现369.5和369.0003相差无几,并且369²末尾数字为1。有理由断定369²=136161。
一般来说,能够开方开的尽的,用上述方法算一两次基本结果就出来了。再举个例子:计算
首先发现600²469225700²,可以挑选650作为第一次计算的数。即算0.5(650+469225/650)得到685.9。而685附近只有685²末尾数字是5,因此685²=469225。从而
对于那些开方开不尽的数,用这种方法算两三次精度就很可观了,一般达到小数点后好几位。实际中这种算法也是计算机用于开方的算法。
参考资料来源:百度百科-开平方运算
要用程序来开平方,首先你最起码要知道经过自己推导出来的公司,其次再是求精度,你说的nLength是要得到的10进制位数,这个不能给你保证,你得用一个小数位数来表达精度。假如你开一个非常大的数,你的整数部分就可能超过10位,更不要谈精度
方法是这样的:
x表示我要开的数,y表示结果,z是和开方后比较接近的数
y=z+(x-x^2)/2*z
也许你还不太明白,具体举例来说明
sqr(x)代表开x,即根号x,这个符号不太好打
假如我开5,即求根号5的值
5比4大sqr(4)=2,sqr(9)=3,9比5大,即459,所以2sqr(5)3,我们任取这个范围的一个数,就取2.5,z=2.5
y=2.5+(5-2.5^2)/2.5*2=2.25
此时比较接近结果的值是2.25,即z=2.25
y=2.25+(5-2.25^2)/2.25*2=2.2361112
比较接近了,想要再精确,就再次循环
通过上面的举例,相信你已经发现了用循环来求精度
具体该怎么做,相信你已经知道了
Private Sub Form_Click()
'被开方数^(1/根指数)
Print 25 ^ (1 / 2) '25的算术平方根
Print -216 ^ (1 / 3)
Print 2401 ^ (1 / 4)
Print 32768 ^ (1 / 5) '正五次根号32768
Print 531441 ^ (1 / 6)
Print 10000000 ^ (1 / 7)
End Sub