Please suggest a method using Vectorization.

1 次查看(过去 30 天)
I want to do the following operation using vectorization technique of Matlab. I am a novice user of matlab. So please tell me how i can get the following operation done without using the FOR Loop.
x=[1 2 3 4 5 6 7 8 9 10 11 1 2];
for i=1:length(x)
x(i)=((-1)^i)*x(i);
end

采纳的回答

Matt Fig
Matt Fig 2012-10-13
编辑:Matt Fig 2012-10-13
Many ways to do it.
Here is one:
x = x.*(-1).^(1:length(x))
and here is another:
x(1:2:end) = -x(1:2:end)

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Data Type Identification 的更多信息

标签

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by