Info

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

I don't find the error in my function, (index exceed matrix dimensions)?

조회 수: 1 (최근 30일)
Fernando Alan Gomez
Fernando Alan Gomez 2017년 10월 1일
마감: MATLAB Answer Bot 2021년 8월 20일
function [ EAngle ] = Azimuth( A,B )
vDelta1 = B-A
angle1 = atan(vDelta(1)/vDelta(2)))
angle1 = abs(rad2deg(angle1))
vDelta2 = (B-A)
%
if vDelta2(1)>0 && vDelta2(2)>0
disp(angle1)
end
if vDelta2(1)>0 && vDelta2(2)<0
disp(180-angle1)
end
if vDelta2(1)<0 && vDelta2(2)<0
disp(180+angle1)
end
if vDelta2(1)<0 && vDelta2(2)>0
disp(360-angle1)
end
end
  댓글 수: 1
per isakson
per isakson 2017년 10월 1일
I tried your code and I get a different error message
>> Azimuth( pi/2, pi/3 )
Error: File: Azimuth.m Line: 3 Column: 39
Unbalanced or unexpected parenthesis or bracket.
  • How do you call the function?
  • Show us the full error message.

답변 (1개)

Ramnarayan Krishnamurthy
Ramnarayan Krishnamurthy 2017년 10월 4일
I am assuming that you are calling the function with vector arguments such as: Azimuth([10,20],[30,40]).
Now, there is an extra bracket in the 3rd line of the function. Change it to:
angle1 = atan(vDelta1(1)/vDelta1(2))
The function can now be called with vector inputs.

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

태그

Community Treasure Hunt

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

Start Hunting!

Translated by