Convert Cartesian to Polar using custom functions

7 次查看(过去 30 天)
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 个评论
Mahdi
Mahdi 2013-4-3
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
Ashton Thorsen 2013-4-3
My intention was to say "if X and Y are submitted then do this" Which I think I'm channeling to much pHp logic into this! I want the for loop to know to run it however many points there are.

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by