• C++
  • 高精度除法模板-高精度除以低精度

  • @ 2023-12-9 17:41:36
#include<bits/stdc++.h> //使用<bits/stdc++.h>库,包含了许多常用的C++函数,如cin、cout等
using namespace std; //使用std命名空间

vector<int> div(vector<int> &v,int k,int &r){ //定义函数mul,用于计算两个数的乘积
	vector<int>res; //定义可变数组res
	r = 0;
	for(int i=v.size()-1;i>=0;i--){
		r = r*10+v[i];
		res.push_back(r/k);
		r = r%k;
	}
	reverse(res.begin(),res.end());
	while(res.size()>1&&res.back()==0)res.pop_back();
	return res;
}

int main() { 
	string s; 
	int k,r=0; 
	vector<int>v,c; 
	cin>>s; 
	cin>>k; 
	int n=s.length(); //计算字符串s的长度
	for(int i=n-1;i>=0;i--)v.push_back(s[i]-'0'); 
	c = div(v,k,r); 
	for(int i=c.size()-1;i>=0;i--)cout<<c[i]; 
	cout<<endl;
	cout<<r;
	return 0; //返回0
}

0 条评论

目前还没有评论...