#include "stdio.h"
#include "string.h"
#include "intrins.h"
#define BIT 10
//WriteBy :Rlogin Xukaiming
void BigNumMul(char szByNum[], char szNum[], char aryResult[])
{
int nByNumLen, nNumLen, nTempLen, nResultLen ;
int i,j,k,l;
//結(jié)果長(zhǎng)度
nByNumLen = strlen(szByNum);
nNumLen = strlen(szNum);
nResultLen = nNumLen+ nByNumLen;
//乘數(shù)長(zhǎng)度從右向左依次
l = nResultLen-1;
for (i = nNumLen-1; i >= 0; i--)
{
nTempLen = l;
for (j = nByNumLen-1; j >= 0; j--, nTempLen--)
{
//結(jié)果第一次從最后一位開(kāi)始,第二次從倒數(shù)第二位開(kāi)始放
aryResult[nTempLen] = aryResult[nTempLen] + (szNum[i] - 0) * (szByNum[j] -0);
}
//進(jìn)位處理
for (k = l; k >0; k--) //從后往前處理
{
if (aryResult[k] > BIT)
{
aryResult[k-1] = aryResult[k-1] + aryResult[k] / BIT;
aryResult[k] = aryResult[k] % BIT;
}
}
//下一次得從倒數(shù)第二位開(kāi)始
l--;
}
for(nResultLen=nResultLen-1;nResultLen>=0;nResultLen--) //變成字符串
{
aryResult[nResultLen]+=0;
_nop_();
}
_nop_();
}
void BigNumDiv(char szByNum[], char szNum[], char quotient[],char **remainder )
{
int nByNumLen, nNumLen, nTempLen, nResultLen ;
int j,k,l=0;
nByNumLen = strlen(szByNum);
nNumLen = strlen(szNum);
nResultLen = nByNumLen - nNumLen+1; //估計(jì)商數(shù)的長(zhǎng)度
//將除數(shù)和被除數(shù)變成10進(jìn)制數(shù)字
for(j=nByNumLen-1;j>=0;j--)
{
szByNum[j] -=0;
}
for(j=nNumLen-1;j>=0;j--)
{
szNum[j] -= 0;
}
///////////////////////////////除法就是減法 ?
for(j=nResultLen-1;j>=0;j--)
{
quotient[l]=0;
while(1)
{
quotient[l]++; //商數(shù)加1
for(k=nNumLen-1;k>=0;k--) //減除數(shù)的長(zhǎng)度即可
{
szByNum[k+l]-=szNum[k]; //減掉除數(shù)
if(szByNum[k+l]<0)
{
//if((l!=0)||(k+l>1)) //第一次防止借位借到-1位
if(k+l>0)
{
szByNum[k+l-1]-=1; //借位=10
szByNum[k+l]+=BIT;
}
}
} //(szByNum[0]<0)||(
if(((l==0)&&(szByNum[l]<0)) //符號(hào)判斷,看有負(fù)數(shù)沒(méi)?
||((l>0)&&(szByNum[l-1]<0)))
{
quotient[l]--;
for(k=nNumLen-1;k>=0;k--)
{
szByNum[k+l]+=szNum[k]; //變成了負(fù)數(shù),要加回來(lái)
if(szByNum[k+l]>=BIT)
{
if(k+l>0) //第一次防止借位借到-1位
{
szByNum[k+l-1]+=1;
szByNum[k+l]-=BIT;
}
}
}
_nop_();
break;
}
}
quotient[l]+=0; //轉(zhuǎn)為ASCII
l++;
}
for(j=l;j
{
szByNum[j]+=0;
}
*remainder = &szByNum[l];
quotient[l] =
看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人
(function(){
var bp = document.createElement('script');
var curProtocol = window.location.protocol.split(':')[0];
if (curProtocol === 'https') {
bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
}
else {
bp.src = 'http://push.zhanzhang.baidu.com/push.js';
}
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();