用matlab编写M文件,计算函数值

当x<1时, f(x)=x
当1<x<10时,f(x)=2x
当x> 或=10时,f(x)=3x-11

不用楼上三位同学的那么复杂:

x=0:0.1:15;

fx=x.*(x<1)+2*x.*(x>=1&x<10)+(3*x-11).*(x>=10)

plot(x,fx) 

图形见:

http://hi.baidu.com/chemical%5Fengineering/album/item/cfd2f8dc78cc6e84cc116685.html

温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-06-13
%函数文件,保存为f.m
function y = f(x)
n = length(x);
for k=1:n
if x(k)<1
y(k)=x(k);
elseif x(k)>=10
y(k)=3*x(k)-11;
elseif 1<x(k)<10
y(k)=2*x(k);
end
end

%在matlab中执行的命令
x=-20:0.1:20;
y=f(x);
plot(x,y,'-r');
第2个回答  推荐于2017-10-07
n=100;
for x=1:n;
if x<1
f(x)=x;
else if x<10
f(x)=2*x;
else
f(x)=3*x-11;
end
end
plot (x,'b');
第3个回答  2009-06-13
for x=-5:20;
if x<1
y=x;
end
if <=x<10
y=2*x;
end
if x>10
y=3*x-11;
end
end
plot (x,y,'r');
第4个回答  2009-06-14
a