ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

大数相除求商和余数(高精度除法)

2022-01-14 15:00:25  阅读:161  来源: 互联网

标签:求商 int back 相除 -- vector 余数 include size


满足所有数据为正整数,第二个数据在int范围并且比第一个数字小

需要知识点:vector

代码:

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;

vector<int> div(vector<int> &a,int b,int &r)
{
	vector<int> c;
	r=0;
	for(int i=a.size()-1; i>=0; i--)
	{
		r=r*10+a[i];
		c.push_back(r/b);
		r=r%b;
	}
	reverse(c.begin(),c.end());// 把数据顺序反过来
	while(c.size()>1&&c.back()==0)c.pop_back();// 去前面的零
	return c;
}

int main()
{
	int b;
	string A;
	vector<int> a;
	cin>>A>>b;
	for(int i=A.size()-1; i>=0; i--)
		a.push_back(A[i]-'0');
	int r; //余数
	vector<int> c=div(a,b,r);
	for(int i=c.size()-1; i>=0; i--)
		cout<<c[i];
	cout<<endl<<r;
	return 0;
}

标签:求商,int,back,相除,--,vector,余数,include,size
来源: https://blog.csdn.net/weixin_66182206/article/details/122494494

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有