佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > 用VBS精確計(jì)算2的100次方的代碼

用VBS精確計(jì)算2的100次方的代碼

熱門標(biāo)簽:智能手機(jī) 檢查注冊表項(xiàng) 鐵路電話系統(tǒng) 服務(wù)器配置 呼叫中心市場需求 銀行業(yè)務(wù) 網(wǎng)站文章發(fā)布 美圖手機(jī)
既然Python可以計(jì)算2的100次方,那么我就要用VBS實(shí)現(xiàn)。不過這個(gè)效率嘛,計(jì)算2的10000次方Python用了0.009013秒,VBS用了120.9805秒,不是一個(gè)等級的,我就不多說什么了。

直接上代碼:
復(fù)制代碼 代碼如下:

'Date: 2010/10/27
'Author: Demon
'QQ: 380401911
'E-mail: still.demon@gmail.com

begin = Timer
n = 1
For i = 1 To 100
n = multiple(n, 2)
Next
finish = Timer
WScript.Echo n
WScript.Echo finish - begin

'Grade school multiplication, Algorithm 14.12
'http://www.cacr.math.uwaterloo.ca/hac/about/chap14.pdf
Function multiple(byVal x, byVal y)
Dim n, t, i, j, z, w()
n = Len(x) - 1
t = Len(y) - 1
ReDim w(n + t + 1)

x = CStr(x) : y = CStr(y)

For i = 0 To UBound(w)
w(i) = "0"
Next

For i = 0 To t
Dim c : c = 0
Dim uv : uv = 0

For j = 0 To n
uv = (w(i+j)-"0") + c + _
(Mid(x,n-j+1,1)-"0") * (Mid(y,t-i+1,1)-"0")
w(i+j) = CStr(uv Mod 10 + "0")
c = uv \ 10
Next

w(i+n+1) = CStr(uv \ 10 + "0")
Next

z = Join(w,"")
z = StrReverse(z)
Do While Left(z,1) = "0"
z = Mid(z,2)
Loop

multiple = z
End Function

原文:http://demon.tw/programming/vbs-long-multiplication.html
您可能感興趣的文章:
  • 用VBS精確計(jì)算100的階乘的實(shí)現(xiàn)代碼

標(biāo)簽:紅河 河南 滄州 新疆 樂山 長治 沈陽 上海

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《用VBS精確計(jì)算2的100次方的代碼》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    科尔| 塔城市| 房产| 南木林县| 东辽县| 磐安县| 全南县| 肥城市| 土默特右旗| 自贡市| 蓝田县| 蓝山县| 方城县| 五大连池市| 吉木萨尔县| 西林县| 静安区| 商水县| 乳源| 金坛市| 隆子县| 兰西县| 乐安县| 陆河县| 阿合奇县| 达日县| 台南市| 武乡县| 桦南县| 通许县| 桐城市| 东光县| 依兰县| 石狮市| 南乐县| 梓潼县| 宿松县| 永靖县| 准格尔旗| 罗定市| 墨江|