【GESP】C++二级练习BCQM3051,浮点数余数
我理解为GESP二级知识点:数据类型转换-隐式数据类型转换题目。
BCQM3051
题目要求
描述
计算两个双精度浮点数a和b的相除的余数,a和b都是双精度浮点数。这里余数(r)的定义是a=k×b+r,其中k是整数,0 ≤ r < b。
输入
输入仅一行,包括两个双精度浮点数a和b。
输出
输出也仅一行,a÷b的余数。
输入样例
73.263 0.9973
输出样例
0.4601
题目分析
根据题目定义的浮点数余数计算规则,只需要根据输入先求出“商”k,然后相减即可得到余数r。这里,k只需要用a/b,然后取整即可,这就是隐式的数据类型转换,浮点数取整。
代码参考
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
using namespace std;
int main() {
double a, b;
cin >> a >> b;
int ans;
ans = a / b;
double r;
r = a - ans * b;
cout << r;
return 0;
}
所有代码已上传至Github:https://github.com/lihongzheshuai/yummy-code
本文由作者按照 CC BY 4.0 进行授权