题解 | #实现四舍五入#

实现四舍五入

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

  1. 第一种方法:先将小数分为正负两部分,正:将整数+1和小数+0.5比较,整数加1大则说明小数不够进1,返回整数,若小数+0.5较大,则说明小数够进1,返回整数加1.
using namespace std;

int main() {

    double d;
    cin >> d;

    // write your code here......
    int a;
    a=d;
    if(d>0)
    {
        if(d+0.5>=a+1)
            cout<<a+1;
        else
            cout<<a;
    }
    else
    {
        if(d-0.5<=a-1)
            cout<<a-1;
        else
            cout<<a;
    }

    return 0;
}
  1. 方法二:统一考虑正负,不再单独考虑,然后统一判断整数和小数之间的差是否大于0.5,若大于,则满足进位,否则不满足进位,然后根据正负进行处理
using namespace std;
#include<math.h>

int main() {

    double d;
    cin >> d;

    // write your code here......
    int a;
    a=d;
    if(fabs(a-d)>0.5)
    {
        cout<<(d>0?a+1:a-1)<<endl;
    }
    else
        cout<<a<<endl;

    return 0;
}
全部评论

相关推荐

挣K存W养DOG:入职送金条全球游,路过缅甸停一下🐔
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
23
2
分享
牛客网
牛客企业服务