MATLAB Answers

Question is Unknown :)

1 view (last 30 days)
nsbd
nsbd on 3 Jun 2011
Hi guys.
"
D=importdata('data 1.xls');
% (D= '11'
'12'
'13'
'14'
'15'
'16'
....
...
..
. )
if answer == D{1}
%event
elseif answer == D{2}
%event
elseif answer == D{3}
%event
elseif answer == D{4}
%event
...
...
elseif anser == D{n}
%event
end
hard to write by hand is too long
how do i write this shorter? or did can be done?
  2 Comments
nsbd
nsbd on 3 Jun 2011
anything....Sample;
if answer == D{1}
disp(A{1})
elseif answer == D{2}
disp(A{2})
.....
...
elseif answer == D{n}
disp(A{n})
end

Sign in to comment.

Accepted Answer

Sean de Wolski
Sean de Wolski on 3 Jun 2011
Define your event to take in the index, e.g:
function event(val,idx);
%do stuff with val,idx
end
Then call it with:
idx = find(cellfun(@(c)c==answer,D),1,'first');
event(D{idx},idx);
EDIT per comment:
idx = find(cellfun(@(c)c==answer,D),1,'first');
disp(D{idx})
  3 Comments
nsbd
nsbd on 3 Jun 2011
D is {1}.... I will use , set(handles.variable,'string',A{3});

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by