PAT B1017 -- A除以B

牛客網PAT乙級第七題,A除以B,題目描述大致如下:

計算A/B,輸入A,B,以空格分隔,A是不超過1000位的正整數,B是1位正整數,輸出餘數Q和商R,空格分離,使得A=B*Q+R成立。


題目要求的輸入輸出如下:



代碼如下:

#include <iostream>
#include <string>

using namespace std;

int main()
{
	string a, q;
	int b, r;
	while (cin >> a >> b)
	{
		int num = a[0] - 48;
		if (num >= b)
		{
			q.push_back(num / b + 48);
		}
		for (int i = 1; i < a.size(); i++)
		{
			r = num%b;
			num = r * 10 + a[i] - 48;
			q.push_back(num / b + 48);
		}
		r = num%b;
		if (a.size() == 1 && a[0] - 48 < b)
		{
			cout << "0 " << a[0] - 48 << endl;
		}
		else
		{
			cout << q << " " << r << endl;
		}
	}
    return 0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章