doubt to store a array values in for loop ?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Dear sir i have doubt to store a array values in for loop. I will explain my code Program:
a=[1 2 3 4 5 6 7 8 9 10]
for i=1:3:10
k(i)=a(i)
end
I need store the values in k variable. i am getting answer k= 1 0 0 3 0 0 6 0 0 9 0 but i need answer like that k=1 3 6 9 is it p[ossible to write the answer like that .
please help me.
1 Kommentar
Stephen23
am 8 Jun. 2016
Bearbeitet: Stephen23
am 8 Jun. 2016
MATLAB is a high-level language, so why bother with an ugly loop as if it was just C or something similar? You can do it much neater, faster, and much more efficiently using basic MATLAB indexing:
>> a = [1,2,3,4,5,6,7,8,9,10];
>> b = a(1:3:10)
b =
1 4 7 10
>> c = a(1:2:10)
b =
1 3 5 7 9
Note that I gave two sequences: this is because your output sequence does not have an equal step size (it is not an arithmetic progression), so you cannot generate it using any method that assumes a constant step size (in particular the colon operator). You can check the step size of your solution:
>> diff([1,3,6,9])
ans =
2 3 3
Antworten (2)
UNK
am 8 Jun. 2016
Hi Ravi, If you have a row vector as a = 1:1:10 and you want only some entries as a new vector you can do b = a([1:3:10])
a = 1:1:10
b = a([1:3:10])
0 Kommentare
Azzi Abdelmalek
am 8 Jun. 2016
a=[1 2 3 4 5 6 7 8 9 10]
ii=0
for i=1:3:10
ii=ii+1;
k(ii)=a(i)
end
0 Kommentare
Siehe auch
Kategorien
Mehr zu Logical finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!