#include "math.h"
int main(int argc,char *argv[]){
double x,y
printf("Input x(R:)...\nx=")
scanf("%lf",&x)
if(x<5)
y=-x+3.5
else if(x>=5 && x<10)
y=20-3.5*pow(x+3,7)//这里看着像7,是几就把7改成几
else
y=-3.5+sin(x)
printf("y = %g\t(x==%g)\n",y,x)
return 0
}
运行样例:
#include <iostream>#include <cmath>
int main()
{
using namespace std
cout<<"请输入x的值(x>10):"
double x,y
cin>>x
int n
if(x>=10&&x<20)
n=1
else if(x>=20&&x<30)
n=2
else if(x>=30&&x<40)
n=3
else if(x>=40&&x<50)
n=4
else if(x>=50)
n=5
switch(n)
{
case 1:
y=log10(x)
break
case 2:
y=log10(x)/log10(3)
break
case 3:
y=cos(x)
break
case 4:
y=pow(x,5)
break
case 5:
y=1.0/tan(x)
break
default:
cout<<"\n你输入的值不在取值范围内,再见!\n"
break
}
if(x>10)
cout<<"\n本函数的y值为:"<<y<<"。*^o^*\n"
return 0
}
建立一个函数,对不同的区间进行不同的运算规则即可,可使用if-else 实现,如实现下图中的分段函数的自定义函数代码:
double f(double x)
{
double fx = 0.0
if (x<=0)fx = 3*x+5
else if (x <= 1)fx = x+5
else fx = -2*x+8
return fx
}
在需要计算该分段函数的地方调用即可,其他分段函数实现类似。