#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main()
{
//转换成字符串相乘才不会溢出
string num1, num2;
while (cin >> num1 >> num2) {
vector<int> num((num1.size() + num2.size() - 1) , 0);
string result = "";
int k = 0; //进位
for (int i = 0; i < num1.size(); i++)
for (int j = 0; j < num2.size(); j++) {
num[i + j] += ((num1[i] - '0') * (num2[j] - '0')); //将字母转换成int类型
}
for (int i = num.size()-1; i >= 0; i--) {
int temp = k + num[i];
result.insert(result.begin(), (temp % 10) + '0');
k = temp / 10;
}
if (k) {
result.insert(result.begin(), (k + '0'));
}
cout << result << endl;
}
return 0;
}
大数相乘
最新推荐文章于 2024-01-20 09:00:00 发布