how to change variable value from another function

조회 수: 8 (최근 30일)
yon am
yon am 2018년 6월 22일
댓글: yon am 2018년 6월 22일
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일
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
Stephen23
Stephen23 2018년 6월 22일
@yon am: don't use global variables. Parameterizing the function is more efficient, and less buggy.
yon am
yon am 2018년 6월 22일
thanks a lot

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

카테고리

Help CenterFile Exchange에서 Whos에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by