登录论坛

查看完整版本 : [求助]matlab中if语句如何写这样的一段程序?


snowhydro
2008-06-11, 17:32
一个数组a=[1 2 3 6 54 2 1 52 12 ]
如果a小于10,则,b=a+2;
如果a大于10,则,b=a/2,
b是一个新的推算出来的数组。
然后在b数组中,每3个就求和,得到一个新的数组C。

请问各位老师,如何把这个程序用matlab写出来?非常感谢~!

watcher
2008-06-12, 16:42
b=(a<10).*(a+2)+(a>10)/2.*a+(a==0).*a;
c=sum(reshape(b,3,size(a,2)/3),1);%请保证a的列数是3的整数倍

snowhydro
2008-06-16, 15:47
非常感谢~!