主頁 > 知識(shí)庫 > vbscript的骨灰級(jí)寫法計(jì)算1到100的和

vbscript的骨灰級(jí)寫法計(jì)算1到100的和

熱門標(biāo)簽:陜西高頻外呼回?fù)芟到y(tǒng)哪家好 外呼營銷下單系統(tǒng) 海外美發(fā)店地圖標(biāo)注 新密防封卡外呼系統(tǒng)違法嗎 加盟電銷機(jī)器人好的品牌 前鋒辦理400電話申請 辦理膠州400電話財(cái)稅 打電話的外呼系統(tǒng)貴不貴 百度地圖標(biāo)注怎么卸載
這篇日志完全是看了一篇日志后的啟發(fā),原文為:邪惡的eval和new Function。

很少使用new Array的方式來定義數(shù)組,沒想到new Array有這么一個(gè)妙用,通過new Array(n)我們可以創(chuàng)建n個(gè)空元素,同時(shí)也就在n個(gè)元素中間存在n-1個(gè)空白,通過join,我們可以將一些東西放在這些空白中間從而組成我們需要的特殊串,這不禁啟發(fā)了我的靈感,這個(gè)特點(diǎn)可以使我不通過循環(huán)就可以很容易的實(shí)現(xiàn)一個(gè)“有規(guī)律元素的連續(xù)運(yùn)算”。比如計(jì)算1-100的數(shù)值的和。以往我們需要從1循環(huán)到100然后求和,但利用數(shù)組的這個(gè)特性我們可以通過簡單的一行代碼搞定,代碼如下:
復(fù)制代碼 代碼如下:

var i=0,sum=eval('0'+new Array(101).join('+(++i)'));

此外可以做很多類似的數(shù)學(xué)運(yùn)算,比如以下幾個(gè)
復(fù)制代碼 代碼如下:

eval('0'+new Array(11).join('+Math.pow(++i,2)')) //計(jì)算1-10的平方和
eval('0'+new Array(100/2).join('+(i+=2)')) //計(jì)算2+4+6+...100的和

這些我們以往都通過循環(huán)進(jìn)行的計(jì)算,現(xiàn)在都可以一行代碼巧妙搞定,不得不嘆服編程語言隱含的靈巧,編程的世界總有太多的東西等待我們?nèi)グl(fā)現(xiàn)。

把上面的JavaScript代碼改成VBS,就是VBS練習(xí)題所謂的骨灰級(jí)解法:

復(fù)制代碼 代碼如下:

Dim a(101)
Execute(Join(a,"s=s+i:i=i+1:"))
MsgBox s


原文:http://demon.tw/programming/no-loop-calculate-1-100-sum.html
您可能感興趣的文章:
  • C語言菜鳥基礎(chǔ)教程之求1到100的和

標(biāo)簽:梅州 河南 武威 四平 伊春 咸陽 牡丹江 阜陽

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《vbscript的骨灰級(jí)寫法計(jì)算1到100的和》,本文關(guān)鍵詞  vbscript,的,骨灰,級(jí),寫法,;如發(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)文章
  • 下面列出與本文章《vbscript的骨灰級(jí)寫法計(jì)算1到100的和》相關(guān)的同類信息!
  • 本頁收集關(guān)于vbscript的骨灰級(jí)寫法計(jì)算1到100的和的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章