取余運(yùn)算規(guī)則_第1頁
取余運(yùn)算規(guī)則_第2頁
取余運(yùn)算規(guī)則_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

余數(shù):余數(shù),數(shù)學(xué)用語。在整數(shù)的除法中,只有能整除與不能整除兩種情況。當(dāng)不能整除時(shí),就產(chǎn)生余數(shù),取余數(shù)運(yùn)算amodb=c(b不為0)表示整數(shù)a除以整數(shù)b所得余數(shù)為c。例如:7÷3=2…1,更專業(yè)的符號也可以寫作7÷3=2又1/3,或者7mod3=1。取余運(yùn)算規(guī)則:今天遇到一個(gè)在As3,JS里面顯示Int64問題。JS,AS只有Number類型,最大能支持的整數(shù)是+2^53,及(?9007199254740992到9007199254740992)當(dāng)數(shù)字超過限度時(shí),只能直接顯示對應(yīng)的字符串,無法用Number來轉(zhuǎn)化。網(wǎng)上找了一個(gè)開源的庫,將Int64分成2個(gè)32位的數(shù),存儲在一個(gè)對象的high,low字段里。通過higth*4294967296+low來表示對應(yīng)數(shù);然后實(shí)現(xiàn)Int64.toString()方法,顯示出對應(yīng)的字符串。開源庫在實(shí)現(xiàn)的這個(gè)方法有問題,沒能正確計(jì)算。我花了點(diǎn)時(shí)間修改了這個(gè)問題。大致思路是對該數(shù)取余y=x%10;x=x/10;將余數(shù)y放到數(shù)組里,結(jié)果x不為0就繼續(xù)重復(fù)上述步驟,最后得到的數(shù)組反序就是要得的字符串;當(dāng)用high,low2段來表示數(shù)時(shí),取余運(yùn)算就稍微比較復(fù)雜了,需要用到下面的取余運(yùn)算規(guī)則模運(yùn)算與基本四則運(yùn)算有些相似,但是除法例外。其規(guī)則如下:(a+b)%p=(a%p+b%p)%p(1)(a-b)%p=(a%p-b%p)%p(2)(a*b)%p=(a%p*b%p)%p(3)a^b%p=((a%p)^b)%p(4)結(jié)合律:((a+b)%p+c)%p=(a+(b+c)%p)%p(5)((a*b)%p*c)%p=(a*(b*c)%p)%p(6)交換律:(a+b)%p=(b+a)%p(7)(a*b)%p=(b*a)%p(8)分配律:((a+b)%p*c)%p=((a*c)%p+(b*c)%p)%p重要定理若a≡b(%p),則對于任意的c,都有(a+c)≡(b+c)(%p);(10)若a≡b(%p),則對于任意的c,都有(a*c)≡(b*c)(%p);(11)若a≡b(%p),c≡d(%p),則(a+c)≡(b+d)(%p),(a-c)≡(b-d)(%p),(a*c)≡(b*d)(%p),(a/c)≡(b/d)(%p);//一些關(guān)鍵代碼functiondiv(n:unit):uint{varMaxMod:uint=0x100000000%n;varmodHigh:uint=hight%n;varmod:uint=((modHigh*MaxMod)%n+low%n)%n;hight=Math.floor(high/n);low=Math.floor((modHigh*0x100000000+low)/n);high+=Math.floor(low/0x100000000);returnmod;}//toString()里的處理部分vardigitChars:Array=[];vartmp:Int64=newUInt64(high,low);if(high<0){//負(fù)數(shù)的話,時(shí)補(bǔ)碼表示的;反碼再加1得到原碼tmp.bitwiseNot();tmp.add(1);}do{vardigit:uint=tmp.div(radix);digitChars.push(digit<10?'0':'a').charCodeAt()+digit);}while(tmp.high!=0)varflag:String=high<0?"-":"";returnflag+tm

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論