modify data stream by equating odd position=0

Dear sir/Ma'am
I have a data x=[1 2 3 4 5.........k]. Now I want a new data y=[0 2 0 4 0 6........k] from 'x' i.e, in new data stream the odd position's value will be '0' of 'x',rest values will be remain same as 'x'.and also want z= new data stream the even position's value will be '0' of 'x'.
What will be the matlab code?

 Réponse acceptée

Ameer Hamza
Ameer Hamza le 11 Oct 2020
Modifié(e) : Ameer Hamza le 11 Oct 2020
k = 10;
x = 1:k;
y = x;
y(1:2:end) = 0;
z = x;
z(2:2:end) = 0;

5 commentaires

Soumili Sen
Soumili Sen le 11 Oct 2020
woow.. it's awsome. Thnks a lot. And thanks for suggetion.
Ameer Hamza
Ameer Hamza le 11 Oct 2020
I am glad to be of help!
Soumili Sen
Soumili Sen le 1 Déc 2020
Modifié(e) : Soumili Sen le 1 Déc 2020
I have one query about this method
k = 10;
x = 1:k;
y = x;
y(1:2:end) = 0;
p=h1*y+80;
Here I don't want to use 2 lines to assign the value of y in this same logic. I want to get same value of y,within the expression of p(without writting previous two line).IS it possible?
Thanks in advance
Ameer Hamza
Ameer Hamza le 1 Déc 2020
Modifié(e) : Ameer Hamza le 1 Déc 2020
Following shows one way to decrease the number of lines
k = 10;
x = 1:k;
p = h1*x.*((-1).^(1:k)>0)+80
But it is obviously more complicated and less readible.
Soumili Sen
Soumili Sen le 1 Déc 2020
ok,thanks

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by