Convert Cartesian to Polar using custom functions
Show older comments
Hello! I'm having trouble figuring out how to convert cartesian to polar using only custom functions. I'm extremely new to MATLAB and I haven't been able to find a turotial or help guide online that I can make sense of.
Basically, the user needs to be able to submit an array full of however many points they want, the function then takes that array and converts each point into polar coordinates.
So far I have this:
function [homework5] = Cartesian(X,Y)
M = size(X,1)
for N = M;
if X,Y;
r=sqrt(X^2+Y^2)
theta=atan(Y/X)
else
disp('input incorrect')
end
if r > 10
disp('Far from Origin')
else
disp('Close to Origin')
end
end
It converts one pair just fine but when more than one is entered it doesn't work. I know it's a problem with my for loop and M variable but I just don't know what.
4 Comments
Walter Roberson
on 3 Apr 2013
What is the intention of our line:
if X,Y;
?
Where do you use N ?
Matt
on 3 Apr 2013
For N=1:M
Mahdi
on 3 Apr 2013
I also suggest using 'dot' operators when multiplying and squaring, because you want it to be scalar multiplication, and not matrix multiplication. For example, use
r=sqrt(X.^2+Y.^2)
theta=atan(Y./X)
Ashton Thorsen
on 3 Apr 2013
Answers (0)
Categories
Find more on Logical in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!