卡罗尔正在学习分数除法,但是她在判断答案是否正确方面有困难。请你帮她找出正确的答案。
输入
一行包含三个正整数 A ,B 和 K :表示要输出的分子,分母和小数位数。
保证 1 < A < B <103,1 < K <103.
输出
输出一行包含小数点后 K 位的小数。
请使用四舍五入规则将最后一位小数四舍五入。
输入样例1
1 2 2
输出样例1
0.50
输入样例2
10 99 5
输出样例2
0.10101
输入样例3
656 939 10
输出样例3
0.6986155485
输出样例4
1 3 20
输入样例4
0.33333333333333333333
- #include <bits/stdc++.h>
- using namespace std;
- #define int long long
- #define ios ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
- typedef pair<int,int> PII;
- const int N=2e6+10;
- int p[N];
- signed main()
- {
- ios;
- int a,b,c;
- cin>>a>>b>>c;
- int x=a,y=b;
- for (int i=1;i<=c+1;i++)
- {
- a *=10;
- p[i]=a/b;
- a %=b;
- }
- cout<<x/y<<".";
- if (p[c+1]>=5) p[c]++;
- int l=c;
- while (p[l]==10)
- {
- p[l]=0;
- p[l-1]++;
- l--;
- }
- for (int i=1;i<=c;i++) cout<<p[i];
- return 0;
- }