1558 - 分段函数0

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

 0<= x <2y= -x+2.5

 2<= x <4y=2-1.5(x-3)(x-3)

 4<= x <6y=x/2-1.5

题目输入

输入第一行为整数m表示样例数,接下来有m行每行一个整数x。

题目输出

输出m行分别表示对应的y值,保留小数点后一位小数。

输入/输出样例

题目输入

2
1
3

题目输出

y=1.5
y=2.0

C语言解答

#include <stdio.h>
int main ()
{
	double x,y=0,m;
	scanf("%lf",&m);
	while(m--)
	{
		scanf("%lf",&x);
		if(x>=0 && x<2)
		{
			y=2.5-x;
		}
		if(x>=2 && x<4)
		{
			y=2-1.5*(x-3)*(x-3);
		}
		if(x>=4 && x<6)
		{
			y=x/2-1.5;
		}
		printf("y=%.1f\n",y);
	}

}

C++解答

#include<iostream>
#include<iomanip>
using namespace std;

int x,m,i;
float y;
int main()
{
	cin>>m;
	i=0;
	while(i<m)
	{
		cin>>x;
		if(x>=0&&x<2) y=-x+2.5;
		else if(x<4) y=2-1.5*(x-3)*(x-3);
		else if(x<6) y=x/2-1.5;
		cout<<"y="<<fixed<<setprecision(1)<<y<<endl;
		i++;
	}
	return 0;
}
时间限制 1 秒
内存限制 32 MB
讨论 统计
上一题 下一题