필터 지우기
필터 지우기

Info

이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.

How to customize the answer of Matlab in advance?

조회 수: 1 (최근 30일)
Pinar
Pinar 2013년 8월 2일
마감: MATLAB Answer Bot 2021년 8월 20일
Hello,
I have an input matrix like [a b c d e] at the start.
I order these elements in the result according to my codes but I want to predefine the first element of my result. Let's say I obtain a result such as ans = [b e d a c] but I want the first element of this matrix to be d for instance.
What should I write to achieve this kind of a result?
Thank you :)
  댓글 수: 5
Pinar
Pinar 2013년 8월 2일
This is a vehicle routing problem. A vehicle starts from city 2, then stops by city 4, 6, 7, 1, 5, 3 respectively and comes back again to city 2. I want that the vehicle starts its routing from city 1.
Azzi Abdelmalek
Azzi Abdelmalek 2013년 8월 2일
What are you expecting as result?

답변 (4개)

Iain
Iain 2013년 8월 2일
Its hard to see what you're trying to achieve, but this MIGHT be what you want to know
> data = [a b c d e];
> order_I_want = [4 3 2 1 5]; %
> data(order_I_want)
ans = [d c b a e]
> output = sort(data)
output = [e b c a d];
> order_I_want = [5 3 2 4 1]; %
> output(order_I_want)
ans = [d c b e a]
  댓글 수: 1
Iain
Iain 2013년 8월 2일
"This is a vehicle routing problem. A vehicle starts from city 2, then stops by city 4, 6, 7, 1, 5, 3 respectively and comes back again to city 2. I want that the vehicle starts its routing from city 1."
data = [2 4 6 7 1 5 3];
data = data([find(data==1):end 1:(find(data==1)-1)])

Azzi Abdelmalek
Azzi Abdelmalek 2013년 8월 2일
편집: Azzi Abdelmalek 2013년 8월 2일
a_input=[1 2 3 4 5]
a_output=[2 5 4 1 3]
a_output(a_output==4)=[];
a_output=[4 a_output]

Azzi Abdelmalek
Azzi Abdelmalek 2013년 8월 2일
a=[2 ,4, 6, 7, 1, 5, 3 ]
idx=find(a==1)
out=circshift(a, [0 -idx+1])

Andrei Bobrov
Andrei Bobrov 2013년 8월 2일
n = numel(a);
out = a(mod((2:n+1)-find(a == 1),n)+1);

이 질문은 마감되었습니다.

태그

Community Treasure Hunt

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

Start Hunting!

Translated by