百练8216-分段函数-2016正式A题

本文介绍了一个分段函数的计算程序,并详细解释了如何使用C++进行精确的小数位数控制,确保输出格式符合特定要求。

百练

 / 

2016计算机学科夏令营上机考试

 已经结束
 

A:分段函数

总时间限制: 
1000ms
内存限制: 
65536kB
描述

编写程序,计算下列分段函数y=f(x)的值。 

y=-x+2.5; 0 <= x < 5 

y=2-1.5(x-3)(x-3); 5 <= x < 10 

y=x/2-1.5; 10 <= x < 20

输入
一个浮点数N,0 <= N < 20
输出
输出N对应的分段函数值:f(N)。结果保留到小数点后三位。
样例输入
1.0
样例输出
1.500


 1 #include <iostream>
 2 #include <stdio.h>
 3 #include <string>
 4 
 5 using namespace std;
 6 
 7 int main()  {
 8     double a;
 9     while (cin >> a)    {
10         double y;
11         if(a >= 0.0 && a < 5.0) {
12             y = -1*a + 2.5;
13         }
14         else if(a >= 5.0 && a < 10) {
15             y = 2-1.5*(a-3)*(a-3);
16         }
17         else if (a >= 10.0 && a < 20)   {
18             y  = a / 2 - 1.5;
19         }
20         printf("%.3f\n", y);
21     }
22     return 0;
23 
24 }

 

提交网址:http://wbgzs.openjudge.cn/ex20170204/1/

主要注意输出格式。

参考百度知道:https://zhidao.baidu.com/question/230218201.html

控制小数位数就是通过输出格式说明符来规定的。

举例说明如下:

1
2
3
4
5
6
float  f1=3.1415926;
float  f2=1234.1415926;
float  f3=124.1;
printf ( "%3.4f" , f1);   // 输出结果为:_ _ 3.1416 ( _ 表示空格)
printf ( "%3.4f" , f2);   // 输出结果为:1234.1416
printf ( "%3.4f" , f3);   // 输出结果为:124.1000

printf("%3.4f", f);中的3是控制f的整数部分按3位的固定位宽输出;4是按四舍五入的准则保留4位小数。

注:如果整数部分不足3位,则在前面补空格,超过3位,则按实际位数输出;如果小数部分不足4,则在后面补0

转载于:https://www.cnblogs.com/QingHuan/p/6992248.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值