Question is Unknown :)

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

Depends on what is event...
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

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
Thks but I can't :(
What's the point of this? You already know answer, why not just display it?
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)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!