题解 | 取近似值

#include <iostream>

using namespace std;

int main() {
    double input;
    while (cin >> input) { // 注意 while 处理多个 case
        double a = input * 10; 
        int temp = int(a) % 10; // 前两句的目的,提取小数点后的十分位数
	  // 根据十分位数是否大于等于5, 判断是否向上取整
	  // 默认强制类型转换是,截取整数部分。
        if (temp >= 5) {
            cout <<  int(input) + 1 << endl;
        } else {
            cout << int(input) << endl;
        }
    }

    return 0;
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

2024-12-18 15:11
哈尔滨理工大学 golang
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务