描述
高精度乘单精度,ab。 a是一个很大的非负整数,但不超过240位,b是一个非负整数不超过10000,求ab。
这题a是大数,b是小数,也是要用高精度模拟一下整个乘法过程;
下面出示代码:
#include <bits/stdc++.h>
using namespace std;
string s1;
int n,a[300],b[300],c[300],len;
int main(){
getline(cin,s1);
cin>>n;
for(int i=0;i<s1.size();i++) a[s1.size()-i-1]=s1[i]-'0';
for(int i=0;i<s1.size();i++)a[i]*=n;
for(int i=0;i<s1.size()+4;i++){
if(a[i]>=10){
a[i+1]+=a[i]/10;
a[i]%=10;
}
}
for(int i=s1.size()+3;i>=0;i--){
if(a[i]){
len=i;
break;
}
}
for(int i=len;i>=0;i--)cout<<a[i];
return 0;
}
1505

被折叠的 条评论
为什么被折叠?



