PAT B1017 A除以B(C++)

PAT甲级目录 | PAT乙级目录

题目描述

B1017 A除以B

易错点:

  • 输出的时候要去掉前导零
  • 被除数为 0 也要正确输出

也许陌生的知识点

  • y = to_string(x)
    • 将某数转换成 string 类型
  • Q.erase(Q.begin())
    • 抹去字符串第一个字符

代码示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <string>
#include <iostream>
using namespace std;
int main(){
string A, Q;
int B, R = 0;
cin >> A >> B;
for(int i = 0; i < A.length(); i++){
R = R * 10 + (int)(A[i] - '0');
Q = Q + to_string(R / B);
R = R % B;
}
while(Q[0] == '0' && Q.length() > 1) Q.erase(Q.begin());
cout << Q << ' ' << to_string(R);
return 0;
}