有現(xiàn)成函數(shù)sqr(100)返回10
創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、新田網(wǎng)絡(luò)推廣、微信小程序開發(fā)、新田網(wǎng)絡(luò)營銷、新田企業(yè)策劃、新田品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學生創(chuàng)業(yè)者提供新田建站搭建服務(wù),24小時服務(wù)熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com
如果是任意次開方可以自己做一個函數(shù),先做一個連乘的乘方函數(shù),再做一個開任意次方。因為開方就是不斷的用連乘來試驗的,如下
'定義連乘函數(shù),或者叫乘方Private?Function?lc(number,?n?As?Integer)Dim?myresultmyresult?=?1Dim?i?As?IntegerFor?i?=?1?To?n????myresult?=?myresult?*?numberNextlc?=?myresultEnd?Function????
12345678910111213141516171819202122????'開任意次方Private?Function?Power(number?As?Double,?n?As?Integer)Dim?j?As?DoubleDim?myresult?As?Doublemyresult?=?0.0000001For?j?=?p?To?number?Step?0.00001????????????????????????????Dim?myNum?As?Double????myNum?=?lc(j,?n)????If?myNum?=?number?Then????myresult?=?j????Else????Exit?For????End?IfNextPower?=?myresultIf?lc(Int(Power)?+?1,?n)?=?number?ThenPower?=?Int(Power)?+?1ElsePower?=?myresultEnd?IfEnd?Function
調(diào)用示范:
MsgBox Power(28, 3)
VB的運算順序是:先乘除、后加減,有括號的先算括號內(nèi),有負號的先算負號。
請你比較一下這個運算中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)
這樣就會發(fā)現(xiàn),你的代碼中括號的位置錯了。
正確的應(yīng)該是: Math.Sqrt((n + 1) / n - 1)
Sqr 函數(shù)
返回一個 Double,指定參數(shù)的平方根。
語法
Sqr(number)
必要的 number 參數(shù) number 是 Double 或任何有效的大于或等于 0 的數(shù)值表達式。
例子:
Dim MySqr
MySqr = Sqr(4) ' 返回 2。
MySqr = Sqr(23) ' 返回 4.79583152331272。
MySqr = Sqr(0) ' 返回 0。
MySqr = Sqr(-4) ' 生成一個運行時錯誤(負數(shù)不能用此函數(shù)開平方根)。