题目1062:分段函数

来源:互联网 发布:淘宝零点抢购怎么抢 编辑:程序博客网 时间:2024/05/29 16:26
题目1062:分段函数

时间限制:1 秒

内存限制:32 兆

特殊判题:

提交:4136

解决:2454

题目描述:

编写程序,计算下列分段函数y=f(x)的值。
y=-x+2.5; 0<=x<2
y=2-1.5(x-3)(x-3); 2<=x<4
y=x/2-1.5; 4<=x<6

输入:

一个浮点数N

输出:

测试数据可能有多组,对于每一组数据,
输出N对应的分段函数值:f(N)。结果保留三位小数

样例输入:
1
样例输出:
1.500
来源:
2001年清华大学计算机研究生机试真题(第I套)
答疑:
解题遇到问题?分享解题心得?讨论本题请访问:http://t.jobdu.com/thread-7786-1-1.html

思路:没啥想说的,很简单,按照题目要求来。
#include<iostream>#include<iomanip>using namespace std;int main(){    double x;    while(cin>>x)    {        if(x>=0 && x<2)        cout<<fixed<<setprecision(3)<<double(-x+2.5)<<endl;    else        if(x>=2 && x<4)        cout<<fixed<<setprecision(3)<<double(2-1.5*(x-3)*(x-3))<<endl;    else        if(x>=4 && x<6)        cout<<fixed<<setprecision(3)<<double(x/2-1.5)<<endl;    }    return 0;}

(2)来个c语言版本的
#include <stdio.h>int main(){    float x,y;    while(scanf("%f",&x) != EOF){        if(x >= 0 && x < 2){            y = -x + 2.5;        }        else if(2 <= x && x < 4){            y = 2 - 1.5*(x - 3)*(x - 3);        }        else if(4 <= x && x < 6){            y = x / 2 - 1.5;        }        printf("%.3f\n",y);    }    return 0;}


原创粉丝点击