how to change variable value from another function

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

Stephen23
Stephen23 2018년 6월 22일
편집: Stephen23 2018년 6월 22일
"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?

댓글을 달려면 로그인하십시오.

 채택된 답변

Steven Lord
Steven Lord 2018년 6월 22일

1 개 추천

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.

추가 답변 (1개)

yon am
yon am 2018년 6월 22일
편집: yon am 2018년 6월 22일
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.

댓글 수: 2

@yon am: don't use global variables. Parameterizing the function is more efficient, and less buggy.
thanks a lot

댓글을 달려면 로그인하십시오.

카테고리

질문:

2018년 6월 22일

댓글:

2018년 6월 22일

Community Treasure Hunt

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

Start Hunting!

Translated by