问题标题: 酷町堂2162这道题怎么写

2
0

2
已采纳
李牧之
李牧之
新手光能
新手光能
    d=x-(int)x;//x是价格和,d是小数部分 
    if(d>=0.1&&d<0.5){//判断小数部分是0~4还是5~9 
        cout<<(int)x<<".0";
    }
    else if(d>=0.5&&d<=0.9){
        cout<<(int)x<<".5";
    }
    else cout<<x;

 

1
1
孙天博
孙天博
新手守护
新手守护
    q+=a+b+c;
    w=q;
    r=w;
    e=(q-(double)w);
    if(e>=0.5)
    cout<<w<<".5";//
    else
    cout<<w<<".0";
1
阮俊雄
阮俊雄
新手光能
新手光能

这个问题不太复杂,可以先将总价算出,然后利用强制转换看看是不是大于原价。如果大于,则-0.5;如果等于,就直接输出。

1
王梓澳
王梓澳
中级光能
中级光能

如果

int(z)%10<=4
//z=(m+n+h)*10

那就输出:

printf ("%.0f.0",m+n+h);

否则

那就输出:

cout<<int(jc)+0.5;

注:头文件要两个:

#include <iostream>
#include <cstdio>

 

1
邵逸儒
邵逸儒
中级天翼
中级天翼

老师您好!

1.定义double型变量 a,b,c,d,n,k;

2.输入a,b,c;

3.d=(a+b+c)*10;

4.把d赋给k;

5.d=(int)d%10;

6.输出

if(d>=0&&d<=4) printf("%.1f",(int)k/10+0.0);
    else if(d>=5&&d<=9) printf("%.1f",(int)k/10+0.5);

 

邵逸儒在2018-01-13 19:26:29追加了内容

头文件

#include<iostream>
#include<cstdio>

 

1
何文轩
何文轩
高级守护
高级守护

输入的数肯定是一个浮点数,我们可以定义一个整形的数n,把浮点数赋值给n,浮点数的整数部分就出来了,再进行判断。看两个数相减是大于0.5还是小于0.5

1
马佳滢
马佳滢
新手天翼
新手天翼

谭润家 你好!

1.定义双精度实数m,n,b,c(double);

2.输入m,n,b;

3.把m+n+b的值赋给c;

c=m+n+b;

4.判断c-int型的c是不是比0.5小;

if(c-(int)c<0.5)

如果判断成立,把(int)c的值赋给c,输出c;

c=(int)c;
cout<<c<<".0";

5.否则(判断不成立),把(int)c的值赋给c再加0.5,输出c;

else{
        c=(int)c+0.5;
        cout<<c;
    }

 

0
0
我要回答