文章

21

粉丝

0

获赞

19

访问

4.8k

头像
特别的除法 题解:
P1796 四川大学2024年机试题
发布于2026年3月27日 16:20
阅读数 182

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

int main(){
	int a, b, c;
	int integer = 0, rem = 0;
	vector<int> num;
	
	cin >> a >> b >> c;
	num.clear();
	num.resize(c, 0);
	// 整数部分
	integer = a / b; 
	cout << integer << '.';
	
	rem = a % b; // 余数
		
	for(int i = 0; i < c; i++){
		rem *= 10;
		int x = rem / b;
		rem %= b;
		num[i] = x;
		
		// 四舍五入
		if(i == c - 1 && rem * 10 / b >= 5){
			for(int j = c - 1; j > 0; j--){
				if(num[j] + 1 == 10)
					num[j] = 0;
				else{
					num[j] += 1;
					break;
				}
			}
		}
			
	}
	for(int i = 0; i < c; i++)
		cout << num[i];
	cout << endl;

	return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发