Here's the script:
function [x, y] = XYFromAngles(alpha, beta, AB)
[~, b]=triangle(alpha, beta, AB);
x=b*cos(alpha);
y=b*sin(alpha);
disp('[x, y]=');
disp([x, y]);
end
And the scrip for the function triangle:
function [a,b]=triangle(alpha,beta,c)
alpha=alpha/180*pi;
beta=beta/180*pi;
gamma=pi-alpha-beta;
a=c/sin(gamma)*sin(alpha);
b=c/sin(gamma)*sin(beta);
end
Then it gives the error:
Not enough input arguments.
Error in XYFromAngles (line 2)
[~, b]=triangle(alpha, beta, AB);
I have entered all of the variables that I've defined but it doesn't compute it.

3 commentaires

mbvoyager
mbvoyager le 11 Sep 2018
Modifié(e) : mbvoyager le 11 Sep 2018
When you are calling
[~, b]=triangle(alpha, beta, AB);
are alpha, beta and AB defined?
If I create those 2 functions and call triangle, I get some results:
>>XYFromAngles(1,2,3)
[x, y]=
1.0809 1.6834
ans =
1.0809
also, a question just for understanding are the functions XYFromAngles and triangle in separate files or in one file?
I defined alpha, beta and AB outside of running the command which I suspect is what caused my error. Does it only work if you enter it into the
XYFromAngles(alpha, beta, AB)
And yes they are in separate files.
Stephen23
Stephen23 le 11 Sep 2018
Modifié(e) : Stephen23 le 11 Sep 2018
"Does it only work if you enter it into the..."
Yes.

Connectez-vous pour commenter.

 Réponse acceptée

Stephen23
Stephen23 le 11 Sep 2018
Modifié(e) : Stephen23 le 11 Sep 2018
I don't get any error when I call your function:
>> XYFromAngles(1,1,1)
[x, y]=
0.27019 0.42080
ans = 0.27019
>>
I suspect that you are clicking on the big green "Run" button, without providing any input values to the function. Ignore that big green "Run" button, it does not help you.

2 commentaires

I had defined alpha, beta and AB by typing in the command window
alpha=...; beta=...; AB=...;
Is this way not correct?
Stephen23
Stephen23 le 11 Sep 2018
Modifié(e) : Stephen23 le 11 Sep 2018
"Is this way not correct?"
Its fine as a start... but you still need to provide those variables as inputs to the function:
XYFromAngles(alpha,beta,AB)
You defined the function to have three inputs, so you need to call it with three inputs. Note that names of the input arguments are totally unrelated to what happens inside that function (in case you thought that these are connected somehow).

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Produits

Version

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by