代码是:
function [w]= example1(v)
w=[];
for i= 1:length(v)
if v(i) ~=2
w= [w,0];
else
w=[w,10];
end
end
我想知道如何操作我的代码,以便它可以在不使用and loops或if语句的情况下完全适合一行(总共三行考虑功能行和结束)。 输入也是行向量。
答案 0 :(得分:1)
如果您只有单一条件v ~= 2
,您可以执行以下操作:
首先创建一个空的零数组,然后将{10}添加到v == 2
。
v = [1,2,1,1,2,1,2,2];
w = zeros(size(v)) + (v == 2) * 10;
请查看logical operations的文档以获取更多信息。