how to change variable value from another function

7 visualizzazioni (ultimi 30 giorni)
Hi, is there any way to change the value of a and b without change the function's signature. like global variable in c?
  1 Commento
Stephen23
Stephen23 il 22 Giu 2018
Modificato: Stephen23 il 22 Giu 2018
"is there any way to change the value of a and b without change the function's signature"
There may well be, but it would be buggy, quite horrible code. Ugh, global variables....
I think the more important question is why do you want to do this? What is your actual reason for specifying "...without change the function's signature"? Why can't you change the function, or use function parameterization? It seems to me that this question shows a very high probability of this problem:
What is the real issue that you are having?

Accedi per commentare.

Risposta accettata

Steven Lord
Steven Lord il 22 Giu 2018
If by "implementation of brent" you mean Brent's method, depending on how that's implemented you may be able to write your function that accepts a, b, and c as inputs and use one of the parameterizing techniques from this documentation page to fix a and b and let the Brent's method implementation call the parameterized function with values for c as Stephen suggested.

Più risposte (1)

yon am
yon am il 22 Giu 2018
Modificato: yon am il 22 Giu 2018
i found this
function [n] =try_b(t)
global a
global b
a=a*t;
b=b*(1-t);
i can't change the signature because i am using implementation of brent and i should pass this function as a variable to brent function which gets a function with one argument.

Community Treasure Hunt

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

Start Hunting!

Translated by