MATLAB Answers

Translated by

このページのコンテンツは英語から自動翻訳されています。自動翻訳をオフにする場合は「<a class="turn_off_mt" href="#" onclick="window._kiq.push(['set', { 'event': 'Turn off MT' }]);">ここ</a>」をクリックしてください。

0

code for conditional statement

Esegboria Osarhemen さんによって質問されました 2019 年 3 月 9 日
最新アクティビティ Esegboria Osarhemen さんによって コメントされました 2019 年 3 月 9 日
If I have
a = [1:5], b = [1:5], c =[1:5], d =[1:5], e = zeros(1,4);
How can I write a code for the following condition?
I want to pick the first entries from a,b,c,d and put in 'e', that will be 1 1 1 1. I want the conition were no two entries are the same. If two entries a same, I want to replace it with another value from the array. So I want 'e' to be 1 2 3 4

  0 件のコメント

サインイン to comment.

1 件の回答

Rik
回答者: Rik
2019 年 3 月 9 日
 採用された回答

You can use code similar to that below. It is easier to put the input data in a cell arrray than to have different names for them. The code below does not check if it is possible to form a unique combination, nor is it guaranteed to find a combination if it is possible.
input_data=repmat({1:5},1,4);
output=zeros(size(input_data));
output(1)=input_data{1}(1);
for n=2:numel(input_data)
k=1;
while any(ismember(output(1:(n-1)),input_data{n}(k)))
k=k+1;
end
output(n)=input_data{n}(k);
end
disp(output)

  1 件のコメント

Esegboria Osarhemen 2019 年 3 月 9 日
Thanks, the actual data i want to apply the code to is in a cell

サインイン to comment.



Translated by