index out of bounds because numel(x)=1.
10 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Kalyne
le 17 Juin 2013
Commenté : Walter Roberson
le 4 Juil 2016
I am trying to create a loop to call different variables at each time but I am getting this message "index out of bounds because numel(x)=1."
What am I doing wrong?
> x(1)=50;
>> x(2)=45;
>> x(3)=89;
>> x(4)=88;
>> for i=1:1:4
x=x(i);
end
??? Attempted to access x(2); index out of bounds
because numel(x)=1.
3 commentaires
Mevlüt Yalaz
le 4 Juil 2016
you have to initialize first the dimension of x. Then you get what you want
Walter Roberson
le 4 Juil 2016
No, that is incorrect, Mevlüt Yalaz . The problem is that one value is extracted from x and that one value is used to overwrite all of x.
Réponse acceptée
per isakson
le 17 Juin 2013
Modifié(e) : per isakson
le 17 Juin 2013
This script
x(1)=50;
x(2)=45;
x(3)=89;
x(4)=88;
disp(x)
for ii=1:1:4
x=x(ii);
disp(x)
end
returns
50 45 89 88
50
Attempted to access x(2); index out of bounds because numel(x)=1.
>>
The vector x is overwritten by the first value of x
0 commentaires
Plus de réponses (1)
Kalyne
le 17 Juin 2013
Modifié(e) : Walter Roberson
le 4 Juil 2016
2 commentaires
per isakson
le 17 Juin 2013
Your text would be easier to read if you format/markup it; use the {}Code button
clear; run('..\psg_load_libraries'); addpath('..');
clear problem_statement;
problem_statement{1}= textread('problem_DEA_Hospital.txt' ...
,'%s', 'whitespace', '');
problem_statement{2}= textread('problem_DEA_Hospital2.txt' ...
,'%s', 'whitespace', '');
for ii=1:1:2
problem_statement=problem_statement{ii};
problem_statement=problem_statement{ii};
fprintf('Problem statement:\n%s', problem_statement);
end
Based on this code, it is not possible (for me) to understand what you want to do. The code says that you want to read two files and write something. Maybe the files each contains a single line.
Walter Roberson
le 4 Juil 2016
Your line
problem_statement=problem_statement{ii};
takes the ii'th element of problem_statement, and writes that over top of all of problem_statement, so afterwards problem_statement is probably going to be a string instead of a cell array of strings.
Voir également
Catégories
En savoir plus sur Search Path dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!