题解 | #实现四舍五入#

实现四舍五入

https://www.nowcoder.com/practice/020a0cf673174d5795d97ae79cff59a0

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

int round1(double d);

int main() {

    double d;
    cin >> d;
    
    // write your code here......
        //  下一句等价于 int result = round(d);  
        int result = round1(d);
    cout << result << endl;
    return 0;
}
int round1(double d) {
    int result = int(d);
    // result为0时,d可能为0.0,0.3,-0.3...因此讨论 d != 0 时要考虑 result == 0 的情况
    if (result >= 0 && result + 0.5 <= d) {
        // 下一句等价于result = ceil(d);
        result += 1;
    } else if (result <= 0 && result - 0.5 >= d) {
        // 下一句等价于result = floor(d);
        result -= 1;
    }
    return result;
}    

全部评论

相关推荐

07-20 12:08
已编辑
江南大学 图像识别
机械牛马勇闯秋招:把校园经历里面做过的项目,大作业,课设,毕设啥的,扩写,写成具体的项目经历,自我评价缩写别占篇幅,不然这简历真没东西,初筛都过不了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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