2014-04-17 5 views
1

벡터를 함수의 인수에 넣는 방법을 알고 싶습니다. 사용자가 x=[x1 x2] 벡터와 계수 a, b을 입력하게하십시오. 우리의 작업은 예를 들어 선형 함수 a*x+b의 그래프를 그리는 것입니다. 여기에서 x=[x1 x2]입니다. 나는 처음이 다음과 같이 보일 것이라고 생각했다 :벡터를 함수의 인수로 넣는 방법은 무엇입니까?

function L = linear([x1 x2], a, b) 
  .... 
  y = [x1 x2] * a + b 
  plot ([x1 x2], y) 

불행히도, 그것은 모두 잘못되었다. Matlab은 여전히 ​​ERROR를보고합니다. 도움. 감사합니다

+0

이 오류는 쉽게 볼 수 있지만 나중에 질문 할 때 실제로 오류가 무엇인지 알면 도움이됩니다. –

답변

1

Matlab에서는 단일 입력에 두 개의 변수를 지정할 수 없습니다. 여기에는 두 가지 옵션이 있습니다. 첫째, 당신은 분리 인수로 X1과 X2를 할당 할 수

function L = linear(x,a,b) 
x1 = x(1); 
x2 = x(2); 

또 다른 주 - 코드 :

function L = linear(x1,x2,a,b)

둘째, 당신은 하나의 입력 및 인덱스 밖으로 당신이 개 변수로 유지할 수 있습니다 당신은 오직 [x1 x2]만을 사용하고 절대로 그들을 분리하지 않는다는 것을 보여줍니다. 위의 옵션 2에서와 같이 x1x2을 정의 할 필요가 없습니다. 혼동은 호출 함수에서 별도로 정의했기 때문일 수 있습니다. 이 경우에 함수를 호출 할 수 있습니다 (정의하지 않음). 원래는 다음과 같습니다. linear([x1 x2],a,b);

관련 문제