大數的加減乘除

2021-09-12 17:18:55 字數 1079 閱讀 9613

#include #include int x[100]= ,y[100]= ,z[100]= ;

int flag=1;

void sub(int x,int y,int p) else

}for(i=p-1; i>=0; i--)

}if(flag)

printf("0\n");

else

printf("\n");

}}int main()

j=0;

for(i=n-1; i>=0; i--)

if(m>n) else if(m=0; i--) else

} else continue;}}

return 0;

}

大數的乘法

#include#include#define max 100

char a[max],b[max];

int aa[10005],len;//aa儲存相乘後的結果,len來相乘後的儲存資料的長度 (正序) 

void multplay(),y[max+10]=,z[max*2+10]=;    

int len1,len2,i,j;

len1=strlen(a);

len2=strlen(b);

for(j=0,i=len1-1;i>=0;i--)   //將a轉換為整形陣列 (逆序倒序儲存)

x[j++]=a[i]-'0';

for(j=0,i=len2-1;i>=0;i--)   //將b轉換為整形陣列 (逆序倒序儲存) 

y[j++]=b[i]-'0';

for(i=0;i=10)   

}for(i=max*2;i>0;i--)  

len=0;

for(;i>=0;i--)  

aa[len++]=z[i];

}int main()

}cout<>m>>n;

if(m.length()sum(m,n);

return 0;

}

大數加減乘除

include include include include includeusing namespace std compare比較函式 相等返回0,大於返回1,小於返回 1 int compare string str1,string str2 if cf 0 str char cf 0 st...

大數加減乘除

對於大數的加減乘除都要先把輸入的大數字串轉成倒序的陣列,再進行運算。字串的處理 scanf s s a1,b1 len 0 for int i strlen a1 1 i 0 i len 0 for int i strlen b1 1 i 0 i len max strlen a1 strlen b...

大數的加減乘除

當數的位數非常大而常規的資料型別不足以儲存的時候,可以考慮使用大數。即用乙個長的陣列來儲存相應的位數,如int a 100 a的每一位儲存一位數字或幾位數字,根據常規的加減乘除運算對陣列進行操作。使用string型別對陣列進行操作,雖然比用整型簡便,但可 能增加了執行時間。pku1001 expon...