编程题 7-11 分段计算居民水费【PAT】
题目
为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费 y y y(元)与月用水量 x x x(吨)相关:当 x x x 不超过 15 15 15 吨时, y = 4 x / 3 y=4x/3 y=4x/3;超过后, y = 2.5 x − 17.5 y=2.5x−17.5 y=2.5x−17.5。请编写程序实现水费的计算。
输入格式
输入在一行中给出非负实数 x x x。
输出格式
在一行输出应交的水费,精确到小数点后 2 2 2 位。
输入样例1
12
输出样例1
16.00
输入样例2
16
输出样例2
22.50
题解
解题思路
根据输入的 x x x 用水量来判断,判断 x x x 如果大于 15 15 15,使用给相应的式子计算: y = 2.5 x − 17.5 y=2.5x−17.5 y=2.5x−17.5;同理如果 x x x 小于 15 15 15,使用给的相应式子就算: y = 4 x / 3 y=4x/3 y=4x/3,输出(控制浮点数精确度可用 p r i n t f ( ) printf() printf() 函数和 s e t p r e c i s i o n ( ) setprecision() setprecision() 函数)即可
完整代码
#include <iostream>
using namespace std;
int main(void)
{
float x, sum = 0;
cout << "请输入一个非负实数:"; // 提交时注释此行
cin >> x;
if (x > 15)
sum = (2.5 * x) - 17.5;
else
sum = (4 * x) / 3;
cout.precision(2);
cout << fixed << sum << endl;
return 0;
}
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)