Is there a way I can get my code to display the function chosen in fprintf?

5 visualizzazioni (ultimi 30 giorni)
Is there a way to tell my code to put my chosen function into and fprintf?
i have a function: f=@ x.^2;
fprintf('find the root of \n, ??) I tried putting f into the question marks but it says Error using fprintf Function is not defined for 'function_handle' inputs.
i know i can just leave the semi colon off to display it, but wanted it to look a bit nicer with words

Risposta accettata

Stephen23
Stephen23 il 21 Feb 2018
Modificato: Stephen23 il 21 Feb 2018
It is not necessary to jump into using the symbolic toolbox for every little problem: that would be overkill for such a simple problem like this. This problem is easily solved using func2str:
>> f = @(x) x.^2;
>> fprintf('find the root of %s\n', func2str(f))
find the root of @(x) x .^ 2
If you want to remove the leading @(...) then use regexprep:
>> str = regexprep(func2str(f),'^@\([^\)]\)\s*','');
>> fprintf('find the root of %s\n', str)
find the root of x .^ 2

Più risposte (0)

Categorie

Scopri di più su Entering Commands in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by