how to make loop
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have asked the question as http://www.mathworks.com/matlabcentral/answers/3748-how-to-make-a-loop-for-end. Matt fig helped me this: x=[1.6,2.7,3.5,4.4,5.2,6.8,7.9,8.4,9.1,10.2]; N = length(x); % The largest number. Change to whatever... a = 1; % The starting point. Change to 3,5... whatever S = 3; n = zeros(1,floor((N-a)/(S))+1); % Pre-allocate the array... for ii = 1:length(n) n(ii) = x(S*(ii)+(a-S)); end Now,I want to make a new loop for S (S=1:length(x)),that gets the value of S from 1 to length(x).So I can get every value of n when the S is different. How are the codes about?
1 commentaire
Andrew Newell
le 22 Mar 2011
@Tian, it would really help those of us who answer your questions if you formatted your code: one line per command, indent two spaces.
Réponse acceptée
Matt Fig
le 22 Mar 2011
L = length(x)
N = L; % The largest number. Change to whatever...
a = 3; % The starting point. Change to 3,5... whatever
T = cell(1,L); % Store everything in a cell array.
for jj = 1:L
S = jj;
n = zeros(1,floor((N-a)/(S))+1); % Pre-allocate the array...
for ii = 1:length(n)
n(ii) = x(S*(ii)+(a-S));
end
T{jj} = n;
end
T{:}
You should go back and format your question. Is there a particular reason why you want to do this with loops?
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Graphics Performance dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!