关于matlab分段函数的问题!!

y(t)=-3t^+5 t>=0
3t^2+5 t< 0
其中-10<=t<=10,且每个t的间隔是5

我是这么写的
for t=-10:0.5:10
if t>=0
y=-3*t^2+5;
else
y=3*t^2+5
end
end
y,t

可是显示不出t 运算结果总是有问题 求问!!!!!!

for t=-10:0.5:10
if t<0
t
y=3*t^2+5
else
t
y=-3*t^2+5
end
end
你的程序 只能得出 最后一次循环的 y和t值,要把“;”去掉,并在中途加上不带分号的“t”值才可以。追问

真的诶
不过为什么中途加上才可以???

追答

抱歉啊 现在才看见你的问题 其实很简单 y和t本身是个不变的符号 在电脑计算的时候 不变的符号每次循环只能代表一个值,只是每次循环的时候都代表一个不同的值,你把它写在最后,电脑就只会把最后一次的循环值显示出来。由于是在for循环外边,不会继续循环,因此只能给出一个值。如果放在中间,意思是让电脑显示出当前的循环值(不加“;”才能显示,加了就不显示了),由于是在循环内部,没执行一次循环便会显示一次y,t当前值。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-02
验证可以运行啊!只不过每一步都会显示出来,最后y和t是最后一次运行的结果!
lz可以使用数组,保存所有结果!
相似回答