大整数与整数的除法运算,求商q,余数r。
思路就是小学的除法运算。
默认初始余数 r = 0。
第一步,r = r*10+bign[i]-‘0‘;
第二步求商,q = r/d;
第三步求余数,r = r%d;
#include"iostream" using namespace std; int main() { string str1,q; int b,r = 0; cin>>str1>>b; for(int i = 0; i < str1.length(); ++i) { r = r*10+str1[i]-‘0‘; q += r/b+‘0‘; r = r%b; } int i = 0; while(i < q.length() && q[0] == ‘0‘) q.erase(str2.begin());//去掉前导零 if(q.length() == 0) { cout<<0<<" "<<r; } else { cout<<q<<" "<<r; } return 0; }
原文:https://www.cnblogs.com/keep23456/p/12316402.html