I have defined a function of three variables
function a = test(A,B,C)
a = A.*power(B,0.3).*power(C,0.7);
end
Now I want to define a function test2 that is a function test2 that is a single variable function of C with A=1 and B=10. Please advise.

 Réponse acceptée

Star Strider
Star Strider le 13 Mai 2018

0 votes

Try this:
test2 = @(C) test(1,10,C)

2 commentaires

alpedhuez
alpedhuez le 13 Mai 2018
Thank you.
Star Strider
Star Strider le 13 Mai 2018
As always, my pleasure.

Connectez-vous pour commenter.

Plus de réponses (1)

Jan
Jan le 12 Mai 2018

0 votes

function a = test2(C)
A = 1;
B = 10;
a = A .* power(B, 0.3) .* power(C, 0.7);
end
Or easier:
function a = test2(C)
a = 1.99526231496888 .* power(C, 0.7);
end
I suggest, that you try to solve such questions by your own at first and to post the code. You can learn more from the suggestions for improvements than from code, which have been written by others from scratch.

1 commentaire

alpedhuez
alpedhuez le 13 Mai 2018
The point is that, in your way, one has to rewrite the function whenever the values of A and B change. There is a reason that I ask these questions.

Connectez-vous pour commenter.

Catégories

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by