Question is Unknown :)

1 Ansicht (letzte 30 Tage)
nsbd
nsbd am 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 Kommentare
Oleg Komarov
Oleg Komarov am 3 Jun. 2011
Depends on what is event...
nsbd
nsbd am 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

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Sean de Wolski
Sean de Wolski am 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 Kommentare
Sean de Wolski
Sean de Wolski am 3 Jun. 2011
What's the point of this? You already know answer, why not just display it?
nsbd
nsbd am 3 Jun. 2011
D is {1}.... I will use , set(handles.variable,'string',A{3});

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by