could anyone help me how to reduce the circshift to half of it.

1 view (last 30 days)
Prabha Kumaresan
Prabha Kumaresan on 16 Aug 2018
Commented: Prabha Kumaresan on 16 Aug 2018
By using circshift i am getting 12 times what can be done inorder to reduce 12 to 6(which means half of it). Could anyone please help me on this.
  4 Comments
Stephen23
Stephen23 on 16 Aug 2018
@Prabha Kumaresan: this is clearly related to your earlier questions of the last two days. Rather than showing us broken code with no comments or help or explanation, it would actually make things a lots easier if you explained what you are trying to achieve. Forget about your code attempts, they don't help us and are possibly not a very good solution anyway. Show us a simple example, complete with input and output arrays, so that we can understand what you want to achieve.

Sign in to comment.

Accepted Answer

Rik
Rik on 16 Aug 2018
Just change the for-loop header:
A_master=1:12;
for k=1:2:numel(A_master)%[1 3 5 7 9 11] for 12, [1 3 5] for 6, etc
fprintf('\nPossibilities %02d:\n',k);
A=circshift(A_master,1-k,2);
B=0;
while ~isempty(A)
B=B+1;
if B>numel(A)
ind=1;
B=1;%reset B
else
ind=[1 (numel(A)-B+2):numel(A) ];
end
C=A(ind)
A(ind)=[];
end
end

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