首页 > 其他 > 详细

HJ7-取近似值-四舍五入

时间:2021-04-09 23:38:24      阅读:18      评论:0      收藏:0      [点我收藏+]
#include<iostream>
using namespace std;



int main()
{
    float a;
    cin >> a;
    //    方法1:cout << (int) (a + 0.5);    //厉害
        //cout << ((int) (a + 0.5) > (int) a) ? (int)a + 1 : (int)a;
    /*    方法2:注意if的条件是大于,不要写成大于等于
    if((int)(a+0.5) > (int) a)
    {
        cout << (int)(a + 1);
    }
    else
    {
        cout << (int)a;
    }
    */
    /*错误的三目运算符:
    cout << ((int)(a + 0.5) > (int) a) ? (int)a + 1 : (int)a;
    */
    //正确的三目运算符:
    int out = 0;
    (int)(a + 0.5) > (int)a ? out = (int)(a + 1) : out = (int)a;
    cout << out;
    
     
    
    
    
    
}

float 到 int的强转是向下取整,直接舍弃小数部分。

所以把原来的数+0.5看取整后是否大于(严格大于)原来的数取整。

很妙。

 

 

 

#include<iostream>using namespace std;


int main(){    float a;    cin >> a;    //    方法1:cout << (int) (a + 0.5);    //厉害        //cout << ((int) (a + 0.5) > (int) a) ? (int)a + 1 : (int)a;    /*    方法2:注意if的条件是大于,不要写成大于等于    if((int)(a+0.5) > (int) a)    {        cout << (int)(a + 1);    }    else    {        cout << (int)a;    }    */    /*错误的三目运算符:    cout << ((int)(a + 0.5) > (int) a) ? (int)a + 1 : (int)a;    */    //正确的三目运算符:    int out = 0;    (int)(a + 0.5) > (int)a ? out = (int)(a + 1) : out = (int)a;    cout << out;                         }

HJ7-取近似值-四舍五入

原文:https://www.cnblogs.com/zlh-1024powr/p/14638983.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!