Solution for getting only one variable equal to 1 while other two variables 0.

I would like to give input variables as follows: For optimization purpose only one variable is to be given value equal to 1 while other two variables must be given 0. For example, if x(1)=1 then x(2) and x(3) must be equal to 0. Similarly, if x(2)=1, then x(1)=x(3)=0. No two variables should be equal to 1 at a time. Can anybody suggest me 'for loop' or 'if-else loop' for this problem. Thanks in anticipation.
function y=myfitness(x)
y= x(1)+x(2)+x(3);
end

 采纳的回答

E.g., if I understand your request:
n = 3; % number of elements to use
for k=1:n
x = zeros(1,n);
x(k) = 1;
% You put code here to use x
end

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by