华师一附中OI组

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 979|回复: 2
打印 上一主题 下一主题

P1422 小玉家的电费

[复制链接]

51

主题

61

帖子

222

积分

实习版主

Rank: 7Rank: 7Rank: 7

积分
222
跳转到指定楼层
楼主
发表于 2018-6-8 15:45:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
https://www.luogu.org/problemnew/show/P1422

题目描述夏天到了,各家各户的用电量都增加了许多,相应的电费也交的更多了。小玉家今天收到了一份电费通知单。小玉看到上面写:据闽价电[2006]27号规定,月用电量在150千瓦时及以下部分按每千瓦时0.4463元执行,月用电量在151~400千瓦时的部分按每千瓦时0.4663元执行,月用电量在401千瓦时及以上部分按每千瓦时0.5663元执行;小玉想自己验证一下,电费通知单上应交电费的数目到底是否正确呢。请编写一个程序,已知用电总计,根据电价规定,计算出应交的电费应该是多少。
输入输出格式输入格式:
输入一个整数,表示用电总计(单位以千瓦时计),不超过10000。
输出格式:
输出一个数,保留到小数点后1位(单位以元计,保留到小数点后1位)。
输入输出样例输入样例#1: 267
输出样例#1: 121.5




回复

使用道具 举报

738

主题

1485

帖子

5420

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5420
沙发
发表于 2018-6-17 09:10:01 | 只看该作者
  1. #include<iostream>
  2. using namespace std;
  3. float x,y;
  4. int main()
  5. {
  6.    cin>>x;
  7.    if (x<=150) y=x*0.4463;
  8.    else if (x<=400) y=150*0.4463+(x-150)*0.4663;
  9.    else y=150*0.4463+250*0.4663+(x-400)*0.5663;
  10.    cout<<(int(y*10+0.5))/10.0;
  11.    return 0;
  12. }
复制代码
回复 支持 反对

使用道具 举报

738

主题

1485

帖子

5420

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5420
板凳
发表于 2019-4-6 19:45:57 | 只看该作者
输出保留1位小数也可以使用setoricion函数,格式如下
cout<<fixed<<setprecision(1)<<y;
需要前面包含头文件iomanip;也可以使用print("0.2f",&y);需要前面包含头文件cstdio;

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|服务支持:DZ动力|华师一附中OI组  

GMT+8, 2024-11-2 10:18 , Processed in 0.098519 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表