具體的方法和加法是類似的
不過中間有可以簡化的步驟比較巧
進製要計算好
沒有寫在小函式裡,要用的話在函式裡寫很方便
#include #include #define maxle 1000
using namespace std;
int main()
;//c結尾
cin >> a >> b;
int i, j, m, n;
long sum, upper;//標記進製
m = strlen(a) - 1;
n = strlen(b) - 1;//ab長度
for (i = m; i >= 0; i--)
a[i] -= '0';
for (i = n; i >= 0; i--)
b[i] -= '0';//數位化
upper = 0;
for (i = m + n; i >= 0; i--)
for (; j <= i && j <= n; j++)
c[i + 1] = sum % 10 + '0'; //計算結果
upper = sum / 10;//進製
} c[0] = upper + '0';
if (c[0] == '0')//如果沒有進製 }
else
return 0;
}
大整數乘法
參考 http hi.baidu.com operationsystem blog item 6e45dd1af1acadf3ae51330b.html 在計算機中,長整型 long int 變數的範圍是 2147483648 至 2147483647,因此若用長整型變數做乘法運算,乘積最多不能超過...
大整數乘法
問題描述 by 計算機演算法設計與分析 王曉東 p17 通常,在分析乙個演算法的計算複雜性時,都將加法和乘法運算當作是基本運算來處理,即將執行一次加法或乘法運算所需的計算時間當作乙個僅取決於計算機硬體處理速度的常數。這個假定僅在計算機硬體能對參加運算的整數直接表示和處理時才是合理的。然而,在某些情況...
大整數乘法。
include using namespace std int multi int num1,int size1,int num2,int size2 int size size1 size2 int ret new int size int i 0 for i 0 iret i 0 for i 0...