题解 | 取近似值

#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")

全部评论

相关推荐

程序员小白条:太晚了,看别人找到实习了才投的话,自己本身就没啥准备,计划太晚咯,只能吞苦果子
点赞 评论 收藏
分享
07-11 10:56
门头沟学院 Java
码客明:大胆的说自己能实习6个月就行
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务